Я новичок в Xquery.Сообщение по этому запросу уже существует, но у меня возникают проблемы, когда префикс XML имеет следующий префикс:
Исходный XML:
enter code here
<?xml version="1.0" encoding="UTF-8"?>
<so:category>
<bo:catid>1</bo:catid>
<bo:cattext>sport</bo:cattext>
</so:category>
Запрос на изменение значения, предоставленного в другом сообщении:
declare namespace local = "http://example.org";
declare namespace bo = "http://example1.org";
declare function local:copy-replace($element as element()) {
if ($element/self::bo:catid)
then <bo:catid>test</bo:catid>
else element {node-name($element)}
{$element/@*,
for $child in $element/node()
return if ($child instance of element())
then local:copy-replace($child)
else $child
}
};
local:copy-replace(/*)
У меня есть префикс для элементов в моем XML-документе.Поэтому, когда я выполняю запрос, я получаю следующую ошибку:
ОШИБКА - Префикс "bo" для элемента "bo: catid" не связан.
Я не уверен, как справитьсяпрефикс & искали связанный предмет в Интернете.Однако я не могу решить эту проблему с помощью предоставленной информации, и мне необходимо знать, что я делаю неправильно.