自动建议 Element/Attribute name/Json 属性

Autosuggest on Element/Attribute name/Json Property

我有独特的要求自动建议元素名称和 json 属性 名称。

XML 示例:

<?xml  version="1.0" encoding="UTF-8"?>
<ns2:Envelope ns1:version="1.2" xmlns:ns2="http://www.w3.org/2003/05/soap-envelope" xmlns:ns3 = "http://test.com/2016/doc">
<ns2:Body>
    <ns3:docID>D253456</ns3:docID>
<ns2:Body>

我能够通过 java-client-api 选项获得关于值的建议。背景中的范围索引。

String[] results = queryMgr.suggest(sd);

或者我可以通过 xquery 使用一些东西

declare namespace ns3 = "http://test.com/2016/doc";
cts:element-value-match(xs:QName("ns3:docID"),fn:concat("D25","*"))[1 to 10];

但无法找到元素名称建议的方法,如 doc* return docId

我们能否在 marklogic 中获取 element/json 属性 名称(如 docID)的自动建议?如果是,如何通过 java-client-api.

如您所知,markLogic "suggest" 基于单词词典或值词典(范围索引)。我不知道可以捕获元素或 属性 名称的单词词典或值词典。我认为你最好的选择是修改你的文档以包含一个元素或 属性 包含你想要索引/建议的值。

像这样:

<?xml  version="1.0" encoding="UTF-8"?>
<ns2:Envelope ns1:version="1.2" xmlns:ns2="http://www.w3.org/2003/05/soap-envelope" xmlns:ns3 = "http://test.com/2016/doc">
<ns2:Body>
    <ns3:docID>D253456</ns3:docID>
    <ns3:elementName>docId</ns3:elementName>
    <ns3:elementName>elementName</ns3:elementName>
<ns2:Body>