У меня есть контент, который не является ни допустимым HTML, ни XML в моей старой базе данных. Учитывая тот факт, что было бы сложно очистить наследие, я хочу убрать это в MarkLogic, используя xdmp: tidy. В настоящее время я использую ML-8.Как упорядочить инструкции по обработке в Marklogic
<sub>
<p>
<???†?>
</p>
</sub>
Я передаю это содержание кругленькой функциональности таким образом:
declare variable $xml as node() :=
<content>
<![CDATA[<p><???†?></p>]]>
</content>;
xdmp:tidy(xdmp:quote($xml//text()),
<options xmlns="xdmp:tidy">
<assume-xml-procins>yes</assume-xml-procins>
<quiet>yes</quiet>
<tidy-mark>no</tidy-mark>
<enclose-text>yes</enclose-text>
<indent>yes</indent>
</options>)
В результате он возвращает:
<p>
<? ?†?>
</p>
Теперь этот результат не является форматом XML действительного (Я проверил его с помощью проверки XML), из-за чего, когда я пытаюсь вставить этот XML в MarkLogic, он выдает сообщение об ошибке «MALFORMED BODY | Недопустимые имена команд обработки ".
Я провел некоторое расследование вокруг ИП, но не очень повезло. Я мог бы попытаться сохранить содержимое без PI, но это тоже не действительный PI.
вы можете дать пример того, что вы ожидать, что инструкция по обработке будет выглядеть? –
Пожалуйста, воздержитесь от срочной просьбы - ни один вопрос не может перескочить в очередь, а добровольцы не спешат на торопиться. – halfer