【问题标题】:Marklogic- Retrieve distinct values of an XML element across documentsMarklogic - 跨文档检索 XML 元素的不同值
【发布时间】:2017-02-13 17:51:51
【问题描述】:

我们正在构建一个以 ML 作为后端数据库的企业应用程序。其中一项要求是在各种文档中找到 XML 中特定元素的不同值。

我可以使用结构化查询/组合查询获得不同的 entity_type

以下所有文档都是实体集合的一部分:

文档 1

<xml>
    <entities>
        <entity_name>Imprezza</entity_name>
        <entity_type>Car</entity_type>
        <entity_color>Red</entity_color>
    <entities>
<xml>

文档 2

<xml>
    <entities>
        <entity_name>Ducati</entity_name>
        <entity_type>Bike</entity_type>
        <entity_color>White</entity_color>
    <entities>
<xml>

文档 3

<xml>
    <entities>
        <entity_name>Lancia</entity_name>
        <entity_type>Car</entity_type>
        <entity_color>Red</entity_color>
    <entities>
<xml>

文件 4

<xml>
    <entities>
        <entity_name>Scania</entity_name>
        <entity_type>Truck</entity_type>
        <entity_color>Black</entity_color>
    <entities>
<xml>

要求:给我集合中的所有distinct entity_type

结果:汽车、自行车、卡车

P.S:需要在Java层得到结果。我们目前有一个 API,可以根据输入生成 MarkLogic 组合查询(结构化查询 + 选项查询)。 我可以使用结构化查询/组合查询获得不同的实体吗??

【问题讨论】:

    标签: marklogic marklogic-8


    【解决方案1】:

    您可以使用词典来做到这一点(基于上面没有空格) https://docs.marklogic.com/guide/search-dev/lexicon

    您可以使用每个值的范围索引来执行此操作。 https://docs.marklogic.com/guide/admin/range_index

    在任何一种情况下,您都可以通过值 REST 端点检索值。 https://docs.marklogic.com/REST/GET/v1/values/[name]

    我相信,一旦您的词典或范围索引也到位,就会有 java API 解决方案。

    【讨论】:

    猜你喜欢
    • 2014-10-18
    • 1970-01-01
    • 1970-01-01
    • 2017-03-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多