【问题标题】:Autosuggest on Element/Attribute name/Json Property自动建议元素/属性名称/Json 属性
【发布时间】:2016-02-09 17:23:32
【问题描述】:

我对自动建议元素名称和 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 中自动提示元素/json 属性名称,如 docID?如果是,如何通过 java-client-api 来实现。

【问题讨论】:

    标签: marklogic marklogic-8


    【解决方案1】:

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

    类似这样的:

    <?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>
    

    【讨论】:

    • 再次感谢您的回复和澄清。我计划添加另一个带有元素定义的 xml,并提供使用它的建议。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-21
    • 2014-03-21
    • 2011-03-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多