Я использую eXist для проекта на работе, и у меня возникла проблема, из-за которой я не могу найти решение.Сохранение HTML-тегов внутри XQuery
У меня есть скрипт xquery, который обновляет существующий документ, который уже находится в базе данных. Часть данных, которые необходимо обновить, содержит HTML, в частности <p>
и </p>
теги. Я не могу заставить eXist/XQuery перестать ускользать от HTML. Это нуждается в, чтобы сохранить его в оригинальной форме. Вот очень простой вариант того, что я делаю:
<pre>
declare variable $raw-content := request:get-parameter('content', '')
declare variable $content := local:clean($raw-content)
</pre>
local:clean
является следующая функция:
<pre>
declare function local:clean($text) {
let $text := util:parse($text)
return $text
};
</pre>
Позже в коде я обновляю конкретный XML элемент
<pre>
{update replace $n/sports-content/article/nitf/body/body.content with <body.content>{$content}</body.content>}
</pre>
Теперь это работает отлично , если Я только передаю данные, обернутые в один набор тегов (то есть <p>foo</p>
). Если я делаю <p>foo</p><p>bar</p>
, я получаю нулевое значение, размещенное в $text
.
Я стою головой о стол в течение полутора дней, пытаясь понять, почему это не работает. Любая помощь в решении этой проблемы была бы весьма признательна.