GeoSPARQL

From Wikipedia, the free encyclopedia
Jump to: navigation, search

GeoSPARQL is a standard for representation and querying of geospatial linked data for the Semantic Web from the Open Geospatial Consortium (OGC).[1] The definition of a small ontology based on well-understood OGC standards is intended to provide a standardized exchange basis for geospatial RDF data which can support both qualitative and quantitative spatial reasoning and querying with the SPARQL database query language.[2]

In particular, GeoSPARQL provides for:

The Ordnance Survey Linked Data Platform uses OWL mappings for GeoSPARQL equivalent properties in its vocabulary.[3][4] The LinkedGeoData data set is a work of the Agile Knowledge Engineering and Semantic Web (AKSW) research group at the University of Leipzig,[5] a group mostly known for DBpedia, that uses the GeoSPARQL vocabulary to represent OpenStreetMap data.

Example[edit]

The following example SPARQL query could help model the question "What is within the bounding box defined by 38°54′49″N 77°05′20″W / 38.913574°N 77.089005°W / 38.913574; -77.089005 and 38°53′11″N 77°01′48″W / 38.886321°N 77.029953°W / 38.886321; -77.029953?"[6]

PREFIX geo: <http://www.opengis.net/ont/geosparql#>
PREFIX geof: <http://www.opengis.net/def/geosparql/function/>
 
SELECT ?what
WHERE {
  ?what geo:hasGeometry ?geometry .
  ?geometry geo:asWKT ?wkt .
 
  FILTER(geof:within(?wkt,
     "POLYGON((
-77.089005 38.913574,
-77.029953 38.913574,
-77.029953 38.886321,
-77.089005 38.886321,
-77.089005 38.913574
))"^^geo:wktLiteral))
}

RCC8 use in GeoSPARQL[edit]

RCC8 has been implemented in GeoSPARQL as described below:

A graphical representation of Region Connection Calculus (RCC: Randell, Cui and Cohn, 1992) and the links to the equivalent naming by the Open Geospatial Consortium (OGC) with their equivalent URIs.
A graphical representation of Region Connection Calculus (RCC: Randell, Cui and Cohn, 1992) and the links to the equivalent naming by the Open Geospatial Consortium (OGC) with their equivalent URIs.

Implementations[edit]

There are (almost) no complete implementations of GeoSPARQL, there are, however partial or vendor implementations of GeoSPARQL. Currently there are the following implementations:

Parliament
Parliament has an almost complete implementation of GeoSPARQL by using JENA and a modified ARQ query processor.[7] However the stability and performance seems lacking.
Strabon
OpenSahara uSeekM IndexingSail Sesame Sail plugin
uSeekM IndexingSail uses a PostGIS installation to deliver GeoSPARQL. They deliver an almost complete implementation of GeoSPARQL along with some of its own vendor prefixes.[8][9]
Openlink Virtuoso Universal Server
Since version 7.1 OpenLink Virtuoso also contains some geospatial functions and reasoning based on vendor prefixes, although not compatible with GeoSPARQL it is usable for geospatial.
Ontotext OWLIM
OWLIM has a partial geospatial implementation based on vendor prefixes,[10] also not compatible with GeoSPARQL, but is sufficiënt for basic usage. Ontotext states that OWLIM will support GeoSPARQL in the near feature with version 5.7 (currently 5.4).[11] But at the time of writing it seems that they are currently two versions behind schedule.

Submission[edit]

The GeoSPARQL standard was submitted to the OGC by:

Related work[edit]

With regards to future work, the GeoSPARQL standard states:

Obvious extensions are to define new conformance classes for other standard serializations of geometry data (e.g. KML, GeoJSON). In addition, significant work remains in developing vocabularies for spatial data, and expanding the GeoSPARQL vocabularies with OWL axioms to aid in logical spatial reasoning would be a valuable contribution. There are also large amounts of existing feature data represented in either a GML file (or similar serialization) or in a datastore supporting the general feature model. It would be beneficial to develop standard processes for converting (or virtually converting and exposing) this data to RDF.

References[edit]

External links[edit]