Coastal Atlas Interoperability - Ontologies - PowerPoint PPT Presentation

About This Presentation
Title:

Coastal Atlas Interoperability - Ontologies

Description:

Coastal Atlas Interoperability Ontologies – PowerPoint PPT presentation

Number of Views:59
Avg rating:3.0/5.0
Slides: 164
Provided by: duskGe
Learn more at: http://dusk.geo.orst.edu
Category:

less

Transcript and Presenter's Notes

Title: Coastal Atlas Interoperability - Ontologies


1
Coastal Atlas Interoperability - Ontologies
  • Luis Bermudez
  • Stephanie Watson
  • Marine Metadata Interoperability Initiative

1
2
Day 1
3
Preparation
4
Pre-paration (5 min)
  • Create groups of 2.
  • Every group will have a number (X)
  • Your working ontology will be aX.owl
  • Example Group 10 should work on a10.owl
  • One group will also be the super atlas master
    group - so they will add resources to this
    ontology if needed. (more later)

5
Pre-paration (10 min)
  • Make sure that
  • CMAP works
  • TopBraidComposer works
  • You can access the SVN repository

6
CMAP
  • tool to create concept maps

54
7
TopBraidComposer (TBC)
  • TBC is a tool to develop Semantic Web ontologies
    and semantic applications in RDF
  • Walk through the help system and Ch 3. of the
    tutorial

54
8
Help in TopBraidComposer
  • Configuring Help
  • Click on Help / Help Contents
  • Click on Search Scope hypertext
  • Click on New
  • Give a name e.g. TopBraid
  • Select TopBraid Composer
  • Click OKs

1
2
4
3
5
9
Subversion (SVN)
54
10
Introduction to Subversion (SVN)
  • an open source version control system
  • allows users to keep track of changes made over
    time to any type of electronic data
  • typical uses are versioning source code, web
    pages or design documents
  • Used in this tutorial to publish ontologies...
    simulating a distributed environment

55
11
Check that SVN is Installed in TBC
  • Window Menu
  • Show View
  • Other

56
12
Should See the SVN Repository Folder
13
If not, install SVN plugin
  • Help Menu
  • Software Updates
  • Find and Install

14
  • Click on new features
  • Check subclipse update site box
  • Click on new remote site

15
  • Type URL of the SVN plugin and follow instructions

16
Create Project from SVN Repository
  • Window Menu
  • Show View
  • Other

17
  • Select SVN Repository

18
  • A view titled SVN Repository should have
    appeared.
  • Right click and select
  • New
  • Repository Location

19
  • Type the following URL https//ont.googlecode.com
    /svn/trunk/ and click on Finish
  • User mmidemo
  • Password j6x4e4b8

20
  • Right click on ont-coastal folder
  • Choose Checkout
  • Accept permanently

21
  • Checkout and create a new project, for example,
    ont-coastal
  • You should have a project with the ontologies
    available

22
SVN Operations
Explore changes
Publish changes
Update the files in your local directory
23
Overview
  • Goals
  • Introduction to Ontologies
  • Ontology Components and Practical Exercise
  • Advanced Ontology Concepts
  • Mappings
  • Restrictions and Description Logic
  • SPARQL and Rules
  • MMI Tools
  • Ontology Engineering
  • Interoperability Demonstration
  • Discussions

2
24
Overview
  • Goals
  • Introduction to Ontologies
  • Ontology Artifacts and Practical Exercise
  • Querying Ontologies with SPARQL
  • Advanced Ontology Concepts
  • SKOS, Thesauri, and VINE
  • Interoperability Demonstration
  • Discussions

2
25
Goals
  • Gain an understanding of controlled vocabularies
    (CVs) and ontologies
  • Hands on experience developing ontologies
  • Learn enough to write proposal to go further
  • Have fun

3
26
Introduction to Ontologies (20 min)Semantic
Interoperability Problems
  • Semantic Interoperability
  • Controlled Vocabularies
  • Ontologies, RDF, OWL etc..

27
Interoperability
28
Diversity
29
Making Connections
30
Confusion
31
What happens if we are not semantically
interoperable ?
  • We cannot find all the data that we are seeking.
  • p. 41 of Workshop 1 report Terminology used to
    describe similar data can vary between
    specialties or regions, which can complicate data
    searches and data integration.
  • We get too many results and they are hard to
    classify.

32
Information Overload
Need Categorizations ...
33
Cant find all the data
34
Semantic Interoperability Problem Cant find all
the data
35
Information Overload
Need Categorizations ...
36
Semantic Interoperability ProblemInformation
Overload
Need Categorizations ...
37
(No Transcript)
38
Agreements on content help solve semantic
interoperability problems.Ontologies could be a
mechanism
39
Ontologies facilitate agreement on
  • controlled vocabularies
  • mappings
  • categories
  • knowledge of a domain

40
Controlled Vocabularies (CVs) What are they?
  • a set of restricted words, used by an information
    community when describing resources or
    discovering data
  • prevents misspellings and avoids the use of
    arbitrary, duplicative, or confusing words that
    cause inconsistencies when cataloging or
    searching data.
  • For example
  • Glossary, dictionary
  • Classifications and categories
  • Relationship categories

15
41
Examples of CVs in Use SeaDataNet -
http//www.seadatanet.org
16
42
Examples of CVs in UseConsortium of
Universities for the Advancement of Hydrologic
Science (CUAHSI) http//www.cuahsi.org
17
43
18
44
Examples of CVs in UseOGC URN Resolver
18
45
SOAP WSDL
19
46
  • It is not always possible to agree
  • on one and only one vocabulary

47
Introduction to Ontologies
  • In computer science -- an explicit and formal
    specification of mental abstractions, that
    conforms to a community agreement about a domain
    and design for a specific purpose (Gruber, 1993).
  • Representation, in a machine-readable language,
    of terms important to a domain of interest (e.g.,
    coastal management). An ontology contains
  • classes (concepts),
  • individuals (members of the classes), and
  • properties (relationships between individuals)

47
48
Ontologiesfacilitate agreement on
  • controlled vocabularies
  • mappings
  • categories
  • knowledge of a domain

49
(No Transcript)
50
Interoperability
51
(No Transcript)
52
Ontologies facilitate agreement on
  • controlled vocabularies
  • mappings
  • categories (is a type of mapping -gt )
  • knowledge of a domain

53
(No Transcript)
54
Categories Example - Oregon Coastal Atlas
  • Example Oregon Atlas

24
55
Ontologies facilitate agreement on
  • controlled vocabularies
  • mappings
  • categories
  • knowledge of a domain

56
Knowledge Domain Representation
27
57
OntologiesGood for Expressing Formally
  • controlled vocabularies
  • mappings
  • categories
  • knowledge of a domain

how ?
  • formal
  • machine friendly

58
FormalRDFResourceDescriptionFramework
59
RDF
60
RDF Simple Graph Model
61
RDF
feature of interest
http//geonames.usgs.gov/ pls/gnispublic/f?23432
2
http//marinemetadata.org/ platformMooredBuoy
platform
observed property
define in
bounded by
http//marinemetadata.org 9600/oostethys/sos
http//marinemetadata.org/cf sea_water_temperatur
e
crs
value
urnogcdefcrsEPSG6.54329
62
URI
Most fundamental web stuff
  • http//somehost/absolute/URI/resource.jpg
  • ftp//somehost/resource.txt
  • urnissn1535-3613
  • mailtoinfobot_at_ex.com?subjectsuscribe
  • SIN//16137224697

63
RDF Serialization
  • RDF/XML
  • Turtle
  • N3
  • N-Triple
  • ...

RDF is graph model that could be stored in
different formats
64
Ontologies .. good for expressing formally
  • controlled vocabularies
  • mappings
  • categories
  • knowledge of a domain

how ?
  • formal
  • machine friendly

how ?
  • RDF
  • Web Resources

65
Ontology Web Language IOWL) (OWL)
  • RDF/XML is the syntax
  • is a representation language for ontologies
  • extends RDFS by allowing representation of more
    complex relationships and more precise
    constraints on classes and properties
  • uses URIs
  • is the lingua franca of the Semantic Web

66
BREAK !
  • Next SeaDataNet use case (Roy Lowry)

37
67
SeaDataNet Ontology Use Case
Coastal Atlas Interoperability Workshop,
Corvallis, July 17-19 2007
( Lessons Learned)
  • Roy Lowry
  • British Oceanographic Data Centre

68
Summary
  • What is SeaDataNet?
  • Some SeaDataNet semantic issues
  • What has SeaDataNet done?
  • What is SeaDataNet going to do?
  • Is SeaDataNet relevant to CAI?

69
What is SeaDataNet?
  • SeaDataNet in a Nutshell
  • Combine over 40 oceanographic data centres across
    Europe into a single interoperable data system
  • Approach is to adopt established standards and
    technologies wherever possible
  • Two phases
  • One brings 12 centres together with centralised
    metadata and distributed data as files. Due fully
    operational in autumn 2008 (beta next February)
  • Two introduces data virtualisation, aggregation,
    cutting and 30 more centres. Due in 2010
  • Project is well on its way up the
    interoperability operational implementation curve

70
SeaDataNet Semantic Issues
  • The major problem facing the project is
    heterogeneous legacy content
  • SeaDataNet inherited 3 independently-developed
    metadatabases
  • Each is heavily populated (3000-30000 records)
  • Each had its own independently developed
    controlled vocabularies
  • These vocabularies
  • Covered overlapping domains
  • Said similar things in different ways
  • Provided a shining example of how NOT to manage
    vocabularies

71
Brief Diversion
  • Vocabularies can have two types of governance
  • Content governance
  • Mechanism for making decisions on vocabulary
    population
  • Expected deliverables include
  • Vocabulary standards and internal consistency
  • Change on a timescale matching the needs of the
    user community
  • Terms with definitions!!!
  • Technical governance
  • Vocabulary storage, maintenance and serving
  • Expected deliverables include
  • Convenient access to up to date vocabularies
  • Clear, rigorous vocabulary versioning
  • Version history through audit trails
  • Maintenance that doesnt break user systems

72
SeaDataNet Semantic Issues
  • Vocabulary content governance
  • Done by individuals who were often inadequately
    qualified to do the job
  • Metadata entry form with an Add to Vocabulary
    button used by students
  • Vocabulary technical governance
  • Scattered files on servers or inaccessible
    database tables
  • Multiple data models (e.g. some with
    abbreviations, some without)
  • No versioning
  • Vocabularies updated by destructive overwrites
  • Harmonisation required for related vocabularies
  • Within centralised metadata
  • Between partner local systems and centralised
    metadata

73
What has SeaDataNet Done?
  • Established content governance
  • Within SeaDataNet (TTT e-mail list)
  • Further afield (SeaVoX e-mail list)
  • Established technical governance
  • Adopted the NERC DataGrid Vocabulary Server
  • Heavily defended Oracle back end
  • Automated version and audit trail management
  • Web Service API front end plus clients e.g.
    http//vocab.ndg.nerc.ac.uk/client/vocabServer.jsp
  • Currently serving out 75 lists
  • Established a Mapping Infrastructure
  • List entries connected by SKOS RDF triples
  • Operational mappings between parameter
    vocabularies (GCMD science keywords, CF Standard
    Names)

74
What is SeaDataNet Going To Do?
  • Harmonise centralised metadata vocabularies or
    map if too hard
  • Map centralised vocabularies to partner system
    vocabularies
  • Build metadata crosswalks and generators (e.g.
    from CF) that include semantics (Use case 1)
  • Implement Smart Discovery for legacy plaintext.
    E,g. search for pigment, find chlorophyll (Use
    case 2)
  • Establish URLs to represent vocabularies and
    individual entries delivering XML probably SKOS
    documents
  • Extend mapping efforts to other areas such as
    devices
  • Release a much improved Vocabulary Server API
    (mid-August)

75
Is SeaDataNet Relevant to CAI?
  • This workshop is about building a coastal atlas
    ontology that brings together semantic resources
    that say similar things in different ways
  • The vocabulary entry semantic content may be
    different from oceanographic parameters, but the
    problem is essentially the same
  • If it works for SeaDataNet it will probably work
    for the CAI community
  • More important if it didnt work for SeaDataNet
    then it probably wont work for CAI

76
Is SeaDataNet Relevant to CAI?
  • What has worked for SeaDataNet
  • The NERC DataGrid Vocabulary Server
  • Content governance through a MODERATED e-mail
    list (also works pretty well for CF Standard
    Names)
  • Representing vocabulary terms by URNs in metadata
    documents
  • What I believe will work in the next 12 months
  • Semantic interoperability through mappings
  • The conceptual framework of RDF in general and
    SKOS in particular
  • 21st Century tooling

77
Is SeaDataNet Relevant to CAI?
  • What hasnt worked for SeaDataNet
  • Weak content governance
  • Examples
  • Terms without definitions
  • Vocabularies without strict entity definitions
    populated by mixed entities e.g.
  • helicopter class
  • RRS Discovery instance
  • Vocabularies without managed deprecation
  • Poor technical governance
  • Example
  • A vocabulary served by
  • Dynamic web page from database
  • Static HTML page
  • ASCII file as e-mail attachment
  • Each having a different number of entries.

78
Thats All Folks!
  • Thank you for your attention
  • Any questions?
  • Morals
  • Always provide definitions for your terms
  • If you are going to use vocabularies to build an
    ontology make sure that they are properly governed

79
Welcome back
  • Recap
  • Define an ontology
  • Play with concepts
  • Details on components of ontologies

79
80
Ontologies .. good for expressing formally
  • controlled vocabularies
  • mappings
  • categories
  • knowledge of a domain

how ?
  • formal
  • machine friendly

how ?
  • RDF
  • Web Resources

81
Ontologies basic definition
formal mechanism for
  • capturing the knowledge of a domain, including
    simple controlled vocabularies
  • expressing hierarchies of concepts
  • interrelating vocabularies via formal mappings

82
Components of an Ontology
  • Classes
  • Individuals
  • Properties
  • But first... what is a concept ?

83
What is a Concept ?Graph of Concepts
Explicit representation of realities
Body of Water
LAKE
Feature
hasShape
84
Concept Maps
85
Warming upGraph of Concepts
38
86
Concept Maps (10 min)
  • Open CMAP tools
  • Create a concept map about what you would expect
    to find on a Recreational Atlas Web site

87
Concept Maps (5 min)
  • In the middle of the exercise - ask about the
    treatment of nouns and verbs

88
Classes
  • Classes define concepts in a domain
  • Nouns, boxes in previous exercise
  • Classes are organized in hierarchies
  • Example Habitat is super class of Wetland
  • Classes are sets that contain individuals

42
89
Individuals
  • Individuals represent real objects in the domain
    in which we are interested.
  • They are the members of a class.

Wetland
42
Elkhorn Slough NERR
Malheur National Wildlife Refuge
48
90
Ontology Example
GeographicFeature
Class
City
Wetland
Individual
Object Property
isLocatedIn
hasName Elkhorn Slough
hasName Monterey Area_in_skm xxx
Datatype Property
91
Classes - subclasses
Geographic Feature
City
Wetland
92
Individuals
GeographicFeature
Class
City
Wetland
Individual
93
Properties
  • Properties are relationships (loosely, verbs)
    between two individuals.
  • lines in previous exercise
  • 2 types
  • Object Properties link an individual to an
    individual
  • Datatype properties link an individual to a
    Literal (String, integer, etc..). Defined as XML
    Schema datatypes.

45
94
Object Properties
GeographicFeature
Class
City
Wetland
Individual
Object Property
isLocatedIn
Domain of isLocatedIn
Range of isLocatedIn
95
Domain and Range
City
Wetland
isLocatedIn
Class Wetland is Domain of isLocatedIn
Class City is Range of isLocatedIn
Object Properties have classes as domains Object
Properties have classes as ranges ... connect
objects, which are instances of a class
96
Datatype Properties
GeographicFeature
Class
City
Wetland
Individual
Object Property
isLocatedIn
hasName Elkhorn Slough
hasName Monterey Area_in_skm 70
Domain is a class
Range is a simple type String, float, etc...
Datatype Property
97
Ontology Example
GeographicFeature
Class
City
Wetland
Individual
Object Property
isLocatedIn
hasName Elkhorn Slough
hasName Monterey Area_in_skm 70
Datatype Property
98
Viewing a Simple Ontology
  • View an example ontology containing the Elkhorn
    Slough National Estuarine Research Reserve and
    the Malheur National Wildlife Refuge

69
99
Open Ontology and Explore Classes
  • View Classes tab
  • Note icons on upper right
  • create subclass
  • create sibling class
  • delete class
  • menu triangle with different options including
    viewing the hierarchy as starting with class
    thing. This latter menu option is important,
    since this is not the default of TopBraid, but is
    a very useful way to view a class hierarchy.

100
100
101
Explore Classes
  • Double click on class Wetland (subclass of
    GeographicFeature) in wetlands.owl
  • view class form, note annotations and axioms can
    drag and drop annotation properties onto the form
  • can create subclasses by clicking on the name of
    the (super) class in the view class diagram
  • see other classes and their relationships to
    (properties) this class
  • view class diagram
  • view instances tab, see list of instances of this
    class
  • view import tab (this is where the namespaces of
    imported ontologies would appear)
  • view domain tab
  • view SPARQL tab Queries on your class(es)

102
Create Your Own Classes
103
Explore Individuals
  • View instances tab
  • Note the icons in the upper right. You can create
    (choosing the class to which it will belong,
    first) or delete an instance, or use the instance
    menu to accomplish such tasks as exporting the
    instances to a spreadsheet.
  • Double click on the instance ElkhornSloughNERR
  • View the resource form (just above the instances
    tab).
  • Note the name of the instance annotations,
    properties (especially note that the property
    list for the instance will include any properties
    identified for the class of which that instance
    is a member)

104
Create Individuals
105
Properties
  • Properties are relationships (loosely, verbs)
    between two individuals.
  • lines in previous exercise
  • 2 types
  • Object Properties link an individual to an
    individual
  • Datatype properties link an individual to a
    Literal (String, integer, etc..). Defined as XML
    Schema datatypes.

45
106
Explore Properties
  • Double click on the property hasActivity
  • View properties tab (on right)
  • Note icons for creating property, deleting
    property, menu triangle for creating specific
    types of properties (object, data type and
    annotation properties).
  • View properties form
  • Note that each property has a name, may have
    annotations, and may have axioms (e.g., domain,
    range)
  • think of domain as the class that has this
    property (e.g., Wetland) and range as the valid
    value for the property (e.g., Activity)
  • Note that each property can also be a(n)
  • Subproperty of (properties can be hierarchical)
  • Inverse of
  • at the bottom, you should also see what type of
    property it is (object, datatype)

107
Explore Properties
  • View properties form (continued)
  • Note menus on top right on the property form,
    that can
  • add widget for property
  • show widgets for all properties with matching
    domains,
  • arrange widgets in 2 columns
  • also, an inverted triangle menu with lots of
    options
  • E.g., will find the property name on Google,
    Wikipedia
  • E.g., will find all the usages of the property in
    your workspace, etc.)

108
Create Properties
109
Exercise
  • (it should be 200 PM by now)

70
110
Hands on exercise TBC
69
111
Exploring TBC (140 - 230)
  • Follow the guide TBC Getting-Started-Guide
  • Lets all create a simple ontology ... follow the
    screen instructions

112
Atlas Interoperability Exercise
  • For any interoperability endeavor the first thing
    that should happen is getting the requirements
    right !

Use Cases
113
Atlas Interoperability
114
Use Case and Proposed User Interface
The topics found are the ones that will be
explicitly created as well as inferred ones
based on logic.
115
Atlas OntWeb
116
Note...
  • Q Where is the data coming from ?
  • A Distributed sources, which are simulated by
    each ontology you are creating.
  • Very different from traditional databases.

117
Process
  1. Create person-topic ontology (- 330)
  2. Break (330 - 345)
  3. Map with Upper Level person-topic ontology (-
    430)
  4. Publish to SVN
  5. View web application - use case 1 completed !
  6. Discussion (-500)
  7. Map topics with Atlas Topics
  8. Publish mappings

118
Create a simple ontology that captures topics of
interest of persons
  • Use concepts from the CMAP exercise, if possible
  • Create at least
  • 3 Classes (on any level)
  • 1 Object Property - define domain and range
  • 2 Datatypes Properties - define domain and range
  • 2 Individuals for class Person, and 4 for each of
    the other classes you create
  • Add properties and values to individuals. e.g.
    luis hasInterest YOGA
  • For example, include as topics recreational
    concepts that you would expect to find on an
    atlas
  • Have fun
  • If problems occur, use help system or TBC
    tutorial. If more problems occur, raise your hand

75
119
Make your person-topic ontology (XYZ)
interoperable with the FOAF ontology
75
120
Interoperability
121
We will make your person-topic ontology (XYZ)
interoperable with the FOAF ontology
your ontology
aX.owl
75
122
Experts are now Atlases
  • Which two groups created more topics than anybody
    else ?
  • They will become atlases. They will map their
    classes and properties to a a super atlas
    ontology.
  • Change the class name person to atlas to
    avoid confusion.
  • Import superatlas.owl (an upper atlas ontology)
  • Make your classes subclasses of Atlas, and
    Feature. Make one of your properties a subclass
    of hasFeature.
  • Follow similar instructions as the other groups
    to make your ontology aligned with superatlas.owl.

123
Map with Person Upper Level Ontology (foaf.owl)
  • Import upper person ontology foaf.owl

75
124
Map with person upper ontology
Make your classes as subclasses of a FOAF class.
For example if you have a class Person, make it
subclass of foafPerson
75
125
Make one of your properties sub-properties of
foaftopic_of_interest
75
126
Commit to SVN
75
127
Check the web - is your filename there ? URL
is http//marinemedata.org9600/fs
75
128
Discussion
  • Did you need to do any changes to your ontology ?
  • We are presenting values of instances in the web
    interface, but this is not always the case.

75
129
Discussion
  • You are a FOAF person because you created a
    statement that said that
  • You foaftopic_of_interest Topic
  • AND
  • foaftopic_of_interest has domain foafperson
  • Test it !
  • Make your person class not
  • a subclass of foafPerson
  • Run the inference
  • engine

75
130
End Day 1
  • Person (local name) with HasName property
    easier with semantically neutral key
  • American vs. British English? HasLabel,
    HasLabel, HasLabel, or UKName, USName
  • Reminder RDF Property is highest level, then OWL
    added new restrictions (ObjectProperty for
    individual-to-individual and DataProperty for
    linking integers, strings to individuals)
  • We need to create an upper ontology
  • Extract all your semantics into an ontology,
    build an upper ontology

76
131
Examples of CVs in UseConsortium of
Universities for the Advancement of Hydrologic
Science (CUAHSI) http//www.cuahsi.org
17
132
Day 2
133
Wednesday Advanced Fun
77
134
Recap from Yesterday
  • We had an introduction to ontologies
  • We had a hands on experience on linking topics
    of interest ontologies to an upper level
    ontology.

135
Overview
  • Goals
  • Introduction to Ontologies
  • Ontology Components and Practical Exercise
  • Advanced Ontology Concepts
  • Mappings
  • Restrictions and Description Logic
  • SPARQL and Rules
  • MMI Tools
  • Ontology Engineering
  • Interoperability Demonstration
  • Discussions

2
136
Mapping ala SKOS
An RDF vocabulary for describing the basic
structure and content of concept schemes such as
thesauri, classification schemes, subject heading
lists, taxonomies, 'folksonomies', other types of
controlled vocabulary, and also concept schemes
embedded in glossaries and terminologies
137
SKOS
  • provides a standardized way of representing KOS,
    such as thesauri, classification schemes, and
    taxonomies
  • uses RDF
  • RDF vocabularies
  • SKOS Core (for describing KOS)
  • SKOS Mapping (for mapping between concepts -
    broad, narrow, exact match)
  • SKOS Extensions

137
138
Mapping ala SKOS
  • import skos.owl
  • it defines 3 convenient properties to relate
    instances

139
Import the 2 atlas ontologiesthat were created
by the 2 groups
140
(No Transcript)
141
  • Make relations between your aX.owl file and one
    of the atlas files
  • select one of your favorite topics in your aX.owl
    file and create an skosrelation (broad, narrow,
    exact match) to a topic from one of the atlases.
  • Need to add the skosproperty in the Resource Form

142
(No Transcript)
143
Adding SKOS Property(ies) in Resource Form
Drag and drop
144
  • Commit to SVN - check the web site to make sure
    your file is there
  • Meanwhile, atlas experts - make SKOS type
    mappings among the terms in your atlases

145
Categorization by propertiesor the world of
restrictionsor defining classes using
Description Logics (DL)
146
Story...
  • Facts
  • We are in 2010...
  • SuperAtlas is a super ontology for atlas
    features. It was signed in 2009 in Monterey by
    103 web atlas representatives.
  • Each group is now an atlas and will have 4
    SuperAtlas Features available in the next 20
    minutes.

147
Steps
  • We will define categories as allowed in OWL-DL.
  • The definitions of the categories are based on
    the SuperAtlas Ontology, which is the common
    vocabulary.
  • We will run the inferencer, which will
    automatically categorize your instances.

148
SuperAtlas Ontology
149
Process
  • Import SuperAtlas Ontology
  • Create a class PersonRecreationalFeature which
    is a sub (or sub-sub) class of yourPersonConcept
  • make it subclass of superatlasRecreationalFeature

150
Create features (e.g. places that could appear
in an atlas)
151
Add Facts about Those Features
  • Relative location
  • add values to isPartOf
  • add an existing region
  • Activities that can occur
  • add an Activity
  • create/add new instance

152
  • You should have 4 instances similar to these

153
  • Defining Classes using Description Logics

154
Defining a Class in OWL DL
  • Example Define EuropeanRegion
  • All regions that are part of Europe.
  • More formally

155
Equivalent Restrictions
European Region
run inference
Classifies UnitedKingdom
If it is known that an individual is a European
Region, it can be inferred that it isPartOf
Europe and its also a Region AND also the
converse-- If it is known that an individual
isPartOf Europe and it is also a Region, then it
can be inferred that it is a European Region
156
Subclass Restrictions
European Town
run inference
Classifies EuropeanTown
If it is known that an individual is a European
Town, it can be inferred that isPartOf a European
Region and its also a Region However, the
converse can not be inferred if it is known that
an individual isPartOf a European Region and it
is a Region that it is, in fact, a European Town
157
Restriction Keywords
158
Restriction Keywords (cont.)
159
Complex Expressions
Example Person and hasChild some (Person and
(hasChild all Man) and (hasChild some Person))
describes the set of people who have at least
one child that has some children that are only
men (i.e., grandparents that only have
grandsons). Note that brackets should be used
to clarify the meaning of the expression.
160
Restrictions Exercise
Create a WebCategory class with these
subclasses - AmericanRegion -
SwimmingPlacesInAmerica .....
161
BREAK 1030-1045
78
162
SPARQL AND RULES
78
163
SPARQL
  • Query language for RDF (similar to SQL)
  • Think - triple triple triple
  • How many triple matches the pattern
  • x rdfstype y
  • superAtlasSwimming x y
  • superAtlasSwimming rdftype x

78
164
SPARQL Examples
  • PREFIX table lthttp//www.daml.org/2003/01/periodi
    ctable/PeriodicTablegt
  • SELECT ?name ?symbol ?number ?color
  • FROM lthttp//www.daml.org/2003/01/periodictable/Pe
    riodicTable.owlgt
  • WHERE
  • ?element tablename ?name.
  • ?element tablesymbol ?symbol.
  • ?element tableatomicNumber ?number.
  • OPTIONAL ?element tablecolor ?color.

79
165
Examples
  • Find all the subclasses of superatlasFeature

SELECT ?subject WHERE ?subject rdfssubClassOf
superatlasFeature
  • Find all the features that have an activity of
    type Sports

SELECT ?feature WHERE ?feature rdftype
superatlasFeature. ?feature
superatlashasActivity ?activity. ?activity
rdftype superatlasSports.
166
Create your own queries
  • ...

167
Using Rules
  • OWL is limited in expressiveness.
  • cant combine properties (e.g., uncle is a
    composition of brother and parent)
  • cant use computed values or arithmetic
    comparisons (e.g., stating that a teenager is a
    person with age between 13 and 19)
  • Semantic Web Rule Language (SWRL)
  • combines OWL and RuleML
  • proposed to standardize the expression of rules
    in OWL
  • Open ontology and view rules

168
Rules
  • Rule is simple If A then B or A -gt B
  • Semantic Web Rule Language (SWRL)
  • swrlbody -gt swrlhead
  • or
  • using JENA rules - very similar syntax

169
Create Rules
  • ensure your ontology imports these namespaces
  • http//www.daml.org/rules/proposal/swrlb.owl
  • http//www.daml.org/rules/proposal/swrl.owl
  • SWRL rules are instances of swrlImp and can be
    created by
  • Select swrlImp, edit body and head. e.g., to
    formalize the rule that says...
  • (?a hasChild ?c) for swrlbody
  • Parent (?a) for swrl head

170
Rules Exercise
  • Import jena.owl

171
Configure Inferencing
1
2
3
5
4
6
172
Example
  • Create a rule to infer all american sports
  • Create a class under WebCategories and add a
    jenaRule property (drag it)
  • e.g. AmericanSports

173
MMI Tools
  • VOC2OWL
  • to convert CVs into a common language, OWL
  • VINE
  • to map between CVs/ontologies represented in OWL
  • SEMOR
  • matches your search term to terms from other
    controlled vocabularies to find data and
    information

174
Ontology Engineering
175
Ontology Engineering
176
(No Transcript)
177
Engineering Lifecycle
From help system TobBraid Composer tutorial
178
What we did ....
  • Controlled Vocabularies
  • your topics
  • web portal controlled vocabulary
  • Mappings
  • among your topics and the FOAF one
  • among atlas and upper atlas ontology
  • Categories
  • Infer hierarchies
  • Knowledge of a Domain
  • Formal definition of classes
  • Rules expression
  • MMI Tools
  • Ontology Engineering

All web distributed All machine friendly
179
Slides acknowledgments
  • Robert Laurini INSA Lyon
  • http//lisi.insa-lyon.fr/laurini
  • TopBraid tutorial
Write a Comment
User Comments (0)
About PowerShow.com