Я пытаюсь преобразовать свой двоичный документ (файл DOCX) с помощью функции xdmp: word-convert (), это вызывает следующую ошибку.
Файл, который вы пытаетесь преобразовать, имеет неправильный формат. DHF-INVFILE: xdmp: word-convert (fn: doc ("/ content / aplc / binary / 13599668870066633077.docx"), "13599668870066633077.docx", ‹options xmlns: tidy =" xdmp: tidy "xmlns =" xdmp: word-convert "› ‹tidy› true ‹/tidy› ... ‹/options›) - Файл, который вы пытаетесь преобразовать, имеет неправильный формат. input = / var / opt / MarkLogic / Temp / 0b71d7278e82c553 / toconv.doc
Мой код выглядит следующим образом
xdmp:word-convert(
$xml-input,
fn:concat(xdmp:hash64("Sample.docx"),".docx"),
<options xmlns="xdmp:word-convert" xmlns:tidy="xdmp:tidy">
<tidy>true</tidy>
<tidy:clean>yes</tidy:clean>
<tidy:drop-empty-paras>yes</tidy:drop-empty-paras>
<tidy:drop-font-tags>yes</tidy:drop-font-tags>
<tidy:hide-comments>yes</tidy:hide-comments>
<tidy:output-html>no</tidy:output-html>
<tidy:output-xhtml>no</tidy:output-xhtml>
<tidy:output-xml>yes</tidy:output-xml>
<compact>true</compact>
</options>)
где тот же код отлично работает с расширениями .doc
Если xdmp: word-convert () не будет работать с файлом DOCX, каковы будут другие возможные функции API, которые будут выполнять аналогичную работу, кроме xdmp: document-filter.