具有地理空间路径索引的未经过滤的搜索(MarkLogic)

时间:2019-03-15 06:47:39

标签: geospatial marklogic

我正在尝试对地理空间路径索引使用未经过滤的搜索,下面将显示所使用的查询以及设置地理空间路径索引所采取的步骤

cts:search(fn:doc(),  
cts:path-geospatial-query("people_data/location",cts:circle(9000, cts:point(20.17581412460507, -178.86527779510456))),"unfiltered"
)

设置地理空间路径索引

xquery version "1.0-ml";

import module namespace admin = "http://marklogic.com/xdmp/admin"
    at "/MarkLogic/admin.xqy";

let $config := admin:get-configuration()
let $dbid := xdmp:database("Documents")
let $indexspec := admin:database-geospatial-path-index(
  "people_data/location",
  "wgs84",
  fn:false(),
  "long-lat-point",
  "reject" 
)

let $config := admin:database-add-geospatial-path-index($config, $dbid, $indexspec)
return
  admin:save-configuration($config)

示例文档

<?xml  version="1.0" encoding="UTF-8"?>
<people_data>
<name>Rubi_BANKER</name>
<age>20</age>
<location>-113.91629050483087, -31.137499994020736</location>
<gender>F</gender>
<dob>2003-02-01T06:38:15</dob>
<uri>/people/Rubi_BANKER/197316400652924</uri>
</people_data>

似乎应该可以,但是在运行查询时,我总是会得到所有100个文档。如果进行了筛选搜索,将总共返回正确的54个文档。任何建议将不胜感激。

0 个答案:

没有答案