Я работаю над сериализованным контентом, содержащимся в таблице на Oracle 11g. Мне нужно изменить значение атрибута в моем контенте XML. Поэтому я использую XPath для доступа к тегам ... Я могу изменить значение тега, но не могу изменить значение атрибута.
Мой файл примерно так:
<ItemsParams>
<Cores>
<Inral z:Type="someTexte1">
<FinalTags>Value1</FinalTags>
</Inral>
<Cores>
<ItemsParams>
Когда мне нужно изменить значение FinalTags, я использую этот XPath в своем запросе:
XPath = *[name()="ItemsParam"]/*[name()="Testing"]/*[name()="Topics"]/*[name()="Parameter"]/*[name()="Texts"]/*[name()="Cores"]/*[name()="Inral"]/*[name()=''Value'']/text()
и это работает.
Но когда мне нужно изменить значение атрибута "z:Type"
, я использую:
XPath = *[name()="ItemsParam"]/*[name()="Testing"]/*[name()="Topics"]/*[name()="Parameter"]/*[name()="Texts"]/*[name()="Cores"]/*[name()="Inral"]/@z:Type
и невозможно получить к нему доступ. После многих испытаний я думаю, что Oracle не может выдержать "@", который необходим для доступа к атрибуту.