无法使用MLCP导出MarkLogic中的单个文档



我正在尝试使用mlcp.bat提取以下具有URI的文档:/category/[2014]xxx.xml

这是与参数一起使用的mlcp命令:

mlcp.bat export -host localhost -port 8000 -username admin -password admin -mode local -database database-content -output_file_path C:/mlcp/bin/xmlexport -document_selector '/CaseReport/Metadata[id="16594-SSP-M"]' -indented true

执行上述命令后,没有提取任何文档:(以下是mlcp输出:

INFO contentpump.ContentPump: Job name: local_320491878_1
INFO mapreduce.MarkLogicInputFormat: Fetched 1 forest splits.
INFO mapreduce.MarkLogicInputFormat: Made 2 split(s).
INFO contentpump.LocalJobRunner:  completed 0%
INFO contentpump.LocalJobRunner: com.marklogic.mapreduce.MarkLogicCounter:
INFO contentpump.LocalJobRunner: ESTIMATED_INPUT_RECORDS: 35722
INFO contentpump.LocalJobRunner: INPUT_RECORDS: 0
INFO contentpump.LocalJobRunner: OUTPUT_RECORDS: 0
INFO contentpump.LocalJobRunner: Total execution time: 26 sec

==更新==这是带有uri/category/[2014]xxx.XML 的XML文档内容的前3行

<?xml version="1.0" encoding="UTF-8"?>
<CaseReport xlink:type="extended" category="unreported" neutralcitation="[2014] xxx" year="" volume="" series="" pageno="" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:exslt="http://exslt.org/common">
<Metadata id="16594-SSP-M">

-document_selector选项要求您指定一个XPath,用于从数据库中选择文档。您正在提供文档的URI。

相反,使用-query_filter并指定一个查询,该查询使用cts:document-query()以该URI进行选择:cts:document-query("/category/[2014] xxx.xml")

这是一个序列化为XML:的查询示例

-query_filter
<cts:document-query xmlns:cts="http://marklogic.com/cts"><cts:uri>/category/[2014] xxx.xml</cts:uri></cts:document-query>

这是一个序列化为JSON:的查询示例

-query_filter 
{"documentQuery":{"uris":["/category/[2014] xxx.xml"]}} 

为了避免命令行上的查询出现引号和转义问题,最好将此选项放入选项文件中,然后将-option_file选项与该文件的路径一起使用。

相关内容

  • 没有找到相关文章

最新更新