Workshop: Semantics in GDI • Werner Kuhn Institute for Geoinformatics [email protected] June 26, 2003 GI-Tage 2003 Workshop.
Download ReportTranscript Workshop: Semantics in GDI • Werner Kuhn Institute for Geoinformatics [email protected] June 26, 2003 GI-Tage 2003 Workshop.
Slide 1
Workshop: Semantics in GDI
•
Werner Kuhn
Institute for Geoinformatics
[email protected]
June 26, 2003
GI-Tage 2003 Workshop
Slide 2
Slide 3
Goals
To work towards a better understanding of
semantic problems in a GDI
To exchange information on use cases
To exchange experiences with methods and tools
This is not a tutorial on semantic technologies –
your contributions and questions are requested
throughout the workshop.
June 26, 2003
Semantics in GDI
3
Slide 4
Overview
1. The problem
Use case
Analysis
Generalization
2. Solution attempts
Puzzle pieces
Putting the pieces together
Puzzling questions
June 26, 2003
Semantics in GDI
4
Slide 5
The Problem: a use case
Shortest path for oversized vehicle
June 26, 2003
Semantics in GDI
5
Slide 6
Perspective of a Service Developer
Input:
• two locations: origin and destination
e.g., end of A43 to Schloss in Münster
• vehicle and load specifications
total width, weight, min. radius for turns
• other constraints
time, cost, safety
Output:
• shortest path satisfying (some of) the constraints
• driving instructions
June 26, 2003
Semantics in GDI
6
Slide 7
Searching for information
Road data
• local government: MS_Strassen
• state: ATKIS
• industry: TeleAtlas MultiNet (GDF)
Navigation services
• wayfinding web services: lack information
• shortest path services: not available online
• re-use existing local code (shortest path)
• service chain with filter on graph
June 26, 2003
Semantics in GDI
7
Slide 8
What information can the data provide?
Ergebnisse der erweiterten Suche:
XtraWMS - GDI Testbed I
Mapping Service: Straßendaten im Netz
Beschreibung: Xtra Web Map Server von interactive instruments bereitgestellt für
das GDI Testbed I. Der Server präsentiert das Netz der klassifizierten Straßen
basierend auf dem OKSTRA-Standard im Bereich von sechs TK-Blättern im
Raum Düsseldorf.
WMS (1.1.0)
Dienst erstellt: 2001-09-08 18:45:00
Kontakt
interactive instruments GmbH, Reinhard Erstling, Geschäftsführer
[email protected]
Trierer Straße 70-72
53115 Bonn
NRW, Germany
Lage zeigen
ShowOperations
Online Ressource aufrufen
Der Zugang zu diesem Dienst ist nicht kostenpflichtig.
June 26, 2003
Semantics in GDI
8
Slide 9
From data files and documentation
MS_Strassen
• polylines, a few attributes
ATKIS
• ATKIS OK
several hundred pages, human-readable, online
• Teil D3 Verkehr: Objekttyp 3101 Strasse
linienförmig
GN
Geographischer Name
BRF
Breite der Fahrbahn
“…setzt sich zusammen aus den Breiten der Fahrstreifen,
der befestigten Rand-/Leitstreifen sowie der Stand- oder
Kriechspuren (befestigte Straßenoberfläche)”
BRV
Breite des Verkehrsweges
“…Abstand der seitlichen Begrenzungslinien entsprechend
der Objektdefinition in Form der jeweils oberen Grenzen
der o.a. Klasseneinteilung”
...
June 26, 2003
Semantics in GDI
9
Slide 10
From data files and documentation (2)
TeleAtlas MultiNet
• ISO Standard GDF (Geographic Data Files)
ca. 700 pages, to purchase from DIN
• Release Notes MultiNet Germany
34 pages, to purchase with product
• MultiNet Data Specifications
1249 pages, to purchase with product
• Roads and Ferries
Width (in cm): „The width of a Road Element ..., a lane
or a Road Furniture or Structure Feature.“
Maximum Width Allowed (in cm): „The maximum width limit
of a vehicle that may use the Road Element, ... The
limit is normally set by a physical obstruction such
as a bridge or a legal restriction.“
• Both attributes are not implemented in MultiNet
June 26, 2003
Semantics in GDI
10
Slide 11
What‘s left?
Take
• road axes from GDF
• road width (BRF) from ATKIS
Obtain both data sources
• try to read them in your GIS
• licensing
Build service architecture
Build navigation service
June 26, 2003
Semantics in GDI
11
Slide 12
Architecture for Multi-source Navigation Chain
Java FeatureCollection
Navigation Services
Java FeatureCollection
Filter Service
WFS Client
GML
HTML
OpenGIS Components
Web Feature Server
Web Feature Server
Servlet Engine
Servlet Engine
Middleware
Middleware
GDF MulitNet
ATKIS
Navigation Client (Browser)
June 26, 2003
Semantics in GDI
12
Slide 13
Caveats
„schema integration“, „data integration“
„data interoperability“
Semantics of road width
Semantics of passable
Information Communities vs. natural languages
Feature identity in geographic data
Data quality (completeness, currency, ...)
June 26, 2003
Semantics in GDI
13
Slide 14
A Summary of Semantic Problems
Specify the meaning of the question
• „passable for oversized transport“: width? turns? weight?
noise?
Find data with potentially useful contents
• ATKIS, ALKIS, GDF, OKSTRA, ...
Find services with potentially useful functionality
• shortest path, filter, ...
Determine the meaning of feature classes
• road, „komplexe Strasse“, ...
Determine the meaning of attributes
• „Breite der Fahrbahn“, „Breite des Verkehrsweges“,
„maximum width allowed“
Determine the meaning of service operators
• shortest path
Semantics in GDI
June 26, 2003
14
Slide 15
Semantic interoperability problems
data-service
e.g., building
heights from floors
service-service
e.g., directions from graphs
service-user
e.g., parcels
touching a road
Slide 16
Solution Attempts
A vision
Pieces of the puzzle
• Metadata
• Catalog services
• Ontologies
• Reasoning systems
• Semantic translators
June 26, 2003
Semantics in GDI
16
Slide 17
Vision
Users of geographic information should be able to
refer thematic data to semantic reference systems,
just as they refer geometric data to spatial reference
systems.
Software should support the
referencing process
projections to simpler semantic spaces
semantic translation among different reference systems.
June 26, 2003
Semantics in GDI
17
Slide 18
Semantic Reference Systems
Spatial Reference System
[ISO 19112]
„system for identifying positions in the real world“
e.g., geodetic reference systems
Temporal Reference System
[ISO 19108]
„basis against which time is measured“
e.g., calendars
Semantic Reference System
[t.b.d.]
basis on which thematic data are interpreted:
‚forest‘, ‚wetland‘‚ ‚road width‘ etc.
e.g., ontologies
June 26, 2003
Semantics in GDI
18
Slide 19
Semantic Reference Systems
Methods and tools for referencing GI terms by
• grounding (e.g. “move”)
• projecting (e.g. ferries and roads to edges)
• translating (e.g. cadastre to navigation)
June 26, 2003
Semantics in GDI
19
Slide 20
What we have today
multiple semantic reference systems
• explicit (ontologies, FACs)
• implicit (in data models, programs, procedures)
a proliferation of tools (e.g., XML-based)
• exposing semantics (“mark-up language du jour”)
• designing representation before computation (Roman numerals)
unclear theoretical bases
• ontologies are theories without testable models
• they often lack a (sound) typing system and/or axioms
• upper levels are ill-defined
need for theory and tools:
• explaining the meaning of terms in (geographic) information
• to integrate (geographic) information from different sources
June 26, 2003
Semantics in GDI
20
Slide 21
Ontologies: specifications of concepts in a domain
#| ATKIS-Objektartenkatalog (ATKIS-OK) | Seite Blatt | Stand
|
#| Teil D1: ATKIS-OK 25
| 62.1
1 ( 2) | 01.11.1995 |
#|______________________________________|________________|____________|
#| Nr. Objektbereich | Nr. Objektgruppe
|
#| 6000 RELIEF
| 6200 Besondere Geländeoberflächenformen
|
#|____________________|_______________________________________________|
#| Nr. Objektart
| Nr. |
#| 6201 Damm, Wall, Deich
| 6201 |
#|_____________________________________________________________|______|
June 26, 2003
CAP landuse code
CAP landuse label
1
Urban
1.A
Urban; Residential
1.A.0.a
Urban; Residential; Single family
...
...
Semantics in GDI
21
Slide 22
[Visser et al.]
Slide 23
CORINE Land Cover
clc: CORINE Land Cover categories
June 26, 2003
1.2 Industrial, commercial and transport units
1.2.1 Industrial or commercial units
1.2.2 Road and rail networks & associated land
1.2.3 Port areas
1.2.4 Airports
1.4 Artificial, non-agricultural vegetated areas
Semantics in GDI
23
Slide 24
What it takes
Spatial and temporal reference systems have
•well-known systems of measures and units
e.g, lengths, angles, time
•well-known algebras for these measures
e.g., modulo arithmetic for angles
•tools for projection and transformation
e.g., map projections, coordinate transformations
Semantic reference systems need
•formalizations of the kind that Descartes provided
for space
using algebraic specifications (equational theories)
•mappings among the resulting formal systems
using category theory (morphisms)
June 26, 2003
Semantics in GDI
24
Slide 25
An ontology editor: Protégé
entity-relationship modeling based on frame logic
pre- and post-conditions for operators
interface to Java
open source
good usability
unclear theoretical bases
• classes vs. Instances (vs. Java classes),
• contents of pre- and post-conditions
June 26, 2003
Semantics in GDI
25
Slide 26
:THING
•:SYSTEM-CLASS
•:CLASS
•:STANDARD-CLASS
•:SLOT
•:STANDARD-SLOT
•:FACET
•:STANDARD-FACET
•:CONSTRAINT
•:PAL-CONSTRAINT
•:ANNOTATION
•:INSTANCE-ANNOTATION
•:RELATION
•:DIRECTED-BINARY-RELATION
•Coordinate
•AttributeInstanceCollection
•FeatureAttributeInstanceCollection
•RoadsAndFerriesInstanceCollection
•NestedFeature
•Level_0
•Node
•Edge
•NestedEdge
•Level_1
•LineFeature
•PointFeature
•Junction
•LineElement
•FerryConnection
•RoadElement
•Level_2
•ComplexFeature
•Road
•Ferry
•Intersection
June 26, 2003
Semantics in GDI
26
Slide 27
Class Level_2
Abstract Class Extends
:THING
Direct Instances:
None
Direct Subclasses:
1.ComplexFeature
2.Road
3.Ferry
4.Intersection
June 26, 2003
Semantics in GDI
27
Slide 28
DAML-S: a proposal for a service
description language
Building on OWL (formerly DAML+OIL)
to deliver the semantics missing in WSDL and
other syntactic service descriptions (IDL)
service profiles with model-based pre- and postconditions
based on RDF
Clearly a language for exposing semantics
Unclear:
• relationship to domain ontologies?
• kinds of models to be used?
June 26, 2003
Semantics in GDI
28
Slide 29
Slide 30
Our tool: Haskell
a modern functional language
•
•
•
•
•
executable
strict type system
multiple parameter type classes (Hugs dialect)
freely available from www.haskell.org
translates nicely into Java (interfaces)
in a nutshell
•
•
•
June 26, 2003
algebraic data types: data Car = Car Position
type classes: class LocatedAt object location where
location :: object -> location
instances: instance LocatedAt Car Position where
location (Car pos) = pos
Semantics in GDI
30
Slide 31
An Example: Ferries in GDF
Edge
level 0
+navigate()
Road
Ferry
level 1
+drive()
June 26, 2003
Semantics in GDI
+cross()
31
Slide 32
Ferry example: objectives
1. apply the idea of semantic reference
systems to a simple example
2. build a semantic reference system
3. demonstrate the use of Haskell as an
ontology language
4. test the hypothesis of what went wrong
5. relate to cognitive semantics: affordances,
image schemata, blending
June 26, 2003
Semantics in GDI
32
Slide 33
Layers of Semantic Reference
Contents
Form
application data model
data types
application objects
data
reference frame
upper-level ontology
symbol grounding
(outside the system)
semantic reference
application ontology
June 26, 2003
Semantics in GDI
33
Slide 34
Application Data Model: GDF roads
Nodes have Names
data Node = Node Name
Edges connect two Nodes
data Edge = Edge Node Node
RoadElements follow Edges
data RoadElement = RoadElement Edge
FerryConnections follow Edges
data FerryConnection = FerryConnection Edge
June 26, 2003
Semantics in GDI
34
Slide 35
Application Data Model: Vehicles
Cars have a Node as location
data Car = Car Node
CarFerries carry multiple Cars and have a Node location
data CarFerry = CarFerry [Car] Node
June 26, 2003
Semantics in GDI
35
Slide 36
Application Objects
road network
start = Node "start"
end = Node "end"
theEdge = Edge start end
theRoadElement = RoadElement theEdge
theFerryConnection = FerryConnection theEdge
vehicles
theCar = Car start
theCarFerry = CarFerry [theCar] start
June 26, 2003
Semantics in GDI
36
Slide 37
Reference Frame: Basics
named objects
class Named object name where
name :: object -> name
named objects are equal if their names are equal
instance (Eq name, Named object name) => Eq object where
object1 == object2 = (name object1) == (name object2)
located objects
class LocatedAt object location where
location :: object -> location
June 26, 2003
Semantics in GDI
37
Slide 38
Reference Frame: Image Schemas
a simple link schema
class Link link object where
from, to :: link -> object
other :: link -> object -> object
other link object | object == from link = to link
| object == to link = from link
| otherwise = error "not linked"
a simple path schema
class Path path object where
move :: path -> object -> object
June 26, 2003
Semantics in GDI
38
Slide 39
Reference Frame: Image Schemas (2)
a simple surface schema
class Surface surface object where
putOn :: object -> surface -> surface
takeOff :: object -> surface -> surface
isOn
:: object -> surface -> Bool
conveyances for transportation
class (Path path conveyance, Surface conveyance object) =>
Conveyance conveyance path object where
transport :: path -> conveyance -> object -> object
June 26, 2003
Semantics in GDI
39
Slide 40
Symbol Grounding: Assumptions
Haskell language semantics
• Data types (Strings, Lists, ...)
• Operational semantics
experiential grounding of image schemas
June 26, 2003
Semantics in GDI
40
Slide 41
Semantic Reference (1)
RoadElements are Paths for Cars
instance Path RoadElement Car where
move (RoadElement edge) (Car node) = Car (other edge node)
FerryConnections are Paths for CarFerries
instance Path FerryConnection CarFerry where
move (FerryConnection edge) (CarFerry cars node) =
CarFerry (doToAll (transport (FerryConnection edge)
(CarFerry cars node) cars) (other edge node)
June 26, 2003
Semantics in GDI
41
Slide 42
Semantic Reference (2)
CarFerries are Surfaces for Cars
instance Surface CarFerry Car where
putOn car (CarFerry cars node) =
if (location car == node)
then CarFerry (addOne car cars) node
else error "Car and CarFerry are not co-located"
...
CarFerries are Conveyances for Cars
instance Conveyance CarFerry FerryConnection Car where
transport (FerryConnection edge) carFerry (Car node) =
Car (other edge node)
...
June 26, 2003
Semantics in GDI
42
Slide 43
Layers of Semantic Reference
Contents
Form
application data model
data types
application objects
data
reference frame
upper-level ontology
symbol grounding
(outside the system)
semantic reference
application ontology
June 26, 2003
Semantics in GDI
43
Slide 44
Ontology Testing (1)
the car is at the end of the road element after moving
t1 = location (move theRoadElement theCar) == end
the ferry is at the end of the ferry connection after moving
t2 = location (move theFerryConnection theCarFerry) == end
the car is at the end of the ferry connection after being transported
by the ferry
t3 = location (transport theFerryConnection theCarFerry theCar) == end
the car cannot move on the edge or on the ferryConnection
type in: move theEdge theCar
type in: move theFerryConnection theCar
June 26, 2003
Semantics in GDI
44
Slide 45
Semantic Projection
Edge
+navigate()
Ferry
projection
Road
+drive()
+cross()
Edge
+navigate()
June 26, 2003
Semantics in GDI
45
Slide 46
Ontology Testing (2)
Erroneous Semantic Translation
edges are paths for cars
instance Path Edge Car where
move edge (Car node) = Car (other edge node)
after adding this axiom,
move theEdge theCar
executes (but the car is not supposed to move on any
edge, as it may be a ferry connection)
June 26, 2003
Semantics in GDI
46
Slide 47
Conclusions on Solution Attempts
Current standards proposals focus on exposing semantics
Lack of theories and tools for semantic modeling
Spatial reference systems motivate semantic reference systems
• shown example for a simplified navigation domain
• implemented semantic referencing, projection, and translation
• from static ontologies to computational reference systems
Upper-level ontology with meaningful abstractions
• image schemas: processes in space and time
• actions afforded by objects in the environment
properties are modeled as functions inherited from classes
• type classes specify wrappers for legacy data
• transportation is a blending of the path and surface schemas.
June 26, 2003
Semantics in GDI
47
Slide 48
In progress
1. evolving upper-level ontology for GI
•
•
organized as a lattice of type classes
with multiple inheritance of behavior
2. semantic interoperability applications
•
•
•
•
environmental planning
emergency management
storm damage assessment
transportation models (topographic to navigation)
3. comparisons with and translation to other approaches
•
•
•
•
June 26, 2003
description logic approaches (e.g., BUSTER)
DAML-S and OWL
OBJ
...
Semantics in GDI
48
Slide 49
For more information...
MUSIL web site (Muenster Semantic Interoperability Lab):
http://musil.uni-muenster.de
recent publications (all at MUSIL web site)
• Implementing Semantic Reference Systems. AGILE 2003
• Semantic Reference Systems. Guest Editorial, International Journal of
Geographical Information Science (in print).
• Modeling the Semantics of Geographic Categories through Conceptual
Integration. GIScience 2002. LNCS 2478: 108-118.
• Ontologies in support of activities in geographical space. International
Journal of Geographical Information Science
15(7): 613-631.
June 26, 2003
Semantics in GDI
49
Workshop: Semantics in GDI
•
Werner Kuhn
Institute for Geoinformatics
[email protected]
June 26, 2003
GI-Tage 2003 Workshop
Slide 2
Slide 3
Goals
To work towards a better understanding of
semantic problems in a GDI
To exchange information on use cases
To exchange experiences with methods and tools
This is not a tutorial on semantic technologies –
your contributions and questions are requested
throughout the workshop.
June 26, 2003
Semantics in GDI
3
Slide 4
Overview
1. The problem
Use case
Analysis
Generalization
2. Solution attempts
Puzzle pieces
Putting the pieces together
Puzzling questions
June 26, 2003
Semantics in GDI
4
Slide 5
The Problem: a use case
Shortest path for oversized vehicle
June 26, 2003
Semantics in GDI
5
Slide 6
Perspective of a Service Developer
Input:
• two locations: origin and destination
e.g., end of A43 to Schloss in Münster
• vehicle and load specifications
total width, weight, min. radius for turns
• other constraints
time, cost, safety
Output:
• shortest path satisfying (some of) the constraints
• driving instructions
June 26, 2003
Semantics in GDI
6
Slide 7
Searching for information
Road data
• local government: MS_Strassen
• state: ATKIS
• industry: TeleAtlas MultiNet (GDF)
Navigation services
• wayfinding web services: lack information
• shortest path services: not available online
• re-use existing local code (shortest path)
• service chain with filter on graph
June 26, 2003
Semantics in GDI
7
Slide 8
What information can the data provide?
Ergebnisse der erweiterten Suche:
XtraWMS - GDI Testbed I
Mapping Service: Straßendaten im Netz
Beschreibung: Xtra Web Map Server von interactive instruments bereitgestellt für
das GDI Testbed I. Der Server präsentiert das Netz der klassifizierten Straßen
basierend auf dem OKSTRA-Standard im Bereich von sechs TK-Blättern im
Raum Düsseldorf.
WMS (1.1.0)
Dienst erstellt: 2001-09-08 18:45:00
Kontakt
interactive instruments GmbH, Reinhard Erstling, Geschäftsführer
[email protected]
Trierer Straße 70-72
53115 Bonn
NRW, Germany
Lage zeigen
ShowOperations
Online Ressource aufrufen
Der Zugang zu diesem Dienst ist nicht kostenpflichtig.
June 26, 2003
Semantics in GDI
8
Slide 9
From data files and documentation
MS_Strassen
• polylines, a few attributes
ATKIS
• ATKIS OK
several hundred pages, human-readable, online
• Teil D3 Verkehr: Objekttyp 3101 Strasse
linienförmig
GN
Geographischer Name
BRF
Breite der Fahrbahn
“…setzt sich zusammen aus den Breiten der Fahrstreifen,
der befestigten Rand-/Leitstreifen sowie der Stand- oder
Kriechspuren (befestigte Straßenoberfläche)”
BRV
Breite des Verkehrsweges
“…Abstand der seitlichen Begrenzungslinien entsprechend
der Objektdefinition in Form der jeweils oberen Grenzen
der o.a. Klasseneinteilung”
...
June 26, 2003
Semantics in GDI
9
Slide 10
From data files and documentation (2)
TeleAtlas MultiNet
• ISO Standard GDF (Geographic Data Files)
ca. 700 pages, to purchase from DIN
• Release Notes MultiNet Germany
34 pages, to purchase with product
• MultiNet Data Specifications
1249 pages, to purchase with product
• Roads and Ferries
Width (in cm): „The width of a Road Element ..., a lane
or a Road Furniture or Structure Feature.“
Maximum Width Allowed (in cm): „The maximum width limit
of a vehicle that may use the Road Element, ... The
limit is normally set by a physical obstruction such
as a bridge or a legal restriction.“
• Both attributes are not implemented in MultiNet
June 26, 2003
Semantics in GDI
10
Slide 11
What‘s left?
Take
• road axes from GDF
• road width (BRF) from ATKIS
Obtain both data sources
• try to read them in your GIS
• licensing
Build service architecture
Build navigation service
June 26, 2003
Semantics in GDI
11
Slide 12
Architecture for Multi-source Navigation Chain
Java FeatureCollection
Navigation Services
Java FeatureCollection
Filter Service
WFS Client
GML
HTML
OpenGIS Components
Web Feature Server
Web Feature Server
Servlet Engine
Servlet Engine
Middleware
Middleware
GDF MulitNet
ATKIS
Navigation Client (Browser)
June 26, 2003
Semantics in GDI
12
Slide 13
Caveats
„schema integration“, „data integration“
„data interoperability“
Semantics of road width
Semantics of passable
Information Communities vs. natural languages
Feature identity in geographic data
Data quality (completeness, currency, ...)
June 26, 2003
Semantics in GDI
13
Slide 14
A Summary of Semantic Problems
Specify the meaning of the question
• „passable for oversized transport“: width? turns? weight?
noise?
Find data with potentially useful contents
• ATKIS, ALKIS, GDF, OKSTRA, ...
Find services with potentially useful functionality
• shortest path, filter, ...
Determine the meaning of feature classes
• road, „komplexe Strasse“, ...
Determine the meaning of attributes
• „Breite der Fahrbahn“, „Breite des Verkehrsweges“,
„maximum width allowed“
Determine the meaning of service operators
• shortest path
Semantics in GDI
June 26, 2003
14
Slide 15
Semantic interoperability problems
data-service
e.g., building
heights from floors
service-service
e.g., directions from graphs
service-user
e.g., parcels
touching a road
Slide 16
Solution Attempts
A vision
Pieces of the puzzle
• Metadata
• Catalog services
• Ontologies
• Reasoning systems
• Semantic translators
June 26, 2003
Semantics in GDI
16
Slide 17
Vision
Users of geographic information should be able to
refer thematic data to semantic reference systems,
just as they refer geometric data to spatial reference
systems.
Software should support the
referencing process
projections to simpler semantic spaces
semantic translation among different reference systems.
June 26, 2003
Semantics in GDI
17
Slide 18
Semantic Reference Systems
Spatial Reference System
[ISO 19112]
„system for identifying positions in the real world“
e.g., geodetic reference systems
Temporal Reference System
[ISO 19108]
„basis against which time is measured“
e.g., calendars
Semantic Reference System
[t.b.d.]
basis on which thematic data are interpreted:
‚forest‘, ‚wetland‘‚ ‚road width‘ etc.
e.g., ontologies
June 26, 2003
Semantics in GDI
18
Slide 19
Semantic Reference Systems
Methods and tools for referencing GI terms by
• grounding (e.g. “move”)
• projecting (e.g. ferries and roads to edges)
• translating (e.g. cadastre to navigation)
June 26, 2003
Semantics in GDI
19
Slide 20
What we have today
multiple semantic reference systems
• explicit (ontologies, FACs)
• implicit (in data models, programs, procedures)
a proliferation of tools (e.g., XML-based)
• exposing semantics (“mark-up language du jour”)
• designing representation before computation (Roman numerals)
unclear theoretical bases
• ontologies are theories without testable models
• they often lack a (sound) typing system and/or axioms
• upper levels are ill-defined
need for theory and tools:
• explaining the meaning of terms in (geographic) information
• to integrate (geographic) information from different sources
June 26, 2003
Semantics in GDI
20
Slide 21
Ontologies: specifications of concepts in a domain
#| ATKIS-Objektartenkatalog (ATKIS-OK) | Seite Blatt | Stand
|
#| Teil D1: ATKIS-OK 25
| 62.1
1 ( 2) | 01.11.1995 |
#|______________________________________|________________|____________|
#| Nr. Objektbereich | Nr. Objektgruppe
|
#| 6000 RELIEF
| 6200 Besondere Geländeoberflächenformen
|
#|____________________|_______________________________________________|
#| Nr. Objektart
| Nr. |
#| 6201 Damm, Wall, Deich
| 6201 |
#|_____________________________________________________________|______|
June 26, 2003
CAP landuse code
CAP landuse label
1
Urban
1.A
Urban; Residential
1.A.0.a
Urban; Residential; Single family
...
...
Semantics in GDI
21
Slide 22
[Visser et al.]
Slide 23
CORINE Land Cover
clc: CORINE Land Cover categories
June 26, 2003
1.2 Industrial, commercial and transport units
1.2.1 Industrial or commercial units
1.2.2 Road and rail networks & associated land
1.2.3 Port areas
1.2.4 Airports
1.4 Artificial, non-agricultural vegetated areas
Semantics in GDI
23
Slide 24
What it takes
Spatial and temporal reference systems have
•well-known systems of measures and units
e.g, lengths, angles, time
•well-known algebras for these measures
e.g., modulo arithmetic for angles
•tools for projection and transformation
e.g., map projections, coordinate transformations
Semantic reference systems need
•formalizations of the kind that Descartes provided
for space
using algebraic specifications (equational theories)
•mappings among the resulting formal systems
using category theory (morphisms)
June 26, 2003
Semantics in GDI
24
Slide 25
An ontology editor: Protégé
entity-relationship modeling based on frame logic
pre- and post-conditions for operators
interface to Java
open source
good usability
unclear theoretical bases
• classes vs. Instances (vs. Java classes),
• contents of pre- and post-conditions
June 26, 2003
Semantics in GDI
25
Slide 26
:THING
•:SYSTEM-CLASS
•:CLASS
•:STANDARD-CLASS
•:SLOT
•:STANDARD-SLOT
•:FACET
•:STANDARD-FACET
•:CONSTRAINT
•:PAL-CONSTRAINT
•:ANNOTATION
•:INSTANCE-ANNOTATION
•:RELATION
•:DIRECTED-BINARY-RELATION
•Coordinate
•AttributeInstanceCollection
•FeatureAttributeInstanceCollection
•RoadsAndFerriesInstanceCollection
•NestedFeature
•Level_0
•Node
•Edge
•NestedEdge
•Level_1
•LineFeature
•PointFeature
•Junction
•LineElement
•FerryConnection
•RoadElement
•Level_2
•ComplexFeature
•Road
•Ferry
•Intersection
June 26, 2003
Semantics in GDI
26
Slide 27
Class Level_2
Abstract Class Extends
:THING
Direct Instances:
None
Direct Subclasses:
1.ComplexFeature
2.Road
3.Ferry
4.Intersection
June 26, 2003
Semantics in GDI
27
Slide 28
DAML-S: a proposal for a service
description language
Building on OWL (formerly DAML+OIL)
to deliver the semantics missing in WSDL and
other syntactic service descriptions (IDL)
service profiles with model-based pre- and postconditions
based on RDF
Clearly a language for exposing semantics
Unclear:
• relationship to domain ontologies?
• kinds of models to be used?
June 26, 2003
Semantics in GDI
28
Slide 29
Slide 30
Our tool: Haskell
a modern functional language
•
•
•
•
•
executable
strict type system
multiple parameter type classes (Hugs dialect)
freely available from www.haskell.org
translates nicely into Java (interfaces)
in a nutshell
•
•
•
June 26, 2003
algebraic data types: data Car = Car Position
type classes: class LocatedAt object location where
location :: object -> location
instances: instance LocatedAt Car Position where
location (Car pos) = pos
Semantics in GDI
30
Slide 31
An Example: Ferries in GDF
Edge
level 0
+navigate()
Road
Ferry
level 1
+drive()
June 26, 2003
Semantics in GDI
+cross()
31
Slide 32
Ferry example: objectives
1. apply the idea of semantic reference
systems to a simple example
2. build a semantic reference system
3. demonstrate the use of Haskell as an
ontology language
4. test the hypothesis of what went wrong
5. relate to cognitive semantics: affordances,
image schemata, blending
June 26, 2003
Semantics in GDI
32
Slide 33
Layers of Semantic Reference
Contents
Form
application data model
data types
application objects
data
reference frame
upper-level ontology
symbol grounding
(outside the system)
semantic reference
application ontology
June 26, 2003
Semantics in GDI
33
Slide 34
Application Data Model: GDF roads
Nodes have Names
data Node = Node Name
Edges connect two Nodes
data Edge = Edge Node Node
RoadElements follow Edges
data RoadElement = RoadElement Edge
FerryConnections follow Edges
data FerryConnection = FerryConnection Edge
June 26, 2003
Semantics in GDI
34
Slide 35
Application Data Model: Vehicles
Cars have a Node as location
data Car = Car Node
CarFerries carry multiple Cars and have a Node location
data CarFerry = CarFerry [Car] Node
June 26, 2003
Semantics in GDI
35
Slide 36
Application Objects
road network
start = Node "start"
end = Node "end"
theEdge = Edge start end
theRoadElement = RoadElement theEdge
theFerryConnection = FerryConnection theEdge
vehicles
theCar = Car start
theCarFerry = CarFerry [theCar] start
June 26, 2003
Semantics in GDI
36
Slide 37
Reference Frame: Basics
named objects
class Named object name where
name :: object -> name
named objects are equal if their names are equal
instance (Eq name, Named object name) => Eq object where
object1 == object2 = (name object1) == (name object2)
located objects
class LocatedAt object location where
location :: object -> location
June 26, 2003
Semantics in GDI
37
Slide 38
Reference Frame: Image Schemas
a simple link schema
class Link link object where
from, to :: link -> object
other :: link -> object -> object
other link object | object == from link = to link
| object == to link = from link
| otherwise = error "not linked"
a simple path schema
class Path path object where
move :: path -> object -> object
June 26, 2003
Semantics in GDI
38
Slide 39
Reference Frame: Image Schemas (2)
a simple surface schema
class Surface surface object where
putOn :: object -> surface -> surface
takeOff :: object -> surface -> surface
isOn
:: object -> surface -> Bool
conveyances for transportation
class (Path path conveyance, Surface conveyance object) =>
Conveyance conveyance path object where
transport :: path -> conveyance -> object -> object
June 26, 2003
Semantics in GDI
39
Slide 40
Symbol Grounding: Assumptions
Haskell language semantics
• Data types (Strings, Lists, ...)
• Operational semantics
experiential grounding of image schemas
June 26, 2003
Semantics in GDI
40
Slide 41
Semantic Reference (1)
RoadElements are Paths for Cars
instance Path RoadElement Car where
move (RoadElement edge) (Car node) = Car (other edge node)
FerryConnections are Paths for CarFerries
instance Path FerryConnection CarFerry where
move (FerryConnection edge) (CarFerry cars node) =
CarFerry (doToAll (transport (FerryConnection edge)
(CarFerry cars node) cars) (other edge node)
June 26, 2003
Semantics in GDI
41
Slide 42
Semantic Reference (2)
CarFerries are Surfaces for Cars
instance Surface CarFerry Car where
putOn car (CarFerry cars node) =
if (location car == node)
then CarFerry (addOne car cars) node
else error "Car and CarFerry are not co-located"
...
CarFerries are Conveyances for Cars
instance Conveyance CarFerry FerryConnection Car where
transport (FerryConnection edge) carFerry (Car node) =
Car (other edge node)
...
June 26, 2003
Semantics in GDI
42
Slide 43
Layers of Semantic Reference
Contents
Form
application data model
data types
application objects
data
reference frame
upper-level ontology
symbol grounding
(outside the system)
semantic reference
application ontology
June 26, 2003
Semantics in GDI
43
Slide 44
Ontology Testing (1)
the car is at the end of the road element after moving
t1 = location (move theRoadElement theCar) == end
the ferry is at the end of the ferry connection after moving
t2 = location (move theFerryConnection theCarFerry) == end
the car is at the end of the ferry connection after being transported
by the ferry
t3 = location (transport theFerryConnection theCarFerry theCar) == end
the car cannot move on the edge or on the ferryConnection
type in: move theEdge theCar
type in: move theFerryConnection theCar
June 26, 2003
Semantics in GDI
44
Slide 45
Semantic Projection
Edge
+navigate()
Ferry
projection
Road
+drive()
+cross()
Edge
+navigate()
June 26, 2003
Semantics in GDI
45
Slide 46
Ontology Testing (2)
Erroneous Semantic Translation
edges are paths for cars
instance Path Edge Car where
move edge (Car node) = Car (other edge node)
after adding this axiom,
move theEdge theCar
executes (but the car is not supposed to move on any
edge, as it may be a ferry connection)
June 26, 2003
Semantics in GDI
46
Slide 47
Conclusions on Solution Attempts
Current standards proposals focus on exposing semantics
Lack of theories and tools for semantic modeling
Spatial reference systems motivate semantic reference systems
• shown example for a simplified navigation domain
• implemented semantic referencing, projection, and translation
• from static ontologies to computational reference systems
Upper-level ontology with meaningful abstractions
• image schemas: processes in space and time
• actions afforded by objects in the environment
properties are modeled as functions inherited from classes
• type classes specify wrappers for legacy data
• transportation is a blending of the path and surface schemas.
June 26, 2003
Semantics in GDI
47
Slide 48
In progress
1. evolving upper-level ontology for GI
•
•
organized as a lattice of type classes
with multiple inheritance of behavior
2. semantic interoperability applications
•
•
•
•
environmental planning
emergency management
storm damage assessment
transportation models (topographic to navigation)
3. comparisons with and translation to other approaches
•
•
•
•
June 26, 2003
description logic approaches (e.g., BUSTER)
DAML-S and OWL
OBJ
...
Semantics in GDI
48
Slide 49
For more information...
MUSIL web site (Muenster Semantic Interoperability Lab):
http://musil.uni-muenster.de
recent publications (all at MUSIL web site)
• Implementing Semantic Reference Systems. AGILE 2003
• Semantic Reference Systems. Guest Editorial, International Journal of
Geographical Information Science (in print).
• Modeling the Semantics of Geographic Categories through Conceptual
Integration. GIScience 2002. LNCS 2478: 108-118.
• Ontologies in support of activities in geographical space. International
Journal of Geographical Information Science
15(7): 613-631.
June 26, 2003
Semantics in GDI
49