Sycara and Paolucci 1 OWL Katia Sycara and Massimo Paolucci OWL section partially based on OWL...

23
1 Sycara and Paolucci OWL OWL Katia Sycara and Massimo Paolucci Katia Sycara and Massimo Paolucci OWL section partially based on OWL Tutorial by OWL section partially based on OWL Tutorial by Roger L. Costello and David B. Jacobs Roger L. Costello and David B. Jacobs

Transcript of Sycara and Paolucci 1 OWL Katia Sycara and Massimo Paolucci OWL section partially based on OWL...

Page 1: Sycara and Paolucci 1 OWL Katia Sycara and Massimo Paolucci OWL section partially based on OWL Tutorial by Roger L. Costello and David B. Jacobs.

11 Sycara and Paolucci

OWL OWL

Katia Sycara and Massimo PaolucciKatia Sycara and Massimo Paolucci

OWL section partially based on OWL Tutorial by OWL section partially based on OWL Tutorial by Roger L. Costello and David B. JacobsRoger L. Costello and David B. Jacobs

Page 2: Sycara and Paolucci 1 OWL Katia Sycara and Massimo Paolucci OWL section partially based on OWL Tutorial by Roger L. Costello and David B. Jacobs.

22 Sycara and Paolucci

OverviewOverview

OWLWhat can be said in OWL-SOWL vs XMLRDF/RDFS/OWL OWL languageDescription Logic

• What do they are good for• What inference do they support

Page 3: Sycara and Paolucci 1 OWL Katia Sycara and Massimo Paolucci OWL section partially based on OWL Tutorial by Roger L. Costello and David B. Jacobs.

33 Sycara and Paolucci

What can be said in OWLWhat can be said in OWL

Classes: ComputerManifacturerSubclasses:

ComputerManifacturer < Manifacturer

Instances: IBMProperties: productsRestriction on properties:

all products are computers

Cardinality restrictions:At lest two production facilities

Set Theoretic statements:At lest two production facilities

Page 4: Sycara and Paolucci 1 OWL Katia Sycara and Massimo Paolucci OWL section partially based on OWL Tutorial by Roger L. Costello and David B. Jacobs.

44 Sycara and Paolucci

The basis of OWLThe basis of OWL

From RDF/RDFSXML SyntaxConcepts of rdfs:subclassOf, rdfs:Property etc…

From Description LogicsAxiomatic descriptionProof theory: inference mechanismConstraints on the language to maintain inference computable

OWL

Description Logics RDF/RDFS

XML

Page 5: Sycara and Paolucci 1 OWL Katia Sycara and Massimo Paolucci OWL section partially based on OWL Tutorial by Roger L. Costello and David B. Jacobs.

55 Sycara and Paolucci

Why isn‘t XML enough?Why isn‘t XML enough?

<SLR> …</SLR>

What is an SLR?

What is this XML snippet talking about?What is this XML snippet talking about?

Page 6: Sycara and Paolucci 1 OWL Katia Sycara and Massimo Paolucci OWL section partially based on OWL Tutorial by Roger L. Costello and David B. Jacobs.

66 Sycara and Paolucci

SLR - which one?SLR - which one?

SLR Single Lens Reflex (camera)SLR Satellite Laser RangingSLR Self Loading RifleSLR Sending Loudness Rating (telecommunications)SLR Service Level ReportSLR Service Location RegisterSLR Side Looking RadarSLR Single Line RestoralSLR Single Linear RecordingSLR Slide Raft (aircraft door)SLR Slush on Runway(s)SLR SolectronSLR Spacelift RangeSLR Sri Lanka Rupee (national currency)SLR Statutory Liquidity RatioSLR Stock Level ReportSLR Stock Level RequirementSLR Straight Leg RaiseSLR Straight Leg RaisingSLR System Level Requirement(s)

Page 7: Sycara and Paolucci 1 OWL Katia Sycara and Massimo Paolucci OWL section partially based on OWL Tutorial by Roger L. Costello and David B. Jacobs.

77 Sycara and Paolucci

Meaning (semantics) applied Meaning (semantics) applied on a per-application basison a per-application basis

XML

app#1Semantics: Code to interpret the dataAction: Code to process the data

app#2Semantics: Code to interpret the dataAction: Code to process the data

Page 8: Sycara and Paolucci 1 OWL Katia Sycara and Massimo Paolucci OWL section partially based on OWL Tutorial by Roger L. Costello and David B. Jacobs.

88 Sycara and Paolucci

Problem with attaching semantics on a per-Problem with attaching semantics on a per-application basisapplication basis

applicationSemantics: Code to interpret the dataAction: Code to process the data

Problems with burying semantic definitionswithin each application:- Duplicate effort - Each application must express the semantics- Variability of interpretation - Each application can take its own interpretation - Example: Mars probe disaster - one application interpreted the data in inches, another application interpreted the data in centimeters.- No ad-hoc discovery and exploitation - Applications have the semantics pre-wired. Thus, when new data is encountered an application may not be able to effectively process it. This makes for brittle applications.

Page 9: Sycara and Paolucci 1 OWL Katia Sycara and Massimo Paolucci OWL section partially based on OWL Tutorial by Roger L. Costello and David B. Jacobs.

99 Sycara and Paolucci

Better approach:Better approach:

XML

app#1Action: Code to process the data

app#2Action: Code to process the data

OWL DocumentSemantic Definitions

Separate concept definition (semantics) from applicationExpress concept definitions using a standard vocabulary

Page 10: Sycara and Paolucci 1 OWL Katia Sycara and Massimo Paolucci OWL section partially based on OWL Tutorial by Roger L. Costello and David B. Jacobs.

1010 Sycara and Paolucci

What is added by RDFWhat is added by RDF

Provide basic syntax for OWLUse of URI for unique identification of concepts, instances and relations Expression of relations between objects and concepts

RDF triples

Problem: no structure

Page 11: Sycara and Paolucci 1 OWL Katia Sycara and Massimo Paolucci OWL section partially based on OWL Tutorial by Roger L. Costello and David B. Jacobs.

1111 Sycara and Paolucci

RDF SchemaRDF Schema

Add basic structure to RDFClass/Subclass declarationInstancesProperties (relations)Multiple inheritance

OWL greatly expands the vocabulary of possible constructs

Page 12: Sycara and Paolucci 1 OWL Katia Sycara and Massimo Paolucci OWL section partially based on OWL Tutorial by Roger L. Costello and David B. Jacobs.

1212 Sycara and Paolucci

OWL as Description Logics LanguageOWL as Description Logics Language

Subset of First Order Logics used to describe objects in a domainAllows three types of objects

Concepts: describe general concepts of things in the domain

• They are usually represented as sets• Ex: Bird: the generic description of bird (or whatever

is common to all the things that are birds)Individuals: an object in the domain

• Ex: Tweedy the birdProperties: relations between concepts

• One special relation is ISA (or subclassOf) • Ex: Bird isa Animal or Bird has Wing

Superficially OO looking

Page 13: Sycara and Paolucci 1 OWL Katia Sycara and Massimo Paolucci OWL section partially based on OWL Tutorial by Roger L. Costello and David B. Jacobs.

1313 Sycara and Paolucci

OWL and logicsOWL and logics

OWL relies on Description LogicsLogics provide automatic

Check of consistency of concept definitionsCompletion of concept definitionsClassification of new instances and conceptsExtraction of implicit knowledge in the documents

None of this is available in XMLXML Schema provides some of those properties to some extent

Page 14: Sycara and Paolucci 1 OWL Katia Sycara and Massimo Paolucci OWL section partially based on OWL Tutorial by Roger L. Costello and David B. Jacobs.

1414 Sycara and Paolucci

Types and quantifiers on PropertiesTypes and quantifiers on Properties

Different types of propertiesTransitivity, Symmetry, Function, Inverse etc…

• Transitivity:Joe siblingOf Sally and Sally siblingOf Bob then Joe siblingOf Bob

• Inverse: Joe siblingOf Sally then Sally siblingOf JoeCardinality restrictions

Specify how many elements are in relation with each otherat-most, at-least, exactly, optionality (0 or more)

• Bird has (exactly) 2 WingType restrictions

Identifies subclasses that have some restriction on a property P• Bottle madeOf Material• Glass subclassOf Material• GlassBottle subclassOf Bottle madeOf Glass

Page 15: Sycara and Paolucci 1 OWL Katia Sycara and Massimo Paolucci OWL section partially based on OWL Tutorial by Roger L. Costello and David B. Jacobs.

1515 Sycara and Paolucci

Equivalence between concepts Equivalence between concepts

Equivalence of conceptsAllows concepts that have been defined in different ontologies to be equated

• Ont1:LiquidContainer equvalentClass ont2:BottleAs a consequence any instance of LiquidContainer iis also an instance of Bottle and any instance of Bottle is also an instance of LiquidContainer

Equivalence of individualsAllows instances defined in different ontologies to describe the same objects

• EveningStar sameAs MorningStarDifference of individuals

Assert values that are mutually distinct.

Page 16: Sycara and Paolucci 1 OWL Katia Sycara and Massimo Paolucci OWL section partially based on OWL Tutorial by Roger L. Costello and David B. Jacobs.

1616 Sycara and Paolucci

Using Set TheoryUsing Set Theory

Complex types to support set theoryunion, intersection and complement

• Human= unionOf Woman and ManEnumerated Classes

means to specify a class via a direct enumeration of its members, this is done through the oneOf construct

• Gender oneOf male or femaleDisjoint Classes

It guarantees that an individual that is a member of one class cannot simultaneously be an instance of a specified other class.

• Cat disjoint Dog

Page 17: Sycara and Paolucci 1 OWL Katia Sycara and Massimo Paolucci OWL section partially based on OWL Tutorial by Roger L. Costello and David B. Jacobs.

1717 Sycara and Paolucci

What are Description Logics good forWhat are Description Logics good for

Inheritance (Subsumption)The properties of the super class are inherited to the subclass and eventually to the instances

Automatic classificationYou can define a new object of type Thing (the top level node) and depending on its property that object is automatically classified (and completed)

• Bird subclassOf Animal with exactly 2 Wing• Tweedy is an instance of Thing• Tweedy has wing LeftWing• Tweedy has wing RightWing• Tweedy has not more wings• Tweedy is automatically classified as Bird

Page 18: Sycara and Paolucci 1 OWL Katia Sycara and Massimo Paolucci OWL section partially based on OWL Tutorial by Roger L. Costello and David B. Jacobs.

1818 Sycara and Paolucci

Limitations Description LogicsLimitations Description Logics

Description Logics provides a snapshot of the WorldDescribe objects in a given time frame

They are intrinsically very staticDifficult to represent processes (sequences of situations)

There is no explicit notion of variables and rulesIt is impossible to say that

X father Y and Y fatherZ X grandfather Z

Page 19: Sycara and Paolucci 1 OWL Katia Sycara and Massimo Paolucci OWL section partially based on OWL Tutorial by Roger L. Costello and David B. Jacobs.

1919 Sycara and Paolucci

OWL Full, OWL DL, and OWL LiteOWL Full, OWL DL, and OWL Lite

Description Logics provides a careful balance between expressivity and computational complexityOWL provides sublanguages with reduced expressivity and computational complexity

OWL Full

OWL DL

OWL Lite

Page 20: Sycara and Paolucci 1 OWL Katia Sycara and Massimo Paolucci OWL section partially based on OWL Tutorial by Roger L. Costello and David B. Jacobs.

2020 Sycara and Paolucci

ComparisonComparison

OWL Full OWL DL OWL Lite

Everything that hasbeen shown in thistutorial is available.Further, you can mix RDF Schema definitionswith OWL definitions.

You cannot use owl:cardinalitywith TransitiveProperty.You cannot use a class as amember of another class, i.e.,you cannot have metaclasses.FunctionalProperty andInverseFunctionalPropertycannot be used with datatypes(they can only be used with ObjectProperty).

All the DL restrictions plus:You cannot use owl:minCardinalityor owl:maxCardinality.The only allowed values forowl:cardinality is 0 and 1.Cannot use owl:hasValue.Cannot use owl:disjointWith.Cannot use owl:oneOf.Cannot use owl:complementOf.Cannot use owl:unionOf.

Page 21: Sycara and Paolucci 1 OWL Katia Sycara and Massimo Paolucci OWL section partially based on OWL Tutorial by Roger L. Costello and David B. Jacobs.

2121 Sycara and Paolucci

Advantages/DisadvantagesAdvantages/Disadvantages

Full: The advantage of the Full version of OWL is that you get the full power of the OWL language.The disadvantage of the Full version of OWL is that it is difficult to build a Full tool. Also, the user of a Full-compliant tool may not get a quick and complete answer.

DL/Lite:The advantage of the DL or Lite version of OWL is that tools can be built more quickly and easily, and users can expect responses from such tools to come quicker and be more complete.The disadvantage of the DL or Lite version of OWL is that you don't have access to the full power of the language.

Page 22: Sycara and Paolucci 1 OWL Katia Sycara and Massimo Paolucci OWL section partially based on OWL Tutorial by Roger L. Costello and David B. Jacobs.

2222 Sycara and Paolucci

ResourcesResources

OWL specificationsW3C page on OWL

• http://www.w3c.org/2001/sw/WebOnt/

OWL Guide and language reference• http://www.w3.org/TR/owl-guide/• http://www.w3.org/TR/owl-ref/

TutorialsCostello and Jacobs’ OWL tutorial: http://www.xfront.com/owl/

Page 23: Sycara and Paolucci 1 OWL Katia Sycara and Massimo Paolucci OWL section partially based on OWL Tutorial by Roger L. Costello and David B. Jacobs.

2323 Sycara and Paolucci

OWL ToolsOWL ToolsRacer:

OWL-Lite inference enginewww.sts.tu-harburg.de/~r.f.moeller/racer/

Tools at Network Inferencehttp://www.networkinference.com/

OilEd:http://oiled.man.ac.uk/Editor for ontologiesMostly for DAML+OIL, exports OWL but not a current representation

OWL Validator:http://owl.bbn.com/validator/Web-based or command-line utilityPerforms basic validation of OWL file

OWL Ontology Validator:http://phoebus.cs.man.ac.uk:9999/OWL/Validatora "species validator" that checks use of OWL Lite, OWL DL, and OWL Full constructs

Euler:http://www.agfa.com/w3c/euler/an inference engine which has been used for a lot of the OWL Test Cases

Chimaera:http://www.ksl.stanford.edu/software/chimaera/Ontology evolution environment (diagnostics, merging, light editing)Mostly for DAML+OIL, being updated to export and inport current OWL

Extensive list of tools,http://www.w3.org/2001/sw/WebOnt/impls