Workshop: Semantics in GDI • Werner Kuhn Institute for Geoinformatics [email protected] June 26, 2003 GI-Tage 2003 Workshop.

Download Report

Transcript 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