1 TDT4215 Web Intelligence Main topics: Introduction to Web Ontology Language (OWL) Presenter: Stein L. Tomassen 2 Outline Introduction to OWL Protégé, an ontology editor OWL 2 Semantic reasoner Summary
3 Introduction to OWL 4 Tree of Knowledge Technologies Semantic Technology Languages Content Management Languages Process Knowledge Languages AI Knowledge Representation Software Modeling Languages
5 OWL became standard 10 February 2004 the World Wide Web Consortium (W3C) announced final approval of two key Semantic Web technologies, the revised Resource Description Framework (RDF) and the Web Ontology Language (OWL). Motivation: Knowledge representation, and not a message format Availability of tools that can reason about them Give information explicit meaning 6 Semantic Web Layered Cake Ref: http://www.w3.org/2007/talks/0130-sb-w3ctechsemweb/#%2824%29
7 Evolution DAML OIL RDF DAML+OIL OWL 8 OWL extends RDF OWL uses RDF for create its constructs rdfs:resource rdfs:class rdf:property owl:class owl:datatype owl:objectproperty owl:datatypeproperty
9 Sub-languagues OWL Lite supports those users primarily needing a classification hierarchy and simple constraints. It has lower formal complexity than OWL DL OWL DL supports the users who want the maximum expressiveness while retaining computational completeness and decidability OWL Full is meant for users who want maximum expressiveness and the syntactic freedom of RDF; however, with no computational guarantees Class can be treated simultaneously as a collection of individuals (class extension) and as an individual in its own right (class intention) Each of the sublanguages is an extension of its simpler predecessor An overview of the differences between the sub-languages are provided d in Introduction ti to Semantic Web Ontology Languages 10 Language constructs Classes Properties Property characteristics Cardinality Individuals Others
11 Classes Mechanism to describe classes that individuals belong to and the properties they inherit as subclasses of other classes Eg. Mammal, Tree, Person, Building, Fluid, Company OWL supports 6 main ways of describing classes: Named Class; Intersection; Union; Complement; Restrictions; Enumerated classes. owl:class rdfs:subclassof <rdfs:class rdf:id="river"> <rdfs:subclassof rdf:resource="#stream"/> "/ </rdfs:class> <owl:class rdf:id="river"> <rdfs:subclassof rdf:resource="#stream"/> "/ </owl:class> 12 Kinds of classes Union of Classes Instances of the Union of two Classes are either the instance of one or both classes. Union Class is formed using union (OR) operator. Person Man Woman Intersection of Classes Instances of the Intersection of two Classes are simultaneously instances of both class. Intersection is formed using AND operator. Man Person Male Complement Classes Complement class is specified by negating another class. It contains all instances that are not in the negated class. Male Professor
13 Properties Used to state relationships between individuals or from individuals to data values Eg. haspart, isinhabitedby, isnextto, occursbefore owl:datatypeproperty relations betweeneen instances of classes and RDF literals and XML Schema datatypes owl:objectproperty lobj t relations between instances of two classes rdfs:subpropertyof hierarchical decomposition of properties rdfs:domain limits the individuals to which the property can be applied rdfs:range ds limits the individuals dua that the property may have as its value 14 Property characteristics inverseof If the property P1 is stated to be the inverse of the property P2, then if X is related to Y by the P2 property, then Y is related to X by the P1 property TransitiveProperty If a property is transitive, then if the pair (x,y) is an instance of the transitive property P, and the pair (y,z) is an instance of P, then the pair (x,z) is also an instance of P SymmetricProperty If a property is symmetric, then if the pair (x,y) is an instance of the symmetric property P, then the pair (y,x) is also an instance of P FunctionalProperty Properties may be stated to have a unique value InverseFunctionalProperty the inverse of the property has at most one value for each individual. Also referred to as an unambiguous property
15 Cardinality mincardinality a way of saying that the property is required to have a value for all instances of the class maxcardinality saying that t the property is required to have a maximum value for all instances of the class Cardinality cardinality is provided as a convenience when it is useful to state that a property on a class has an exact value 16 Individuals Individuals are instances of classes and properties, may be stated to be equivalent Possible to define individuals as: sameas alldifferent differentfrom
17 Others versioninfo backwordcompatiblewith priorversion Imports incompatiblewith DeprecatedClass DeprecatedProperty oneof hasvalue a unionof complementof DataRange disjointwith intersectionof allvaluesfrom somevaluesfrom distinctmembers onproperty equivalentclass AnnotationProperty equivalentproperty 18 Protégé, an ontology editor
19 Protégé An ontology editor and a knowledge-base editor A free, open source ontology editor and knowledge-base framework that provides an extensible architecture for the creation of customized knowledge-based applications One of the most used ontology editors Based on Java and provides a plugin architecture t for extensibility Was developed by Stanford Center for Biomedical Informatics Research at the Stanford University School of Medicine. http://protege.stanford.edu/ 20 Protégé 3.1
21 Class Hierarchy Subsumption hierarchy owl:thing is the root class 22 Subsumption Superclass/subclass relationship, isa All members of a subclass can be inferred to be members of its superclasses A owl:thing: superclass of all OWL Classes B A subsumes B A is a superclass of B B is a subclass of A All members of B are also members of A
23 Class Editor Class annotations (for class metadata) Class name and documentation Properties available to Class Disjoints widget Conditions 24 Disjointness OWL assumes that classes overlap MeatTopping VegetableTopping = individual This means an individual could be both a MeatTopping and a VegetableTopping at the same time
25 Disjointness If it is stated that classes are disjoint MeatTopping VegetableTopping = individual This means an individual cannot be both a MeatTopping and a VegetableTopping at the same time It must be done explicitly in the interface 26 ClassesTab: Disjoints Widget Add new disjoint Add siblings as disjoint Remove disjoint siblings Lit List of fdijit disjoint classes
27 Properties Tab: Property Browser Note that Properties can be in a hierarchy 28 Creating Properties Delete Property New Object Property: Associates an individual to another individual - New Datatype Property (String, int etc) - New Annotation Properties for metadata - New SubProperty ie create under the current selection
29 Conditions Conditions asserted by the ontology engineer Add different types of condition Definition of the class Description of the class Conditions inherited from superclasses 30 Creating Restrictions Restricted Property Restriction Type Filter Expression Expression Construct Palette Syntax check
31 Protégé OWL Tutorial Want to learn more about both OWL and Protégé? Recommended to do the step-by-step guide to modeling in OWL http://owl.cs.manchester.ac.uk/tutorials/protegeowltutorial/ 32 Other tools A comprehensive list of other tools are available from W3C http://www.w3.org/2001/sw/wiki/tools
33 OWL 2 34 OWL 2 W3C recommendation since 27 th of October 2009 OWL 2 is an extension of OWL (due to the introduction of OWL 2 now commonly referred to as OWL 1) All OWL 1 ontologies are valid OWL 2 ontologies New functionality w.r.t. OWL 1: Keys (i.e. unique individuals identifiers (hashkey)); property chains (i.e. composition of properties); richer datatypes, data ranges (e.g. different kinds of numbers); qualified cardinality restrictions (e.g. three children who are girls); asymmetric, reflexive, and disjoint properties (OWL 1 only symmetric and transitive); enhanced annotation capabilities (e.g. annotations of axioms) OWL 2 also defines three new profiles (OWL 2 EL, QL and RL) and a new syntax (OWL 2 Manchester Syntax) Ref: http://www.w3.org/tr/2009/rec-owl2-new-features-20091027/
35 Semantic reasoner 36 Reasoning support Reasoning support is important since it allows to: check the consistency of the ontology and the knowledge check for unintended relationships between classes derive explicitly all the statements that are true in the ontology, to better understand its properties reduce the redundancy of an ontology, discover equivalent descriptions, reuse concept descriptions, and refine the definitions automatically classify instances in classes This is especially important for larger ontologies Ref: Antoniou, Franconi, & van Harmelen (2005). Introduction to Semantic Web Ontology Languages
37 Deduction - class membership Academic Staff Member subclass of Professor instance of Michael Maher Can deduce that Michael Maher is an instance of Academic Staff Member Ref: Antoniou, Franconi, & van Harmelen (2005). Introduction to Semantic Web Ontology Languages 38 Deduction - classification Academic Staff Member subclass of Professor subclass of Teaching Assistance Can deduce that Teaching Assistance is a subclass of Academic Staff Member Ref: Antoniou, Franconi, & van Harmelen (2005). Introduction to Semantic Web Ontology Languages
39 Deduction - equivalence of classes equivalent equivalent Professor Lecturer Teacher Can deduce that Professor is equivalent with Teacher Ref: Antoniou, Franconi, & van Harmelen (2005). Introduction to Semantic Web Ontology Languages 40 Deduction - consistency of a class Professor disjoint subclass of Student Working Student Can deduce that Working Student is not consistent with both Professor and Student Ref: Antoniou, Franconi, & van Harmelen (2005). Introduction to Semantic Web Ontology Languages
41 Deduction - consistency of the ontology Professor disjoint instance of John Student Can deduce that the instance John is not consistent with the ontology Ref: Antoniou, Franconi, & van Harmelen (2005). Introduction to Semantic Web Ontology Languages 42 Open vs. closed world assumption Open world assumption: The system's knowledge is incomplete and hence cannot conclude that t a statement t t is false if not inferred. E.g. OWL Note, for OWL Full it is not possible to guarantee a complete interference engine since this language is to expressive, but possible for OWL Lite and OWL DL Closed world assumption: The system's knowledge is complete and hence always possible to draw the conclusion that a statement is either true or false. Everything that is not inferred to be true is false. E.g. SQL
43 Semantic reasoner A variety of semantic reasoners are available, like FaCT/FaCT++, RacerPro, SHER, Hoolet, KAON2, Pellet An overview of reasoners: http://www.w3.org/2001/sw/wiki/tools /2001/ / 44 Summary Introduction to OWL Sub-languages Language constructs Protégé, an ontology editor An introduction to the editor OWL 2 What's new w.r.t OWL 1 Semantic reasoner Benefits and possibilities