0

我有一个文件夹,其中包含 doc、docx、xlsx、pdf 和 txt 文件。我正在使用这个 XQuery 将所有这些文件上传到 Marklogic:-

for $d in xdmp:filesystem-directory("C:\uploads")//dir:entry
return 
  xdmp:document-load($d//dir:pathname,
    <options xmlns="xdmp:document-load">
    <uri>{concat("/documents/", string($d//dir:filename))}</uri>
    <permissions>{xdmp:default-permissions()}</permissions>
    <collections>{xdmp:default-collections()}</collections>
    <format>binary</format>
    </options>)

我还为我的数据库安装了内容处理。现在,当我上传 doc 和 pdf 文件时,它们会转换为 xml 和 xhtml 文件。但是 docx、xlsx 和 & txt 不会被转换。有人能告诉我为什么这些文件没有被转换吗?

4

1 回答 1

6

启用 Office OpenXML 提取管道以转换 .docx、.xlsx 和 .pptx 文件。

具有这些扩展名的文件已经是 XML。如果您要将它们的扩展名更改为 .zip,您可以提取并查看这些文件只是由相互关联的 XML 部分组成。

Office OpenXML Extract 管道将解压缩 Office 2007/2010 文件并将其必要部分存储在主文件的同级目录中,类似于其他转换管道。此管道允许您存储原始 Open XML。目前没有进一步转换为 DocBook 的 XHTML。

我知道 .txt 没有转换。这些只是文本文件,将作为文本插入 MarkLogic。您可以通过简单地将文本包装在父元素中并将文件扩展名更改为 .xml 来转换为 XML。

希望这可以帮助。

于 2012-06-28T16:01:53.307 回答