Я использую геопространственные расширения AllegroGraph для SparQL.Однако у меня есть проблема с функцией POINT.
Когда я использую функцию HAVERSINE для точек в радиусе, я не могу дать пользовательские точки.Однако, если я получаю географическое местоположение человека и передаю его функции HAVERSINE, она работает:
prefix fr: <http://franz.com/ns/allegrograph/3.0/geospatial/> prefix geo: <http://franz.com/ns/allegrograph/3.0/geospatial/fn/> prefix person: <http://www.example.com/person/> select ?fullName ?loc where{ GEO OBJECT SUBTYPE "http://franz.com/ns/allegrograph/3.0/geospatial/spherical/km/-180.0/180.0/-90.0/90.0/50.0" HAVERSINE (?personLoc,5 KM) { ?person <http://www.example.com/geolocation> ?loc; person:FullName ?fullName } where{ person:ff5736e38246295c <http://www.example.com/geolocation> ?personLoc . } }
Следующее не работает:
prefix fr: <http://franz.com/ns/allegrograph/3.0/geospatial/> prefix geo: <http://franz.com/ns/allegrograph/3.0/geospatial/fn/> prefix person: <http://www.example.com/person/> select ?fullName ?loc where{ GEO OBJECT SUBTYPE "http://franz.com/ns/allegrograph/3.0/geospatial/spherical/km/-180.0/180.0/-90.0/90.0/50.0" HAVERSINE (POINT(49.13, 29.32),5 KM) { ?person <http://www.example.com/geolocation> ?loc; person:FullName ?fullName } where{ } }
Это выдает следующую ошибку:
Не удалось выполнить запрос: список 3-х функций не определен
Я что-то не так делаю или проблема с AllegroGraph?