OWL
This presentation is the property of its rightful owner.
Sponsored Links
1 / 82

OWL PowerPoint PPT Presentation


  • 67 Views
  • Uploaded on
  • Presentation posted in: General

OWL. Dr. Alexandra I. Cristea http://www.dcs.warwick.ac.uk/~acristea/. What is OWL?. W3C Recommendation, February 2004. web standard Newest OWL 2 (November 2009) W eb O ntology L anguage built on top of RDF for processing information on the web

Download Presentation

OWL

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Owl

OWL

Dr. Alexandra I. Cristea

http://www.dcs.warwick.ac.uk/~acristea/


What is owl

What is OWL?

  • W3C Recommendation, February 2004.

    • web standard

    • Newest OWL 2 (November 2009)

  • Web Ontology Language

  • built on top of RDF

  • for processing information on the web

  • designed to be interpreted by computers, not for being read by people

  • OWL is written in XML


Why owl

Why OWL?

  • OWL is a part of the "Semantic Web Vision" - a future where:

    • Web information has exact meaning

    • Web information can be processed by computers

    • Computers can integrate information from the web

  • OWL was designed to

    • provide a common way to process the content of web information (instead of displaying it).

    • be read by computer applications (instead of humans).


Owl is different from rdf

OWL is Different from RDF

  • OWL , RDF similar

  • but OWL

    • stronger language

    • greater machine interpretability

    • larger vocabulary

    • stronger syntax.


What is an ontology

What is an Ontology?

  • formal specification of a certain domain

  • machine manipulable model

  • Ontology is about the exact description of things and their relationships and an inference mechanism for it.

  • For the web, ontology is about

    • the exact description of web information and

    • relationships between web information and

    • reasoning with it.

  • dictionary  taxonomy  ontology


Owl sublanguages

OWL Sublanguages

  • OWL has three sublanguages:

    • OWL Lite

      • hierarchy + simple constraints + cardinality {0,1}

    • OWL DL(includes OWL Lite)

      • complete, decidable (part of FOL)

      • Type separations (class <> property <> individual)

      • OWL DL is the subset of OWL (Full) that is optimized for reasoning and knowledge modeling

    • OWL Full(includes OWL DL)

      • aug. meaning RDF..

      • Classes - individuals


Owl is written in xml

OWL is Written in XML

  • By using XML, OWL information can easily be exchanged between different types of computers using different types of operating system and application languages.

  • Oh yes, there is a namespace:

    xmlns:owl ="http://www.w3.org/2002/07/owl#"


More on owl

(more on) OWL

  • Based on predecessors (DAML+OIL)

  • A Web Language: Based on RDF(S)

  • An Ontology Language: Based on logic


Owl ontologies

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


Owl use cases

OWL Use Cases

  • At least two different user groups

    • OWL used as data exchange language(define interfaces of services and agents)

    • OWL used for terminologies or knowledge models


Owl example airport

OWL Example (Airport)

  • Example: http://www.cs.man.ac.uk/~rector/Modules/CS646-2004/Labs/Thursday/Simple_University-01.owl

  • Find the error in the OWL Resource:http://www.daml.org/2001/10/html/airport-ont

  • Validators are:

    • For RDF: http://www.w3.org/RDF/Validator

    • For OWL: http://www.mygrid.org.uk/OWL/Validator

  • Semantic web search engine: http://swoogle.umbc.edu/


Scenario

Scenario

  • Semantic Web for Tourism/Traveling

  • Goal: Find matching holiday destinations for a customer

I am looking for a comfortable destination with beach access

Tourism Web


Scenario architecture

Scenario Architecture

  • A search problem: Match customer’s expectations with potential destinations

  • Required: Web Service that exploits formal information about the available destinations

    • Accommodation (Hotels, B&B, Camping, ...)

    • Activities (Sightseeing, Sports, ...)


Tourism semantic web

Tourism Semantic Web

  • Open World:

    • New hotels are being added

    • New activities are offered

  • Providers publish their services dynamically

  • Standard format / grounding is needed→ Tourism Ontology


Tourism semantic web1

Tourism Semantic Web

OWL

Metadata

(Individuals)

OWL

Metadata

(Individuals)

Tourism Ontology

Destination

Activity

Accomodation

OWL

Metadata

(Individuals)

OWL

Metadata

(Individuals)

Web Services


Owl

OWL

  • Individuals (e.g., “FourSeasons”)

  • Properties

    • ObjectProperties (references)

    • DatatypeProperties (simple values)

  • Classes (e.g., “Hotel”)


Individuals instances

Sydney

SydneysOlympicBeach

BondiBeach

Individuals (Instances)

  • Represent objects in the domain

  • Specific things

  • Two names could represent the same “real-world” individual


Example of individuals

Example of Individuals

<Region rdf:ID="CentralCoastRegion" />

equivalent to:

<owl:Thing rdf:ID="CentralCoastRegion" />

<owl:Thing rdf:about="#CentralCoastRegion"> <rdf:type rdf:resource="#Region"/>

</owl:Thing>


Objectproperties

hasPart

hasAccomodation

Sydney

BondiBeach

FourSeasons

ObjectProperties

  • Link two individuals together

  • Relationships (0..n, n..m)


Example property

Example Property

<owl:ObjectProperty rdf:ID=“hasPart"> <rdfs:domain rdf:resource="#Destination" /> <rdfs:range rdf:resource="#Beaches" />

</owl:ObjectProperty>


Property domain range

hasProperty

DomainClass

RangeClass

hasProperty

hasProperty

Property Domain & Range

  • If a relation is:subject_individual  hasProperty  object_individual

  • The domain is the class of the subject individual

  • The range is the class of the object individual (or a datatype if hasPropertyis a Datatype Property)


Properties range and domain

hasAccomodation

hasAccomodation

Destination

Accomodation

Sydney

BestWestern

FourSeasons

Properties, Range and Domain

  • Property characteristics

    • Domain: “left side of relation” (Destination)

    • Range: “right side” (Accomodation)


Domains

Domains

  • Individuals can only take values of properties that have matching domain

    • “Only Destinations can have Accommodations”

  • Domain can contain multiple classes

  • Domain can be undefined:Property can be used everywhere


Property restriction example cardinality

Property Restriction: Example Cardinality

<owl:Class rdf:ID="Wine">

<rdfs:subClassOf rdf:resource="&food;PotableLiquid"/> <rdfs:subClassOf>

<owl:Restriction>

<owl:onProperty rdf:resource="#madeFromGrape"/>

<owl:minCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:minCardinality>

</owl:Restriction>

</rdfs:subClassOf> ...

</owl:Class>

<owl:Restriction>

<owl:onProperty rdf:resource="#madeFromGrape"/>

<owl:minCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:minCardinality>

</owl:Restriction>


Owl extends other ontologies

OWL Extends Other Ontologies

  • extend existing ontology by saying things about terms in it:

    <owl:Class rdf:about="#Animal">

    <rdfs:comment>

    Animals have exactly two parents, ie: If x is an animal, it has exactly 2 parents (but NOT anything that has 2 parents is an animal).

    </rdfs:comment>

    <rdfs:subClassOf>

    <owl:Restriction owl:cardinality="2">

    <owl:onProperty rdf:resource="#hasParent"/>

    </owl:Restriction>

    </rdfs:subClassOf>

    </owl:Class>

  • If ontology is already published, you use the full URL.

    <owl:Class rdf:about="http://www.sample.com/ontologies/zoo#Animal">


Inverse properties

hasPart

isPartOf

Sydney

BondiBeach

Inverse Properties

  • Represent bidirectional relationships

  • Adding a value to one property also adds a value to the inverse property (!)


Inverse property example

Inverse Property Example

<owl:ObjectProperty rdf:ID="hasPart">

<rdf:type rdf:resource="&owl;FunctionalProperty" />

</owl:ObjectProperty>

<owl:ObjectProperty rdf:ID=“isPartOf"> <owl:inverseOf rdf:resource="#hasPart" />

</owl:ObjectProperty>


Transitive properties

hasPart (derived)

hasPart

hasPart

Sydney

NewSouthWales

BondiBeach

Transitive Properties

  • If A is related to B and B is related to C then A is also related to C

  • Often used for part-of relationships


Transitive property example

Transitive Property Example

<owl:ObjectProperty rdf:ID="locatedIn">

<rdf:type rdf:resource="&owl;TransitiveProperty" />

<rdfs:domain rdf:resource="&owl;Thing" />

<rdfs:range rdf:resource="#Region" />

</owl:ObjectProperty>

<Region rdf:ID="SantaCruzMountainsRegion">

<locatedIn rdf:resource="#CaliforniaRegion" />

</Region>

<Region rdf:ID="CaliforniaRegion">

<locatedIn rdf:resource="#USRegion" />

</Region>


Sub properties example

Sub-properties Example

<owl:ObjectProperty rdf:ID="hasWineDescriptor"> <rdfs:domain rdf:resource="#Wine" />

<rdfs:range rdf:resource="#WineDescriptor" />

</owl:ObjectProperty>

<owl:ObjectProperty rdf:ID="hasColor"> <rdfs:subPropertyOf rdf:resource="#hasWineDescriptor" />

<rdfs:range rdf:resource="#WineColor" /> ...

</owl:ObjectProperty>


Datatypeproperties

Sydney

DatatypeProperties

  • Link individuals to primitive values(integers, floats, strings, Booleans etc)

  • Often: AnnotationProperties without formal “meaning”

hasSize = 4,500,000

isCapital = true

rdfs:comment = “Don’t miss the opera house”


Classes

City

Beach

Cairns

Sydney

BondiBeach

CurrawongBeach

Classes

  • Sets of individuals with common characteristics

  • Individuals are instances of at least one class


Examples of classes in owl

Examples of Classes in OWL

<owl:Class rdf:ID="Winery"/>

<owl:Class rdf:ID="Region"/>

<owl:Class rdf:ID="ConsumableThing"/>


Superclass relationships

Cairns

Canberra

Coonabarabran

Sydney

Superclass Relationships

  • Classes can be organized in a hierarchy

  • Direct instances of subclass are also (indirect) instances of superclasses


Example subclasses

Example Subclasses

<owl:Class rdf:ID="PotableLiquid">

<rdfs:subClassOf rdf:resource="#ConsumableThing" /> …

</owl:Class>

<owl:Class rdf:ID="Wine">

<rdfs:subClassOf rdf:resource="&food;PotableLiquid"/>

<rdfs:label xml:lang="en">wine</rdfs:label>

<rdfs:label xml:lang="fr">vin</rdfs:label> ...

</owl:Class>


Class relationships

RetireeDestination

City

Cairns

BondiBeach

Sydney

Class Relationships

  • Classes can overlap arbitrarily


Class disjointness

UrbanArea

RuralArea

City

Destination

Woomera

CapeYork

Sydney

Sydney

Class Disjointness

  • All classes could potentially overlap

  • In many cases we want to make sure they don’t share instances

disjointWith


Example disjoint

Example disjoint

<owl:Class rdf:about="#Man"> <owl:disjointWith rdf:resource="#Woman"/>

</owl:Class>

only in OWL full !


Class versus individual instance

Class versus Individual (Instance)

  • Levels of representation:

    • In certain contexts a class can be considered an instance of something else.

    • Grape, set of all grape varietals. CabernetSauvingonGrape is an instance of this class, but could be considered a class, the set of all actual Cabernet Sauvignon grapes.

  • Subclass vs. instance: easy to confuse instance-of relationship with subclass relationship!

    • CabernetSauvignonGrape as individual & instance of Grape, or subclass of Grape.

    • But: Grape class is the set of all grape varietals, any subclass should be a subset.

    • CabernetSauvignonGrape is an instance of Grape, It does not describe a subset of Grape varietals, it is a grape varietal.


Class descriptions

Things with three star accommodation

Things with sightseeing opportunities

RetireeDestination

Sydney

SanJose

BlueMountains

Class Descriptions

  • Classes can be described by their logical characteristics

  • Descriptions are “anonymous classes”


Class descriptions1

Class Descriptions

  • Define the “meaning” of classes

  • Anonymous class expressions are used

    • “All national parks have campgrounds.”

    • “A backpackers destination is a destination that has budget accommodation and offers sports or adventure activities.”

  • Expressions mostly restrict property values (OWL Restrictions)


Reasoning with classes

Reasoning with Classes

  • Tool support for 3 types of reasoning exists:

    • Consistency checking:Can a class have any instances?

    • Classification:Is A a subclass of B?

    • Instance classification:Which classes does an individual belong to?


Restrictions overview

Restrictions (Overview)

  • Define a condition for property values

    • allValuesFrom

    • someValuesFrom

    • hasValue

    • minCardinality

    • maxCardinality

    • cardinality

  • An anonymous class consisting of all individuals that fulfill the condition


Cardinality restrictions

Cardinality Restrictions

  • Meaning: The property must have at least/at most/exactly x values

  • is the shortcut for and

  • Example: A FamilyDestination is a Destination that has at least one Accomodation and at least 2 Activities


Allvaluesfrom restrictions

allValuesFrom Restrictions

  • Meaning: All values of the property must be of a certain type

  • Warning: Also individuals with no values fulfill this condition (trivial satisfaction)

  • Example: Hiking is a Sport that is only possible in NationalParks


Value constraints

Value constraints

<owl:Restriction>

<owl:onProperty rdf:resource="#hasParent" /> <owl:allValuesFrom rdf:resource="#Human" />

</owl:Restriction>


Somevaluesfrom restrictions

someValuesFrom Restrictions

  • Meaning: At least one value of the property must be of a certain type

  • Others may exist as well

  • Example: A NationalPark is a RuralArea that has at least one Campground and offers at least one Hiking opportunity


Hasvalue restrictions

hasValue Restrictions

  • Meaning: At least one of the values of the property is a certain value

  • Similar to someValuesFrom but with Individuals and primitive values

  • Example: A PartOfSydney is a Destination where one of the values of the isPartOf property is Sydney


Enumerated classes

BudgetAccomodation

OneStarRating

TwoStarRating

ThreeStarRating

Enumerated Classes

  • Consist of exactly the listed individuals


Example description enumeration

Example Description: Enumeration

<owl:Class>

<owl:oneOf rdf:parseType="Collection">

<owl:Thing rdf:about="#Eurasia"/>

<owl:Thing rdf:about="#Africa"/>

<owl:Thing rdf:about="#NorthAmerica"/>

<owl:Thing rdf:about="#SouthAmerica"/>

<owl:Thing rdf:about="#Australia"/>

<owl:Thing rdf:about="#Antarctica"/> </owl:oneOf>

</owl:Class>

Not OWL Lite!


Logical class definitions

Logical Class Definitions

  • Define classes out of other classes

    • unionOf (or)

    • intersectionOf (and)

    • complementOf (not)

  • Allow arbitrary nesting of class descriptions (A and (B or C) and not D)

  • >>> OWL DL


Unionof

Adventure

Sports

unionOf

  • The class of individuals that belong to class A or class B (or both)

  • Example: Adventure or Sports activities


Intersectionof

BudgetAccomodation

Hotel

intersectionOf

  • The class of individuals that belong to both class A and class B

  • Example: A BudgetHotelDestination is a destination with accomodation that is a budget accomodation and a hotel


Implicit intersectionof

AccomodationWith3Stars

Hotel

LuxuryHotel

Implicit intersectionOf

  • When a class is defined by more than one class description, then it consists of the intersection of the descriptions

  • Example: A luxury hotel is a hotel that is also an accommodation with 3 stars


Complementof

QuietDestination (grayed)

Destination

FamilyDestination

complementOf

  • The class of all individuals that do not belong to a certain class

  • Example: A quiet destination is a destination that is not a family destination


Class conditions

Class Conditions

  • Necessary Conditions:(Primitive / partial classes)“If we know that something is a X,then it must fulfill the conditions...”

  • Necessary & Sufficient Conditions:(Defined / complete classes)“If something fulfills the conditions...,then it is an X.”


Class conditions 2

QuietDestination

NationalPark

Class Conditions (2)

(not everything that fulfills theseconditions is a NationalPark)

(everything that fulfills theseconditions is a QuietDestination)


Classification

BackpackersDestination

NationalPark

Classification

  • A RuralArea is a Destination

  • A Campground is BudgetAccomodation

  • Hiking is a Sport

  • Therefore:Every NationalPark is a Backpackers-Destination

(Other BackpackerDestinations)


Reasoning with property domain range

Reasoning with Property, Domain & Range

<owl:ObjectProperty rdf:ID="madeFromGrape">

<rdfs:domain rdf:resource="#Wine"/>

<rdfs:range rdf:resource="#WineGrape"/>

</owl:ObjectProperty>

<owl:Thing rdf:ID="LindemansBin65Chardonnay"> <madeFromGrape rdf:resource="#ChardonnayGrape" />

</owl:Thing>  

=> LindemansBin65Chardonnay is a wine


Visualization with owlviz

Visualization with OWLViz


Putting it all together

Putting it All Together

  • Ontology has been developed

  • Published on a dedicated web address

  • Ontology provides standard terminology

  • Other ontologies can extend it

  • Users can instantiate the ontology to provide instances

    • specific hotels

    • specific activities


Ontology import

Ontology Import

  • Adds all classes, properties and individuals from an external OWL ontology into your project

  • Allows to create individuals, subclasses, or to further restrict imported classes

  • Can be used to instantiate an ontology for the Semantic Web


Tourism semantic web 2

Tourism Semantic Web (2)

OWL

Metadata

(Individuals)

Tourism Ontology

Destination

Activity

Accommodation

Web Services


Owl file import

OWL File & import

<?xml version="1.0"?>

<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:dc="http://purl.org/dc/elements/1.1/"

xmlns:travel="http://protege.stanford.edu/plugins/

owl/owl-library/travel.owl#"

xml:base="http://protege.stanford.edu/plugins/owl/owl-library/heli-bunjee.owl">

[. . .]

</rdf:RDF>


Owl file owl body in rdf wrap

OWL File: [. . .] OWL body in RDF wrap

<owl:Ontology rdf:about="">

<owl:imports rdf:resource="http://protege.stanford.edu/

plugins/owl/owl-library/travel.owl"/>

</owl:Ontology>

<owl:Class rdf:ID="HeliBunjeeJumping">

<rdfs:subClassOf rdf:resource="http://protege.stanford.

edu/plugins/owl/owl-library/travel.owl#BunjeeJumping"/>

</owl:Class>

<HeliBunjeeJumping rdf:ID="ManicSuperBunjee">

[***]

</HeliBunjeeJumping>


Owl file in helibunjeejumping

OWL File [***] in HeliBunjeeJumping

<travel:isPossibleIn>

<rdf:Description rdf:about="http://protege.stanford.edu/plugins/owl/owl-library/travel.owl#Sydney">

<travel:hasActivity rdf:resource="#ManicSuperBunjee"/>

</rdf:Description>

</travel:isPossibleIn>

<travel:hasContact>

[ +++ ]

</travel:hasContact>

<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Manic super bunjee now offers nerve wrecking jumps from 300 feet right out of a helicopter. Satisfaction guaranteed.</rdfs:comment>


Owl file in travel hascontact

OWL File [+++] in travel:hasContact

<travel:Contact rdf:ID="MSBInc">

<travel:hasEmail rdf:datatype="http://www.w3.org/2001/XMLSchema#string">[email protected] </travel:hasEmail>

<travel:hasCity rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Sydney</travel:hasCity>

<travel:hasStreet rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Queen Victoria St</travel:hasStreet>

<travel:hasZipCode rdf:datatype="http://www.w3.org/2001/XMLSchema#int">1240</travel:hasZipCode>

</travel:Contact>


Owl lite synopsis

  • Header Information:

  • Ontology

  • imports

  • Class Intersection:

  • intersectionOf

  • Versioning:

  • versionInfo

  • priorVersion

  • backwardCompatibleWith

  • incompatibleWith

  • DeprecatedClass

  • DeprecatedProperty

  • Annotation Properties:

  • rdfs:label

  • rdfs:comment

  • rdfs:seeAlso

  • rdfs:isDefinedBy

  • AnnotationProperty

  • OntologyProperty

  • Datatypes

  • xsd datatypes

OWL Lite Synopsis

  • Property Characteristics:

  • ObjectProperty

  • DatatypeProperty

  • inverseOf

  • TransitiveProperty

  • SymmetricProperty

  • FunctionalProperty

  • InverseFunctionalProperty

  • Property Restrictions:

  • Restriction

  • onProperty

  • allValuesFrom

  • someValuesFrom

  • Restricted Cardinality:

  • minCardinality (only 0 or 1)

  • maxCardinality (only 0 or 1)

  • cardinality (only 0 or 1)

  • RDF Schema Features:

  • Class (Thing, Nothing)

  • rdfs:subClassOf

  • rdf:Property

  • rdfs:subPropertyOf

  • rdfs:domain

  • rdfs:range

  • Individual

  • (In)Equality:

  • equivalentClass

  • equivalentProperty

  • sameAs

  • differentFrom

  • AllDifferent

  • distinctMembers


Owl dl full

OWL DL + Full

  • Class Axioms:

  • oneOf, dataRange

  • disjointWith

  • equivalentClass(applied to class expressions)

  • rdfs:subClassOf(applied to class expressions)

  • Boolean Combinations of Class Expressions:

  • unionOf

  • complementOf

  • intersectionOf

  • Arbitrary Cardinality:

  • minCardinality

  • maxCardinality

  • cardinality

  • Filler Information:

  • hasValue


Problems with rdfs

Problems with RDFS

RDFS too weak to describe resources in sufficient detail

  • No localised range and domain constraints

    • Can’t say that the range of hasChild is person when applied to persons and elephant when applied to elephants

  • No existence/cardinality constraints

    • Can’t say that all instances of person have a mother that is also a person, or that persons have exactly 2 parents

  • No transitive, inverse or symmetrical properties

    • Can’t say that isPartOf is a transitive property, that hasPart is the inverse of isPartOf or that touches is symmetrical

      Difficult to provide reasoning support

  • No “native” reasoners for non-standard semantics

  • May be possible to reason via FO axiomatisation


Web ontology language requirements

Web Ontology Language Requirements

Desirable features identified for Web Ontology Language:

Extends existing Web standards

  • Such as XML, RDF, RDFS

  • Easy to understand and use

    • Should be based on familiar KR idioms

  • Formally specified

  • Of “adequate” expressive power

  • Possible to provide automated reasoning support


  • From rdf to owl

    From RDF to OWL

    • Two languages developed to satisfy above requirements

      • OIL: developed by group of (largely) European researchers (several from EU OntoKnowledge project)

      • DAML-ONT: developed by group of (largely) US researchers (in DARPA DAML programme)

    • Efforts merged to produce DAML+OIL

      • Development was carried out by “Joint EU/US Committee on Agent Markup Languages”

      • Extends (“DL subset” of) RDF

    • DAML+OIL submitted to W3C as basis for standardisation

      • Web-Ontology (WebOnt) Working Group formed

      • WebOnt group developed OWL language based on DAML+OIL

      • OWL language now a W3C Proposed Recommendation


    Owl language

    OWL Language

    • Three species of OWL

      • OWL full is union of OWL syntax and RDF

      • OWL DL restricted to FOL fragment (¼ DAML+OIL)

      • OWL Lite is “easier to implement” subset of OWL DL

    • Semantic layering

      • OWL DL ¼ OWL full within DL fragment

      • DL semantics officially definitive

    • OWL DL based on SHIQDescription Logic

      • In fact it is equivalent to SHOIN(Dn) DL

    • OWL DL Benefits from many years of DL research

      • Well defined semantics

      • Formal properties well understood (complexity, decidability)

      • Known reasoning algorithms

      • Implemented systems (highly optimised)


    Owl built in classes

    OWL built-in classes

    • owl:FunctionalProperty, owl:InverseFunctionalProperty, owl:SymmetricProperty, owl:TransitiveProperty, owl:DeprecatedClass, owl:DeprecatedProperty


    Owl built in properties

    OWL built in properties

    • owl:equivalentClass, owl:disjointWith, owl:equivalentProperty, owl:inverseOf, owl:sameAs, owl:differentFrom, owl:complementOf, owl:unionOf, owl:intersectionOf, owl:oneOf, owl:allValuesFrom, owl:onProperty, owl:someValuesFrom, owl:hasValue, owl:minCardinality, owl:maxCardinality, owl:cardinality, owl:distinctMembers

    • annotation properties: owl:versionInfo, rdfs:label, rdfs:comment, rdfs:seeAlso, rdfs:isDefinedBy

    • ontology properties: owl:imports, owl:priorVersion, owl:backwardCompatibleWith, owl:incompatibleWith


    Owl class constructors

    OWL Class Constructors

    • XMLS datatypes as well as classes in

    • Arbitrarily complex nesting of constructors


    Owl syntax

    OWL Syntax

    E.g., Person hasChild.(Doctor hasChild.Doctor):

    <owl:Class>

    <owl:intersectionOf rdf:parseType="collection">

    <owl:Class rdf:about="#Person"/>

    <owl:Restriction>

    <owl:onProperty rdf:resource="#hasChild"/>

    <owl:allValuesFrom>

    <owl:unionOf rdf:parseType="collection">

    <owl:Class rdf:about="#Doctor"/>

    <owl:Restriction>

    <owl:onProperty rdf:resource="#hasChild"/>

    <owl:hasClass rdf:resource="#Doctor"/>

    </owl:Restriction>

    </owl:unionOf>

    </owl:allValuesFrom>

    </owl:Restriction>

    </owl:intersectionOf>

    </owl:Class>


    Owl axioms

    OWL Axioms


    Xml schema datatypes in owl

    XML Schema Datatypes in OWL

    • OWL supports XML Schemaprimitive datatypes

      • E.g., integer, real, string, …

    • Strict separationbetween “object” classes and datatypes

      • Disjoint interpretation domain for datatypes

      • Disjoint “object” and datatype properties


    Why separate classes and datatypes

    Why Separate Classes and Datatypes?

    • Philosophical reasons:

      • Datatypes structured by built-in predicates

      • Not appropriate to form new datatypes using ontology language

    • Practical reasons:

      • Ontology language remains simple and compact

      • Semantic integrity of ontology language not compromised

      • Implementability not compromised — can use hybrid reasoner


    Owl query language owl ql

    OWL query language: OWL-QL

    • OWL Query Language (OWL-QL) is an updated version of the DAML Query Language (DQL).

    • It is intended to be a candidate standard language and protocol for query-answering dialogues among Semantic Web computational agents.


    Owl conclusion

    OWL Conclusion

    • We have learned:

      • OWL definition

      • OWL comparison with RDF

      • OWL classes and properties

      • Usage scenarios


  • Login