58
® ® Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez

Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

® ®

Bringing Location Analysis to the

Semantic Web with the OGC

GeoSPARQL Standard

Matthew Perry

Xavier Lopez

Page 2: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

Agenda

• About the GeoSPARQL SWG

• Use Cases & Requirements

• From SPARQL to GeoSPARQL

• GeoSPARQL Technical Details

• Implementation Considerations

• Live Demo

2

Page 3: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

Group Members

• Open Geospatial Consortium standards working group

– 13 voting members, 36 observers

– Editors: Matthew Perry and John Herring

– Chairs: John Herring and Dave Kolas

• Submitting Organizations

3

Traverse Technologies, Inc.

Page 4: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

Standardization Process

Form SWG (June 2010)

Release candidate standard

(May 2011)

OAB vote on

candidate standard

(June 2011)

30-day public

comment period

(July 2011)

Process comments and update document (Feb. 2012)

TC/PC vote

(March 22, 2012)

Publish standard

(May 2012)

4

Page 5: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

Linked Geo Data

• Many LOD datasets have geospatial components

• Barriers to integration

– Vendor-specific geometry support

– Different vocabularies

• W3C Basic Geo, GML XMLLiteral,

Vendor-specific

– Different spatial reference systems

• WGS84 Lat-Long, British National Grid

LinkedSensorData

What DBPedia Historic

Buildings are within

walking distance?

What OpenStreetMap Dog

Parks are inside Ordnance

Survey Southampton

Administrative District?

5

Page 6: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

Gazetteers and Linked Open Data Services

• Provide common terms (place names) to link across

existing spatial data resources

• Enable consolidated view across the map layers

• Reconcile differences in data semantics so that they

can all “talk”and interoperate

• Resolving semantic discrepancies across databases

gazetteers and applications

• Integrate full breath of enterprise content continuum

(structured, spatial, email, documents, web services)

Page 7: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

Semantic GIS

• GIS applications with semantically complex thematic

aspects

– Logical reasoning to classify features

• land cover type, suitable farm land, etc.

– Complex Geometries

• Polygons and Multi-Polygons with 1000’s of points

– Complex Spatial Operations

• Union, Intersection, Buffers, etc.

Find parcels with an area of at least 3 sq. miles that

touch a local feeder road and are inside an area of

suitable farm land.

7

Page 8: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

Towards Qualitative Spatial Reasoning

• Don’t always have geometry data

– Textual descriptions

• Next to Hilton hotel

• Inside Union Square

– Incomplete geometry data

• Only have geometries for some features

• Hybrid quantitative and qualitative spatial reasoning

• GeoSPARQL takes some steps in this direction

– Vocabulary for asserting topological relations

– Same query specification for qualitative and quantitative systems

8

Page 9: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

Requirements for GeoSPARQL

• Provide a common target for implementers & users

– Representation and query

• Work within SPARQL’s extensibility framework

• Simple enough for general users

– Keep the common case simple (WGS 84 point data)

• Capable enough for GIS professionals

– Multiple SRSs, complex geometries, complex operators

• Don’t re-invent the wheel!

ISO 19107 – Spatial Schema

ISO 13249 – SQL/MM

Simple Features

Well Known Text (WKT)

GML

KML

GeoJSON 9

Page 10: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

GEOSPARQL TECHNICAL DETAILS

10

Page 11: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

FROM SPARQL TO GEOSPARQL

11

Page 12: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

SPARQL QUERY

:res1 rdf:type :House .

:res1 :baths “2.5”^^xsd:decimal .

:res1 :bedrooms “3”^^xsd:decimal .

:res2 rdf:type :Condo .

:res2 :baths “2”^^xsd:decimal .

:res2 :bedrooms “2”^^xsd:decimal .

:res3 rdf:type :House

:res3 :baths “1.5”^^xsd:decimal .

:res3 :bedrooms “3”^^xsd:decimal .

RDF Data SELECT ?r ?ba ?br

WHERE { ?r rdf:type :House .

?r :baths ?ba .

?r :bedrooms ?br }

SPARQL Query

?r | ?ba | ?br

===================

:res1 | “2.5” | “3”

:res3 | “1.5” | “3”

Result Bindings

12

Page 13: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

SPARQL QUERY

:res1 rdf:type :House .

:res1 :baths “2.5”^^xsd:decimal .

:res1 :bedrooms “3”^^xsd:decimal .

:res2 rdf:type :Condo .

:res2 :baths “2”^^xsd:decimal .

:res2 :bedrooms “2”^^xsd:decimal .

:res3 rdf:type :House

:res3 :baths “1.5”^^xsd:decimal .

:res3 :bedrooms “3”^^xsd:decimal .

RDF Data SELECT ?r ?ba ?br

WHERE { ?r rdf:type :House .

?r :baths ?ba .

?r :bedrooms ?br

FILTER (?ba > 2)}

SPARQL Query

?r | ?ba | ?br

===================

:res1 | “2.5” | “3”

Result Bindings

13

Page 14: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

Spatial SPARQL QUERY

:res1 rdf:type :House .

:res1 :baths “2.5”^^xsd:decimal .

:res1 :bedrooms “3”^^xsd:decimal .

:res1 ogc:hasGeometry :geom1 .

:geom1 ogc:asWKT “POINT(-122.25 37.46)”^^ogc:wktLiteral .

:res3 rdf:type :House

:res3 :baths “1.5”^^xsd:decimal .

:res3 :bedrooms “3”^^xsd:decimal .

:res3 ogc:hasGeometry :geom3 .

:geom3 ogc:asWKT “POINT(-122.24 37.47)”^^ogc:wktLiteral .

Spatial RDF Data

SELECT ?r ?ba ?br

WHERE { ?r rdf:type :House .

?r :baths ?ba .

?r :bedrooms ?br .

?r ogc:hasGeometry ?g .

?g ogc:asWKT ?wkt

FILTER(ogcf:sfWithin(?wkt,

“POLYGON(…)”^^ogc:wktLiteral)) }

GeoSPARQL Query

Find houses

within a search

polygon

14

This is what we

are standardizing

Vocabulary &

Datatypes

Extension

Functions

Page 15: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

Components of GeoSPARQL

• Vocabulary for Query Patterns

– Classes

• Spatial Object, Feature, Geometry

– Properties

• Topological relations

• Links between features and geometries

– Datatypes for geometry literals

• ogc:wktLiteral, ogc:gmlLiteral

• Query Functions

– Topological relations, distance, buffer, intersection, …

• Entailment Components

– RDFS entailment

– RIF rules to compute topological relations

15

Page 16: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

serializations

metadata

ogc:SpatialObject

ogc:Feature 0 .. *

0 .. 1

ogc:hasGeometry

ogc:hasDefaultGeometry

ogc:Geometry

ogc:dimension : xsd:int

ogc:coordinateDimension : xsd:int

ogc:spatialDimension : xsd:int

ogc:isEmpty : xsd:boolean

ogc:isSimple : xsd:boolean

ogc:asWKT : ogc:wktLiteral

ogc:asGML : ogc:gmlLiteral

GeoSPARQL Vocabulary: Basic Classes and Relations

Same as ISO

GFI_Feature

Same as ISO

GM_Object

Geometry encoded

as a Literal

16

Page 17: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

All RDFS Literals of type ogc:wktLiteral shall consist of an

optional IRI identifying the spatial reference system followed

by Simple Features Well Known Text (WKT) describing a

geometric value [ISO 19125-1].

“<http://www.opengis.net/def/crs/OGC/1.3/CRS84>

POINT(-122.4192 37.7793)”^^ogc:wktLiteral

European Petroleum Survey Group (EPSG)

maintains a set of CRS identifiers.

WGS84 longitude – latitude

is the default CRS

“POINT(-122.4192 37.7793)”^^ogc:wktLiteral

Details of ogc:wktLiteral

17

Page 18: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

A/B A B A B A B

A B A B B B A

ogc:sfEquals ogc:sfTouches ogc:sfOverlaps ogc:sfContains

ogc:sfWithin ogc:sfDisjoint ogc:sfIntersects ogc:sfCrosses

Topological Relations between ogc:SpatialObject

• Assumes Simple Features

Relation Family

• Also support Egenhofer and

RCC8

A

18

Page 19: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

:City rdfs:subClassOf ogc:Feature .

:Park rdfs:subClassOf ogc:Feature .

:exactGeometry rdfs:subPropertyOf ogc:hasGeometry .

:SanFrancisco rdf:type :City .

:UnionSquarePark rdf:type :Park .

:UnionSquarePark :commissioned “1847-01-01”^^xsd:date .

:UnionSquarePark :exactGeometry :geo1 .

:geo1 ogc:asWKT “Polygon((…))”^^ogc:wktLiteral .

:SanFrancisco :exactGeometry :geo2 .

:geo2 ogc:asWKT “Polygon((…))”^^ogc:wktLiteral .

:UnionSquarePark ogc:sfWithin :SanFrancisco .

Meta Information

Non-spatial Properties

Spatial Properties

Example Data

20

Page 20: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

Why don’t you have ogc:myFavoriteProperty?

• GeoSPARQL vocabulary is not comprehensive

– Just enough to define a reasonable set of query patterns

• There are other efforts for more comprehensive

vocabularies

– ISO / TC 211

– SOCoP

– GeoVocamps

• GeoSPARQL vocabulary can easily be extended with other

application/domain-specific vocabularies

21

Page 21: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

Advantage: single self-contained unit

SELECT ?water ?wWKT

WHERE { ?water rdf:type :WaterBody .

?water :hasExactGeometry ?wGeo .

?wGeo ogc:asWKT ?wWKT .

:Route_3 :hasExactGeometry ?r3Geo .

:r3Geo ogc:asWKT ?r3WKT .

FILTER(ogcf:distance(?r3WKT, ?wWKT,…) <= 1000)

}

Find all water bodies that are within 1 km of Route 3

Consistent way to pass geometry information around

Consistent way to select geometry information

Why Encode Geometry Data as a Literal?

22

Page 22: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

Why don’t you support W3C Basic Geo?

• Too simple to meet our requirements

– Can’t use different datums and coordinate systems

– Limited number of geometry types

• W3C Basic Geo data can easily be converted to wktLiteral

PREFIX geo: <http://www.w3.org/2003/01/geo/wgs84_pos#>

PREFIX ogc: <http://www.opengis.net/geosparql#>

SELECT (STRDT(CONCAT("POINT(",?long," ",?lat,")"),

ogc:wktLiteral) AS ?wktLit)

WHERE { ?point geo:long ?long .

?point geo:lat ?lat }

23

Page 23: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

– ogcf:distance(geom1: ogc:wktLiteral, geom2: ogc:wktLiteral,

units: xsd:anyURI): xsd:double

– ogcf:buffer(geom: ogc:wktLiteral, radius: xsd:double,

units: xsd:anyURI): ogc:wktLiteral

– ogcf:convexHull(geom: ogc:wktLiteral): ogc:wktLiteral

GeoSPARQL Query Functions

geom

geom1 geom2

geom

24

Page 24: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

GeoSPARQL Query Functions

– ogcf:intersection(geom1: ogc:wktLiteral,

geom2: ogc:wktLiteral): ogc:wktLiteral

– ogcf:union(geom1: ogc:wktLiteral,

geom2: ogc:wktLiteral): ogc:wktLiteral

geom1

geom2

geom1

geom2

25

Page 25: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

GeoSPARQL Query Functions

– ogcf:difference(geom1: ogc:wktLiteral,

geom2: ogc:wktLiteral): ogc:wktLiteral

– ogcf:symDifference(geom1: ogc:wktLiteral,

geom2: ogc:wktLiteral): ogc:wktLiteral

geom1

geom2

geom1

geom2

26

Page 26: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

– ogcf:envelope(geom: ogc:wktLiteral): ogc:wktLiteral

– ogcf:boundary(geom1: ogc:wktLiteral): ogc:wktLiteral

– ogcf:getSRID(geom: ogc:wktLiteral): xsd:anyURI

GeoSPARQL Query Functions

geom

geom

27

Page 27: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

– ogcf:relate(geom1: ogc:wktLiteral,

geom2: ogc:wktLiteral,

patternMatrix: xsd:string): xsd:boolean

GeoSPARQL Topological Query Functions

DE-9IM Intersection Matrix

geom2

Interior Boundary Exterior

geom1

Interior T T T

Boundary F F T

Exterior F F T

geom1

geom2

ogc:contains

patternMatrix: TTTFFTFFT

28

Page 28: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

– ogcf:sfEquals(geom1: ogc:wktLiteral,

geom2: ogc:wktLiteral): xsd:boolean

– ogcf:sfDisjoint(geom1: ogc:wktLiteral,

geom2: ogc:wktLiteral): xsd:boolean

– ogcf:sfIntersects(geom1: ogc:wktLiteral,

geom2: ogc:wktLiteral): xsd:boolean

– ogcf:sfTouches(geom1: ogc:wktLiteral,

geom2: ogc:wktLiteral): xsd:boolean

– ogcf:sfCrosses(geom1: ogc:wktLiteral,

geom2: ogc:wktLiteral): xsd:boolean

– ogcf:sfWithin(geom1: ogc:wktLiteral,

geom2: ogc:wktLiteral): xsd:boolean

– ogcf:sfContains(geom1: ogc:wktLiteral,

geom2: ogc:wktLiteral): xsd:boolean

– ogcf:sfOverlaps(geom1: ogc:wktLiteral,

geom2: ogc:wktLiteral): xsd:boolean

GeoSPARQL Topological Query Functions

Assumes Simple Features

Relation Family

29

Page 29: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

SELECT ?water

WHERE { ?water rdf:type :WaterBody .

?water ogc:rcc8Within :NH }

Find all water bodies within New Hampshire

RCC8 Backward

Chaining

SELECT ?water

WHERE { ?water rdf:type :WaterBody .

?water ogc:hasDefaultGeometry ?wGeo .

?wGeo ogc:asWKT ?wWKT .

:NH ogc:hasDefaultGeometry ?nGeo .

?nGeo ogc:asWKT ?nWKT .

FILTER(ogcf:rcc8Within(?wWKT, ?nWKT)) }

Same Query Specification Qualitative

Quantitative

Query

Rewrite

Specified with

a RIF rule

GeoSPARQL Query Rewrite Extension

31

Page 30: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

IMPLEMENTATION CONSIDERATIONS

33

Page 31: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

Implementing Spatial Operations

• These are standard OGC operators that have been around

for some time

• Lots of infrastructure available

– Open Source

– Commercial

34

Page 32: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

Other Considerations

• Have to handle geometries from multiple Spatial Reference

Systems simultaneously

– Normalize to common SRS on-the-fly during computation

– Pre-normalize ahead of time

• Spatial Indexing very important for performance

– Normalize to common SRS during indexing

35

Page 33: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

Summary

• GeoSPARQL Defines:

– Basic vocabulary, Query functions, Entailment component

• Based on existing OGC/ISO standards

– WKT, GML, Simple Features, ISO 19107

• Uses SPARQL’s built-in extensibility framework

• Modular specification

– Allows flexibility in implementations

– Easy to extend

• Accommodates qualitative and quantitative systems

– Same query specification for qualitative (core + topology vocabulary)

and quantitative (all components, incl. query rewrite)

36

Page 34: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

GEOSPARQL DEMO WITH ORACLE DATABASE SEMANTIC TECHNOLOGIES

37

Page 35: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

38

THE FOLLOWING IS INTENDED TO OUTLINE

OUR GENERAL PRODUCT DIRECTION. IT IS

INTENDED FOR INFORMATION PURPOSES

ONLY, AND MAY NOT BE INCORPORATED INTO

ANY CONTRACT. IT IS NOT A COMMITMENT TO

DELIVER ANY MATERIAL, CODE, OR

FUNCTIONALITY, AND SHOULD NOT BE RELIED

UPON IN MAKING PURCHASING DECISION. THE

DEVELOPMENT, RELEASE, AND TIMING OF ANY

FEATURES OR FUNCTIONALITY DESCRIBED

FOR ORACLE'S PRODUCTS REMAINS AT THE

SOLE DISCRETION OF ORACLE.

Page 36: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

39

Linked GeoData Relevant Nodes Dataset

• 70 m triples

• 5.9 m points (WGS84 Long Lat)

US Census Polygon Data California Cities, Counties, School Districts

• 6 k triples

• 2 k (Multi)Polygons (NAD83 Long Lat)

• Avg 206 points per polygon

• Max 7707 points per polygon

Demo Setup

GeoSPARQL

Prototype *

1) Load into staging table

2) Replace virtrdf:Geometry with ogc:wktLiteral

3) Bulk Load into RDF Store

Load RDF from Linked GeoData

* Equivalent functionality is available in Oracle Database 11g Release 2 using proprietary datatypes and extension functions.

1

Page 37: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

40

Linked GeoData Relevant Nodes Dataset

• 70 m triples

• 5.9 m points (WGS84 Long Lat)

US Census Polygon Data California Cities, Counties, School Districts

• 6 k triples

• 2 k (Multi)Polygons (NAD83 Long Lat)

• Avg 206 points per polygon

• Max 7707 points per polygon

Demo Setup

GeoSPARQL

Prototype *

1) Load .shp file into Oracle Spatial

2) Convert to RDF using SDO_GEOMETRY.GET_WKT()

3) Bulk load into RDF Store

Generate and Load RDF from

Census Data

* Equivalent functionality is available in Oracle Database 11g Release 2 using proprietary datatypes and extension functions.

2

Page 38: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

41

Linked GeoData Relevant Nodes Dataset

• 70 m triples

• 5.9 m points (WGS84 Long Lat)

US Census Polygon Data California Cities, Counties, School Districts

• 6 k triples

• 2 k (Multi)Polygons (NAD83 Long Lat)

• Avg 206 points per polygon

• Max 7707 points per polygon

Demo Setup

GeoSPARQL

Prototype *

exec sem_apis.add_datatype_index(

'http://www.opengis.net/geosparql#wktLiteral',

options=>'TOLERANCE=1 SRID=8307

DIMENSIONS=((LONGITUDE,-180,180) (LATITUDE,-90,90))',

parallel=>4);

Create spatial index with native

SDO_GEOMTERY object type

(normalize to common SRS)

* Equivalent functionality is available in Oracle Database 11g Release 2 using proprietary datatypes and extension functions.

3

Page 39: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

42

create table

lgd_restaurants as

select l, g

from table(sem_match(

‘SELECT ?l, ?g

WHERE {…}’,…));

create table

lgd_restaurants as

select l, g

from table(sem_match(

‘SELECT ?l, ?g

WHERE {…}’,…));

Map Creation

GeoSPARQL

Prototype *

create table

lgd_restaurants as

select l, g

from table(sem_match(

‘SELECT ?l, ?g

WHERE {…}’,…));

* Equivalent functionality is available in Oracle Database 11g Release 2 using proprietary datatypes and extension functions.

Map Viewer

Create geometry tables

from sem_match

GeoSPARQL queries

1 Create Map Viewer layers

from geometry tables 2

Page 40: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

OGC ®

Questions?

Thanks to all members of

the GeoSPARQL SWG !

43

Page 41: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

44

Page 42: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

45

Page 43: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

46

Page 44: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

47

SELECT ?x ?l ?g

WHERE

{ ?x rdf:type lgd:Restaurant .

?x rdfs:label ?l .

?x geo:asWKT ?g

FILTER (geof:distance(?g,

"POINT(-122.41 37.7858)"^^geo:wktLiteral,

uom:KM) <= 0.5)

}

Q1: Open Street Map restaurants near Hilton Hotel

Page 45: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

48

Page 46: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

49

SELECT ?x ?l ?g

WHERE

{ ?x rdf:type lgd:TourismHotel .

?x rdfs:label ?l .

?x geo:asWKT ?g

FILTER (geof:distance(?g,

"POINT(-122.41 37.7858)"^^geo:wktLiteral,

uom:KM) <= 1)

}

Q2: Open Street Map hotels within 1 KM of Hilton Hotel

Page 47: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

50

Page 48: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

51

SELECT ?x ?l ?g

WHERE

{ ?x rdf:type lgd:TourismHotel .

?x rdfs:label ?l .

?x geo:asWKT ?g

FILTER (geof:distance(?g,

"POINT(-122.41 37.7858)"^^geo:wktLiteral,

uom:KM) <= 1)

}

ORDER BY ASC(geof:distance(?g,

"POINT(-122.41 37.7858)"^^geo:wktLiteral,

uom:KM))

LIMIT 21

Q3: 20 closest Open Street Map hotels to Hilton Hotel

Page 49: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

52

Page 50: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

53

SELECT ?x ?l ?g

WHERE

{ ?x rdf:type lgd:Restaurant .

?x rdfs:label ?l .

?x geo:asWKT ?g

FILTER (geof:sfWithin(?g,

"POLYGON((-122.25 37.46, -123.27 37.46,

-123.27 37.60, -122.25 37.60,

-122.25 37.46))"^^geo:wktLiteral))

}

Q4: Open Street Map restaurants inside a query window

Page 51: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

54

Page 52: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

55

SELECT ?x ?l ?t

WHERE

{ ?x rdf:type ?t .

?x dc:title ?l .

?x geo:asWKT ?g

FILTER (geof:sfContains(?g,

"POINT(-122.2230 37.3708)"^^geo:wktLiteral))

}

Q5: What US Census areas contain SFO airport

Page 53: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

56

Page 54: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

57

SELECT ?t ?l

WHERE

{ ?sf rdf:type ucs:city .

?sf dc:title ?t .

?sf geo:asWKT ?sgeo .

?x rdf:type lgd:Park .

?x rdfs:label ?l .

?x geo:asWKT ?g

FILTER (

geof:sfWithin(?g,

"POLYGON((-124.40959 32.534156, -114.13443 32.534156,

-114.13443 42.009518, -124.40959 42.009518,

-124.40959 32.534156))"^^geo:wktLiteral)

&&

geof:sfContains(?sgeo, ?g) )

} LIMIT 100

Q6: Pairs of US Census cities and Open Street Map parks

Page 55: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

58

Page 56: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

59

Page 57: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

60

Page 58: Bringing Location Analysis to the Semantic Web with the OGC GeoSPARQL Standard · 2012. 6. 18. · Semantic Web with the OGC GeoSPARQL Standard Matthew Perry Xavier Lopez . OGC ®

61