Upload
elinor-sherilyn-melton
View
218
Download
4
Embed Size (px)
Citation preview
09/17/08Andrew Frank 1
Time and Process: The challenge for GISandwhat ontology can contribute
Andrew U. Frank
Geoinformation
TU Vienna
www.geoinfo.tuwien.ac.at
09/17/08
Dynamic GIS:
The current GIS maintain static views of the world, but the user want to understand how the world evolves in time (e.g., Global Change discussion).
The users are interested in
computational models of geographic space and processes.
09/17/08
GIS should be Computational Models:Current GIS are static data collections,
described by static ontologies.
The new GIS must combine data
with
processes
to model the dynamic reality!
09/17/08
Ontological challenge for dynamic, temporal GIS:Current ontologies describe the static
structure of the world.
It does not include the processes and their semantics.
A dynamic GIS is described with an ontology that contains objects and operations!
09/17/08
Structure of talk:
1. Ontology
2. Add operations to ontology to capture processes
3. How to describe ontologies with operations
4. Ontologies with operations contribute to the solution of other problems: Metadata
5. More uses for ontology: create graphical user interface from the ontology
6. Conclusions: Paradigm change necessary
09/17/08
Goal of talk
1. Include operations in the ontology
2. The ontology (with operations) is more useful, e.g. a user interface can be derived
3. More useful ontology will find more use and produce more benefits!
09/17/08
Ontolgoy today
Ontology in information science is definable as “an explicit formal specification of the terms in the domain and relations among them”.
09/17/08
Ontology captures structure
Structure of the data is represented in • is_a relations• part_of relations• Instance relations
09/17/08
Two critical observations:
1. a static view: no process, no operations, nothing changes;
2. it is very difficult:imagine how difficult it is to describe the structure of a dish (e.g. apple pie) in contrast to the receipe (a description of a process)
09/17/08
Ontology languages
Informal, but extensive use:
Uniform Modelling Language (UML) – limited by lack of formal definition – hard to draw conclusions automatically.
Tools (graphical editors) for UML are available:
Nice, easy to use, flexible – but no formal background, therefore no fixed semantics, not much can be checked for consistency!
09/17/08
Description logic for ontology
consists of • A set of unitary predicates denote
concept names• A set of binary relations, which denote
role names• Recursive constructors to form more
complex constructs from the concepts and roles.
various levels of expressive power and computational complexity, depending which constructors are included:union and intersections of concepts
negation of concepts
value (universal) restriction
existential restriction
09/17/08
Actual languages:
The Web Ontology Language OWL (the culmination from a sequence of KL-ONE (1985).... DAML, OIL, DAML+OIL).
A compromise between expressive power and tractability of logical deductions (goal: consistent theory!)
Practically: very limited and difficult to use.
09/17/08
Example:<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:owl="http://www.w3.org/2002/07/owl#"
xmlns="http://localhost:8080/OWLBuergerInformation.owl#"
xml:base="http://localhost:8080/OWLBuergerInformation.owl">
<owl:Ontology rdf:about=""/>
<owl:Class rdf:ID="Gender"/>
<owl:Class rdf:ID="Person"/>
<owl:Class rdf:ID="Woman">
<rdfs:subClassOf rdf:resource="#Person"/>
<owl:equivalentClass>
<owl:Restriction>
<owl:onProperty rdf:resource="#Gender"/>
<owl:hasValue rdf:resource="#female" rdf:type="#Gender"/>
</owl:Restriction>
</owl:equivalentClass>
</owl:Class>
<owl:ObjectProperty rdf:ID="gender"
rdf:type="http://www.w3.org/2002/07/owl#FunctionalProperty">
<rdfs:range rdf:resource="#Gender"/>
<rdfs:domain rdf:resource="#Person"/>
</owl:ObjectProperty>
<owl:DatatypeProperty rdf:ID="name"
rdf:type="http://www.w3.org/2002/07/owl#FunctionalProperty">
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
<rdfs:domain rdf:resource="#Person"/>
</owl:DatatypeProperty>
<owl:DatatypeProperty rdf:ID="firstname"
rdf:type="http://www.w3.org/2002/07/owl#FunctionalProperty">
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
<rdfs:domain rdf:resource="#Person"/>
</owl:DatatypeProperty>
<Person rdf:ID="STilgner" firstname="Susanne" name="Tilgner">
<Gender rdf:resource="#female"/>
</Person>
</rdf:RDF>
09/17/08
Ontology editors, e.g., Protege
Ontology editor based on description logic.
Produces ontologies in different output languages (e.g., OWL-Light).
Very difficult to use, very time consuming.
09/17/08
Example: definition of pizza
09/17/08
Extend ontology descriptions with time, change, processWhy difficult?
First order logic is essentially static, adding time
- adds confusing bulk to expression:move (P, A, B, T) :-
is_at (P, A, T1) & is_at (P, B, T2) & before (T1, T) & after (T2, T)
- frame problem:need to state what does not change to allow logical inference
09/17/08
First order logic:
difficult to represent change, process
(temporal logics needed)
09/17/08
Ontologies with operations!
In an object orientation view the world consists of
objects with operations!
The object-oriented research in software engineering concentrate on objects and operations.
The theory uses an algebraic approach
09/17/08
Programming:
The concept of inheritance does not translate properly to a programming language:
functions are contra-variant:
applying a function to subsets of the arguments does not guarantee that the result will be a subset of the result of the original function.
Example:
09/17/08
Example:
class Dogs d wherebark :: d -> StateChange World
eat :: d -> f -> StateChange World
Used: Monads from Category Theory
09/17/08
Subclasses and operations:
Is_a relations create sets and subsets of objects.
Subclass relations do not relate directly:
class Number n wheredivision :: n -> n -> n
2 instances for integers and rationals
needs parametric polymorphism – the usual ad-hoc polymorphism of current programming languages (C++, Java) is limited.
09/17/08
09/17/08
Paradigm change necessary:
Two traditions that are not useful for ontologies with processes:
- logic (especially Description Logics)
- Inheritance in (imperativ) programming languages (especially C++ and Java)
09/17/08
Ontology description with algebra :operations are explicit changing state to
new statet1 = f (t0)
class hierarchy with parametrised polymorphism.
Tools: functional programming languages (eg. Haskell, Caml, Scheme, ML)
09/17/08
Paradigm change must fix more than one problem!
I have argued for a paradigm change in the methods to describe ontologies.
Does this address other pressing problems of GIScience as well? The example will be metadata and the lack of use thereof.
09/17/08
The metadata discussion:
Discrepancy:–much research-
“Google scholar” counts 250'000 articles for metadata
–little documented use
very difficult to find!–accidental negative evidence
09/17/08
Why metadata?
Consider metadata entries like:precision:
varies
between 10 m and 20 km
what can a potential user conclude from such “information”?
Boin's Ph.D. thesis collects user statements like “Metadata is not considered, other sources of information are used”
09/17/08
Practioners sense that metadata is not usedIt is therefore not worth the effort to enter
carefully.
09/17/08
Why ontology?Why metadata?Current argument:
make data collected (with public funds) more useful by
allowing others to find data and combine them with their data.
Keywords:
Data discovery
Interoperability
This argument is politically accepted; the INSPIRE legislation is based on it!
09/17/08
The counter-argument:
If you know enough to understand the metadata you know also about possible (colleagues that have) useable sources.
If you know not much, the metadata will not help you in discovering (see the testimonial Boin collected)
09/17/08
An ontology based on operations could be used to more than just interoperability:
For example:
Derive the graphical user interface from the ontology!
09/17/08
How?
The data structure part (static ontology) can be used to present the data – this is standard for administrative data processing.
The operations described in the ontology give the operations in the GIS (computational model)
→ Translate the operations to buttons!
09/17/08
Conclusions
Building dynamic, temporal GIS requires a formal conceptualization, i.e. a spatio-temporal ontology.
The current tools for ontology building are not suitable for an ontology with operations.
An ontology with operations would have more uses than just facilitate interoperability!
--
It is necessary and worthwile to jump to a new paradigm and build ontologies with operations!