Pun*_*ant 2 xml xquery marklogic
我想将MS Office word/excel文档加载到Marklogic中,并希望使用xquery查询它们,就像使用xml文档一样.但是当我将doc文件加载到Marklogic时,它会将它们加载为二进制格式,并在使用查询控制台查看时显示垃圾字符.我尝试使用以下命令加载: -
xdmp:document-load("E:\doc\sample.doc",
<options xmlns="xdmp:document-load"
xmlns:http="xdmp:http">
<format>xml</format>
</options>)
Run Code Online (Sandbox Code Playgroud)
但它显示一个错误,说文件不是UTF 8编码.我想知道是否可以将doc和xls文件加载到Marklogic中,或者在加载它们之前必须将它们转换为xml或UTF 8编码格式.如果是,那么转换它们的过程是什么.如果不是,那么我们如何使用xquery查询它们.我还想知道转换过程是否需要安装MS Office 2007/2010,因为Office 2007和2010都支持OOXML格式.
请给我适当的指导.
小智 6
如果您以2007/2010之前的格式处理Office文档,Grtjn的回复是正确的.对于2007/2010文档,在CPF中启用"Office OpenXML ExtractOffice OpenXML Extract"管道并重新加载文档.此管道不需要额外的转换选项.它将按原样加载源XML.
Office 2007/2010 docs只是包含相互关联的XML部分的.zip文件.此管道将解压缩任何.docx,.xlsx,.pptx文档,并将其组件部分保存在源文档之后命名的目录中.该目录将保存为源文档的兄弟,并将链接到源,因此,如果删除源.docx,则还将删除包含提取的部分的目录.
确保数据库的自动目录创建设置为true.(这是MarkLogic 5.0及之前版本的默认设置).