首页 > 解决方案 > 如何在 MarkLogic 结构查询中为 geo-elem-pair-query 设置权重?

问题描述

我正在尝试使用 XML 结构查询重写以下 cts 查询:

cts:element-pair-geospatial-query(
  fn:QName("http://www.example.com/2009/foo","wgs84"), 
  fn:QName("http://www.example.com/2009/foo","latitude"), 
  fn:QName("http://www.example.com/2009/foo","longitude"), 
  cts:circle("@12 53.411541,-2.9900994"),
  ("coordinate-system=wgs84","score-function=reciprocal","slope-factor=4"), 
  32
)

我将其转换为:

<geo-elem-pair-query>
                     <parent ns="http://www.example.com/2009/foo" name="wgs84" />
                     <lat ns="http://www.example.com/2009/foo" name="latitude" />
                     <lon ns="http://www.example.com/2009/foo" name="longitude" />
                     <fragment-scope>documents</fragment-scope>
                     <geo-option>coordinate-system=wgs84</geo-option>
                     <geo-option>score-function=reciprocal</geo-option>
                     <geo-option>slope-factor=4</geo-option>
                     <circle>
                        <radius>12.0</radius>
                        <point>
                           <latitude>53.411541</latitude>
                           <longitude>-2.9900994</longitude>
                        </point>
                     </circle>
</geo-elem-pair-query>

不幸的是,我不知道如何添加weight<geo-elem-pair-query>. 根据MarkLogic 文档,它似乎不受支持(但 cts 等效支持它)。我尝试添加<weight>32.0</weight>,但它不起作用。您知道是否有办法为 geo-elem-pair-query 结构查询添加权重?

标签: xquerymarklogic

解决方案


推荐阅读