所以,我有一个像
这样的结构{
city: "City",
geolocation:
{
lat: 55,
lng:55
}
}
我希望通过地理位置来计算我返回城市的数量,但我不能通过地理定位来实现工作。我创建了一个地理空间元素索引,地理空间元素对索引,并为查询我尝试了以下内容:
qb.facet("count", qb.property("geolocation"))
qb.facet("count", qb.geoPropertyPair("geolocation", "lat", "lng"))
qb.facet("count", qb.geoProperty("geolocation"))
qb.facet("count", qb.geoElement("geolocation"))
并且所有这些我的facet查询都是空的或不存在的。我做错了什么?
答案 0 :(得分:3)
我能够重现这个错误。虽然对JSON文档的地理空间查询有效,但JSON文档上的地理空间方面在REST API中无效。
我能看到的唯一解决方法是编写一个自定义约束,在XQuery中执行cts:geospatial-boxes()或在JavaScript中执行cts.geospatialBoxes(),在服务器上安装模块,并参考自定义约束。查询。有关更多信息,请参阅:
http://docs.marklogic.com/guide/search-dev/search-api#id_49750
http://docs.marklogic.com/jsdoc/config.query.custom.html