Что будет, если я не укажу название коллекции в Corb

У меня есть скрипт corb для запуска замены узла в файлах XML.

Если я не укажу коллекцию, удалит ли она документы из существующих коллекций?

2 ответа

Решение

Если вы изменяете документ с xdmp:node-replace(), тогда документ останется в его коллекции, и вам не нужно беспокоиться об установке / добавлении его обратно.

Если вы используете xdmp:document-insert() чтобы заменить документ по текущему URI, необходимо указать коллекцию (и), в противном случае он будет удален из существующих коллекций.

Тем не менее, вы можете использовать xdmp:document-get-collections() чтобы получить последовательность коллекций для URI и использовать ее для 4-го параметра xdmp:document-insert()

xdmp:document-insert($URI, $doc, (), xdmp:document-get-collections($URI))

Лучше предоставить пустое значение коллекции, в то же время делая замену узла, чтобы она не изменяла существующие коллекции документа. Не определяя этот атрибут, выдает ошибки при запуске скрипта.

Другие вопросы по тегам