Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
بسمه تعالی
Semantic Web
Morteza Amini
Ontology and OWL
Sharif University of Technology Spring 90-91
Outline
Introduction & Definitions
Ontology Languages
OWL (Ontology Web Language)
Sharif Univ. of Tech. RDF and RDF Schema - Morteza Amini 2
Outline
Introduction & Definitions
Ontology Languages
OWL (Ontology Web Language)
Sharif Univ. of Tech. RDF and RDF Schema - Morteza Amini 3
Where does it come from?
ontology n.
1692; lat. phil. onto- “being” + -logia “study of”
Philosophy
The study of what is, what has to be true for something to
exist, the kinds of things that can exist.
AI and computer science
Something exists if it can be represented, described, defined (in
a formal, hence, machine-interpretable way).
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 4
Ontologies
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 5
Ontologies (contd.)
Ontologies are about vocabularies and their meanings, with explicit, expressive, and well-defined semantics, possibly machine-interpretable.
“Ontology is a formal specification of a conceptualization.” Gruber, 1993
Main elements of an ontology:
Concepts
Relationships
Hierarchical
Logical
Properties
Instances (individuals)
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 6
A Definition
Informal
Terms
from a specific domain
uniquely defined, usually via natural language definitions
May contain additional semantics in the form of informal
relations.
Machine-processing is difficult.
Examples
Controlled vocabulary
Glossary
Thesaurus
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 7
A Definition
Formal
Domain-specific vocabulary.
Well-defined semantic structure
Classes/concepts/types
E.g., a class { Publication } represents all publications
E.g., a class { Publication } can have subclasses { Newspaper }, { Journal }
Instances/individuals/objects
E.g., the newspaper Le Monde is an instance of the class { Newspaper }
Properties/roles/slots
Data
E.g., the class { Publication } and its subclasses { Newspaper }, { Journal } have a data property { numberOfPages }
Object
E.g., the class { Publication } and its subclasses { Newspaper }, { Journal } have an object property { publishes }
Is machine-processable.
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 8
Ontologies in the Semantic Web
Provide shared data structures to exchange information between agents.
Can be explicitly used as annotations in web sites.
Can be used for knowledge-based services using other web resources.
Can help to structure knowledge to build domain models (for other purposes).
They are means of representing the semantics of documents and enabling the semantics to be used by web applications and intelligent agents.
Ontologies are critical for applications that want to search across or merge information from diverse communities.
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 9
Ontolgoies in the SW
Although XML DTDs and XML Schemas are sufficient for exchanging data between parties who have agreed to definitions beforehand, their lack of semantics prevent machines from reliably performing this task given new XML vocabularies.
RDF and RDF Schema begin to approach this problem by allowing simple semantics to be associated with identifiers. With RDF Schema, one can define classes that may have multiple subclasses and super classes, and can define properties, which may have sub properties, domains, and ranges.
In this sense, RDF Schema is a simple ontology language. However, in order to achieve interoperation between numerous, autonomously developed and managed schemas, richer semantics are needed.
For example, RDF Schema cannot specify that the Person and Car classes are disjoint, or that a string quartet has exactly four musicians as members.
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 10
Meaning is in Connections
W i
e
a
s
m
a
d
e
f
o
o
m
P
r
a
p
d
Paper
is made from
Wood
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 11
r
o
For Machines...
The meaning of the document is not defined.
Machines cannot understand it.
We are defining the structure of document by XML, but now the
meaning of the structure is not defined.
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 12
Wine is made from Grape
<Sentence>
<Subject>
Wine </Subject>
<Verb>
is made from </Verb>
<Object>
Grape
</Object>
</Sentence>
XM
L d
ocu
men
t
<Sentence>
<Subject>
Wine
</Subject>
<Verb>
is made from
</Verb>
<Object>
Grape
</Object>
</Sentence>
<Sentence>
<Subject>
</Subject>
<Verb>
</Verb>
<Object>
</Object>
</Sentence>
Wine
is made from
Grape
Ontology Gives the Meaning...
Document
Ontology
Natural Language
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 13
Why Develop Ontologies?
To share common understanding of the structure of
information among people or agents and share knowledge
E.g., using an ontology for integrating terminologies
To reuse domain knowledge
E.g., geography ontology
To make domain assumptions explicit
Facilitate knowledge management, easier to validate, to change, …
Enable new users to learn about the domain
….
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 14
What They Are Good for?
Search
Concept-based query
User uses own words, language
Related terms
Intelligent query expansion: “fishing vessels in China” expands to “fishing vessels in Asia”
Consistency checking
e.g., “Goods” has a property called “price” that has a value restriction of number
Interoperability support
Terms defined in expressive ontologies allow for mapping precisely how one term relates to another
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 15
Outline
Introduction & Definitions
Ontology Languages
OWL (Ontology Web Language)
Sharif Univ. of Tech. RDF and RDF Schema - Morteza Amini 16
Ontology Languages
Graphical notations
Semantic networks
Topic maps
UML
RDF
Logic based
Description Logics (e.g., OIL, DAML+OIL, OWL)
Rules (e.g., RuleML, LP/Prolog, SWRL)
First Order Logic
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 17
Ontology Languages
RDF(S) (Resource Description Framework (Schema))
OIL (Ontology Interchange Language)
DAML+OIL (DARPA Agent Markup Language + OIL)
OWL (Ontology Web Language)
XOL (XML-based Ontology Exchange Language)
SHOE (Simple HTML Ontology Extension)
OML (Ontology Markup Language)
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 18
Object Oriented Model
Many languages use object oriented model:
Objects/Instances/Individuals
Elements of the domain of discourse
Equivalent to constants in FOL
Types/Classes/Concepts
Sets of objects sharing certain characteristics
Equivalent to unary predicates in FOL and Concepts in DL
Relations/Properties/Roles
Sets of pairs (tuples) of objects
Equivalent to binary predicates in FOL and Roles in DL
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 19
Outline
Introduction & Definitions
Ontology Languages
OWL (Ontology Web Language)
Sharif Univ. of Tech. RDF and RDF Schema - Morteza Amini 20
OWL (Ontology Web Language)
OWL is now a W3C Recommendation.
The purpose of OWL is identical to RDFS i.e. to provide
an XML vocabulary to define classes, properties and their
relationships.
RDFS enables us to express very rudimentary relationships and
has limited inferencing capability.
OWL enables us to express much richer relationships, thus
yielding a much enhanced inferencing capability.
The benefit of OWL is that it facilitates a much greater
degree of inference than you get with RDF Schema.
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 21
Origins of OWL
RDF (S)
DAML+OIL
DARPA
Agent Markup
Language
A W3C
Recommendation
OIL
OWL
All
influenced
by RDF
Ontology
Inference
Layer
EU/NSF Joint Ad hoc
Committee
DAML
OWL Lite OWL DL OWL Full
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 22
OWL
OWL and RDF Schema enable rich machine-processable
semantics.
XML/DTD/XML Schemas
RDF Schema
OWL
Semantics
Syntax
<rdfs:Class rdf:ID="River">
<rdfs:subClassOf rdf:resource="#Stream"/>
</rdfs:Class>
<owl:Class rdf:ID="River">
<rdfs:subClassOf rdf:resource="#Stream"/>
</owl:Class>
RDFS
OWL
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 23
Why Build on RDF
Provides basic ontological primitives
Classes and relations (properties)
Class (and property) hierarchy
Can exploit existing RDF infrastructure
Provides mechanism for using ontologies
RDF triples assert facts about resources
Use vocabulary from DAML+OIL ontologies
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 24
OWL Design Goals
Shared ontologies
Ontology interoperability
Inconsistency detection
Expressivity vs. scalability
Ease of use
Compatibility with other standards
Internationalization
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 25
Versions of OWL
Depending on the intended usage, OWL provides three
increasingly expressive sublanguages.
Full
Very expressive, no computation guarantees.
DL (Description Logic)
Maximum expressiveness, computationally
complete.
Lite
Simple classification hierarchy with simple
constraints.
OWL Full
OWL DL
OWL Lite
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 26
Comparison of Versions
OWL Lite supports those users primarily needing a classification hierarchy and simple constraints. E.g., while it supports cardinality constraints, it only permits cardinality values of 0 or 1
OWL DL supports those users who want the maximum expressiveness while retaining decidability. OWL DL includes all OWL language constructs, but they can be used only under certain restrictions. E.g., while a class may be a subclass of many classes, a class cannot be an instance of another class). OWL DL is so named due to its correspondence with description logics.
OWL Full is meant for users who want maximum expressiveness and the syntactic freedom of RDF with no computational guarantees. For example, in OWL Full a class can be treated simultaneously as a collection of individuals and as an individual in its own right.
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 27
Describing Classes in OWL
OWL vs. RDFS
OWL allows greater expressiveness
Abstraction mechanism to group resources with similar
characteristics
Much more powerful in describing constraints on relations
between classes
Property transitivity, equivalence, symmetry, etc.
…
Extensive support for reasoning
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 28
OWL Ontologies
What’s inside an OWL ontology
Classes + class-hierarchy
Properties (Slots) / values
Relations between classes
(inheritance, disjoints, equivalents)
Restrictions on properties (type, cardinality)
Characteristics of properties (transitive, …)
Annotations
Individuals
Reasoning tasks: classification, consistency checking
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 29
Classes
What is a Class?
e.g., person, pet, old
a collection of individuals (object, things, . . . )
a way of describing part of the world
an object in the world (OWL Full)
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 30
owl:Class
Sub class of Class in RDF
Better to forget about classes of classes
Top-most class: owl:Thing
<owl:Class rdf:ID=“Person"/>
<owl:Class rdf:ID=“Man">
<rdfs:subClassOf rdf:resource="#Person" />
</owl:Class>
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 31
Individuals
Two equivalent declarations:
<Person rdf:ID=“ahmadi" />
<owl:Thing rdf:ID=“ahmadi" />
<owl:Thing rdf:about="#ahmadi">
<rdf:type rdf:resource="#Person"/>
</owl:Thing>
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 32
Properties
What is a Property?
e.g., has_father, has_pet, service_number
a collection of relationships between individuals (and data)
a way of describing a kind of relationship between individuals
an object in the world (OWL Full)
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 33
OWL Properties
Object
Properties
Ana owns Cuba
Is range a
literal / typed value ?
then ERROR
Data type
Properties
Ana age 25
XML Schema data types
supported
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 34
Defining Properties
owl:ObjectProperty
owl:DatatypeProperty
rdfs:subPropertyOf
rdfs:domain
rdfs:range
<owl:ObjectProperty rdf:ID="madeFrom"> <rdfs:domain rdf:resource="#Book"/> <rdfs:range rdf:resource="#Paper"/> </owl:ObjectProperty>
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 35
Describing Classes in OWL
Complex Classes
Union of classes (owl:unionOf) OR (A B)
Union of classes (owl:intersectionOf) AND (A B)
Complement (owl:complementOf) NOT (A)
Enumeration (owl:oneOf)
Disjoint Classes (owl:disjointWith)
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 36
Describing Classes in OWL
Property Restrictions
Defining a Class by restricting its possible instances via their
property values
OWL distinguishes between the following two:
Value constraint
Cardinality constraint
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 37
Describing Classes in OWL
Restrictions on Property Classes
Properties:
allValuesFrom: rdfs:Class (lite/DL owl:Class)
hasValue: specific Individual
someValuesFrom: rdfs:Class (lite/DL owl:Class)
minCardinality: xsd:nonNegativeInteger (in lite {0,1})
maxCardinality: xsd:nonNegativeInteger (in lite {0,1})
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 38
What’s in OWL, but not in RDF
Ability to be distributed across many systems
Scalable to Web needs
Compatible with Web standards for:
accessibility, and
Internationalization
Open and extensible
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 39
Describing Properties in OWL
OWL vs. RDFS
RDF Schema provides some of predefined properties: rdfs:range used to indicate the range of values for a property.
rdfs:domain used to associate a property with a class.
rdfs:subPropertyOf used to specialize a property.
…
OWL provides additional predefined properties: owl:cardinality (indicate cardinality)
owl:hasValue (at least one of the specified property values)
…
OWL provides additional property classes, which allow reasoning and inferencing: owl:FunctionalProperty
owl:TransitiveProperty
…
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 40
Describing Properties in OWL
OWL Property Classes
An ObjectProperty relates one Resource to another
Resource.
A DatatypeProperty relates one Resource to a Literal - an
XML Schema data type.
rdf:Property
owl:ObjectProperty owl:DatatypeProperty owl:FunctionalProperty owl:InverseFunctionalProperty
owl:SymmetricProperty owl:TransitiveProperty
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 41
Transitivity of properties
X p1 Y
Y p1 Z
implies X p1 Z
Transitivity existed already in RDF
“subClassOf”, and ???
e.g. located_in, part_of
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 42
Symmetric properties
X p1 Y
implies X p1 Y
e.g., =
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 43
Functional Properties
X p1 Y
X p1 Z
imply Z is the same as Y
(they describe the same)
What if Y, Z
where explicitly defined as “different” ?
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 44
Inverse Functional Properties
Y p1 A
Z p1 A
imply Z is the same as Y
(they describe the same)
What if Y, Z
where explicitly defined as “different” ?
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 45
OWL distributed
“equivalent class”
“equivalent Property”
Guitar
Guitarra
Internationalization standards ?
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 46
Complex Classes
Male
Students
Married Female Professors
Married Female Students
Divorced
Female
Human
Student
Married
Professor
Minority Students example
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 47
Disjoint Classes
Married disjoint with:
Divorced
Widowed
Single
Are “Divorced” and “Single” disjoint ?
Married
Widowed Divorced Single
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 48
OWL Cardinality
min Cardinality
max Cardinality
“Cardinality”
When min = max
has Value
belongs to the class if it has the value
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 49
An Example OWL Ontology
<owl:Class rdf:ID=“Person” />
<owl:Class rdf:ID=“Man”> <rdfs:subClassOf rdf:resource=“#Person” />
<owl:disjointWith rdf:resource=“#Woman” />
</owl:Class>
<owl:Class rdf:ID=“Woman”>
<rdfs:subClassOf rdf:resource=“#Person” />
<owl:disjointWith rdf:resource=“#Man” />
</owl:Class>
<owl:Class rdf:ID=“Father”>
<rdfs:subClassOf rdf:resource=“Man” />
<owl:Restriction owl:minCardinality="1">
<owl:onProperty rdf:resource="#hasChild" />
</owl:Restriction>
</owl:Class>
<owl:ObjectProperty rdf:ID=“hasChild">
<rdfs:domain rdf:resource="#Parent" />
<rdfs:range rdf:resource="#Person" />
</owl:ObjectProperty>
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 50
Use Cases – Web Portals (1)
A web portal is a web site that provides information content on a common topic, for example a specific city or domain of interest.
A web portal allows individuals that are interested in the topic to receive news, find and talk to one another, build a community, and find links to other web resources of common interest.
In order for a portal to be successful, it must be a starting place for locating interesting content.
Typically this content is submitted by members of the community, who often index it under some subtopic.
Another means of collecting content relies on the content providers tagging the content with information that can be used in syndicating it. Typically, this takes the form of simple metatags that identify the topic of the content, etc.
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 51
Use Cases – Web Portals (2)
However, a simple index of subject areas may not provide the community with sufficient ability to search for the content that its members require.
In order to allow more intelligent syndication, web portals can define an ontology for the community. This ontology can provide a terminology for describing content and axioms that define terms using other terms from the ontology.
For example, an ontology might include terminology such as "journal paper," "publication," "person," and "author.“
This ontology could include definitions that state things such as "all journal papers are publications" or "the authors of all publications are people."
When combined with facts, these definitions allow other facts that are necessarily true to be inferred. These inferences can, in turn, allow users to obtain search results from the portal that are impossible to obtain from conventional retrieval systems.
Examples of Semantic Web Portals are OntoWeb and The Open Directory Portal.
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 52
Use Cases – Multimedia Collections (1)
Ontologies can be used to provide semantic annotations for
collections of images, audio, or other non-textual objects.
these types of resources are typically indexed by captions or
metatags. However, since different people can describe these
non-textual objects in different ways, it is important that the
search facilities go beyond simple keyword matching.
Multimedia ontologies can be of two types: media-specific and
content-specific.
As an example of a multimedia collection, consider an archive
of images of antique furniture. An ontology of antique furniture
would be of great use in searching such an archive.
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 53
Use Cases – Multimedia Collections (2)
A taxonomy can be used to classify the different types of furniture.
It would also be useful if the ontology could express definitional knowledge. For example, if an indexer selects the value "Late Georgian" for the style/period of (say) an antique chest of drawers, it should be possible to infer that the data element "date.created" should have a value between 1760 and 1811 A.D. and that the "culture" is British.
Availability of this type of background knowledge significantly increases the support that can be given for indexing as well as for search.
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 54
Use Cases – Corporate Web Site Management (1)
Large corporations typically have numerous web pages concerning things like press releases, product offerings and case studies, corporate procedures, internal product briefings and comparisons, white papers, and process descriptions.
Ontologies can be used to index these documents and provide better means of retrieval.
A single ontology is often limiting because the constituent categories are likely constrained to those representing one view and one granularity of a domain
An ontology-enabled web site may be used by: A salesperson looking for sales collateral relevant to a sales pursuit.
A technical person looking for pockets of specific technical expertise and detailed past experience.
A project leader looking for past experience and templates to support a complex, multi-phase project, both during the proposal phase and during execution.
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 55
A typical problem for each of these types of users is that they
may not share terminology with the authors of the desired
content.
The salesperson may not know the technical name for a desired
feature
For such problems, it would be useful for each class of user to
have different ontologies of terms, but have each ontology
interrelated so translations can be performed automatically.
Another problem is framing queries at the right level of
abstraction. A project leader looking for someone with
expertise in operating systems should be able to locate an
employee who is an expert with both Unix and Windows.
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 56
Use Cases – Corporate Web Site Management (2)
Use Cases – Design Documentation
A concrete example of this use case is design documentation for the aerospace domain, where typical users include:
Maintenance engineer looking for all information relating to a particular part (e.g., "wing-spar").
Design engineer looking at constraints on re-use of a particular sub-assembly.
To support this kind of usage, it is important that constraints can be defined. These constraints may be used to enhance search or check consistency. An example of a constraint might be:
biplane(X) => CardinalityOf(wing(X)) = 2
wingspar(X) AND wing(Y) AND isComponentOf(X,Y) => length(X) < length(Y)
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 57
Use Cases – Agents and Services (1)
The Semantic Web can provide agents with the capability to understand and integrate diverse information resources.
A specific example is that of a social activities planner, which can take the preferences of a user (such as what kinds of films they like, what kind of food they like to eat, etc.) and use this information to plan the user's activities for an evening.
This type of agent requires domain ontologies that represent the terms for restaurants, hotels, etc. and service ontologies to represent the terms used in the actual services. These ontologies will enable the capture of information necessary for applications to discriminate and balance among user preferences. Such information may be provided by a number of sources, such as portals, service-specific sites, reservation sites and the general Web.
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 58
Use Cases – Agents and Services (2)
Agentcities is an example of an initiative that is exploring the use of agents in a distributed service environment across the Internet. This will involve building a network of agent platforms that represent real or virtual cities, such as San Francisco or the Bay Area, and populating them with the services of those cities.
This will require a number of different domain and service ontologies: Key issues include: Use and integration of multiple separate ontologies across different
domains and services
Distributed location of ontologies across the Internet
Potentially different ontologies for each domain or service (ontology translation/cross-referencing)
Simple ontology representation to make the task of defining and using ontologies easier
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 59
Use Cases – Ubiquitous Computing (1)
Ubiquitous computing is an emerging paradigm of personal computing, characterized by the shift from dedicated computing machinery to pervasive computing capabilities embedded in our everyday environments.
The pervasiveness and the wireless nature of devices require network architectures to support automatic, ad hoc configuration.
A key technology of true ad hoc networks is service discovery, functionality by which "services" can be described, advertised, and discovered by others.
The key issue (and goal) of ubiquitous computing is that devices which weren't necessarily designed to work together should be able to discover each others' functionality and be able to take advantage of it.
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 60
Use Cases – Ubiquitous Computing (2)
Ubiquitous computing is an emerging paradigm of personal computing, characterized by the shift from dedicated computing machinery to pervasive computing capabilities embedded in our everyday environments.
The pervasiveness and the wireless nature of devices require network architectures to support automatic, ad hoc configuration.
A key technology of true ad hoc networks is service discovery, functionality by which "services" can be described, advertised, and discovered by others.
The key issue (and goal) of ubiquitous computing is that devices which weren't necessarily designed to work together should be able to discover each others' functionality and be able to take advantage of it.
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 61
References
http://www.w3.org/TR/owl-ref/
Chapter 6 of the book
Sharif Univ. of Tech. Ontology and OWL - Morteza Amini 62