MarkLogic 8 - 按路径索引排序
MarkLogic 8 - sort-order by path-index
ML 8 是否支持按路径索引排序?我想实现类似于以下内容:
<options xmlns="http://marklogic.com/appservices/search">
<sort-order collation="http://marklogic.com/collation/en/S1/EO/CU/MO" type="xs:string" direction="ascending">
<path-index>attritbutes//name</path-index>
</sort-order>
</options>
如果不行,有什么办法可以实现吗?我有几个来自不同父节点或根元素的同名元素,所以我不能只使用
<options xmlns="http://marklogic.com/appservices/search">
<sort-order collation="http://marklogic.com/collation/en/S1/EO/CU/MO" type="xs:string" direction="ascending">
<element ns="" name="name"/>
</sort-order>
</options>
根据docs:
The sort-order element must have one of a single element child, a single score child, a single field child, or a single json-property child.
所以你不能有路径child,但有办法。根据您要使用的路径创建一个字段,然后根据该字段进行排序。
8.0-1 中存在架构错误,因此 sort-order/path-index 无法验证。
但是,代码实现了对 sort-order/path-index 的支持,因此如果您不验证选项,它应该可以工作。但是,按照 Dave 的建议使用字段可能会更好,这样您就可以继续使用验证来检查错误。
架构错误已在 8.0-2 中修复。
是,在 'name'
元素上创建一个字段
<options xmlns="http://marklogic.com/appservices/search">
<sort-order type="xs:string"
collation="http://marklogic.com/collation/"
direction="ascending">
<field name="name"/>
</sort-order>
</options>
ML 8 是否支持按路径索引排序?我想实现类似于以下内容:
<options xmlns="http://marklogic.com/appservices/search">
<sort-order collation="http://marklogic.com/collation/en/S1/EO/CU/MO" type="xs:string" direction="ascending">
<path-index>attritbutes//name</path-index>
</sort-order>
</options>
如果不行,有什么办法可以实现吗?我有几个来自不同父节点或根元素的同名元素,所以我不能只使用
<options xmlns="http://marklogic.com/appservices/search">
<sort-order collation="http://marklogic.com/collation/en/S1/EO/CU/MO" type="xs:string" direction="ascending">
<element ns="" name="name"/>
</sort-order>
</options>
根据docs:
The sort-order element must have one of a single element child, a single score child, a single field child, or a single json-property child.
所以你不能有路径child,但有办法。根据您要使用的路径创建一个字段,然后根据该字段进行排序。
8.0-1 中存在架构错误,因此 sort-order/path-index 无法验证。
但是,代码实现了对 sort-order/path-index 的支持,因此如果您不验证选项,它应该可以工作。但是,按照 Dave 的建议使用字段可能会更好,这样您就可以继续使用验证来检查错误。
架构错误已在 8.0-2 中修复。
是,在 'name'
元素上创建一个字段
<options xmlns="http://marklogic.com/appservices/search">
<sort-order type="xs:string"
collation="http://marklogic.com/collation/"
direction="ascending">
<field name="name"/>
</sort-order>
</options>