380 likes | 397 Views
Logics for Data and Knowledge Representation. Web Ontology Language (OWL). Feroz Farazi. OWL. Web Ontology Language designed to be used when the document content is necessary to be processed by applications instead of making it understandable only by humans [ OWL Overview ]
E N D
Logics for Data and Knowledge Representation Web Ontology Language (OWL) Feroz Farazi
OWL • Web Ontology Language designed to be used when the document content is necessary to be processed by applications instead of making it understandable only by humans [OWL Overview] • It can be used to represent ontology • Vocabulary terms and the relationships between them • Concepts and relations between them • Provides more facilities than RDF and RDF Schema • In the representation of semantics • In performing reasoning tasks
OWL Sublanguages • There are three sublanguages of OWL • OWL Lite: trades expressivity for efficiency • OWL DL: a balance between expressivity and computational completeness • OWL Full: trades computational completeness for expressivity • OWL Lite supports • Encoding simple classification hierarchy (e.g., taxonomy and thesaurus) • Assigning cardinality constraints 0 or 1 • OWL DL supports • More expressive than OWL Lite while guarantees conclusions and decidability • Using all OWL constructs, some of them with certain restrictions • The restriction of not making a class an instance of another class
OWL Sublanguages • OWL DL is named so because of its connection with description logics, which form the formal basis of OWL • OWL Full • an extension of RDF with maximum expressiveness, e.g., a class can be represented also as an individual • For these sublanguages the following statements can be made: • Each OWL Lite representation belongs to OWL DL • Each OWL DL representation belongs to OWL Full • Each valid OWL Lite conclusion is also valid in OWL DL • Each valid OWL DL conclusion is also valid in OWL Full
OWL Lite • In OWL Lite • users are allowed to use a subset of the OWL, RDF and RDFS vocabulary • to define a class, one must use the OWL construct owl:Class • OWL constructs, namely: complementOf, disjointWith, hasValue, oneOf and unionOf are not allowed • Some OWL Constructs are allowed to use but their use is limited • all three cardinality constructs – cardinality, maxCardinality and minCardinality, can only have 0 or 1 in their value fields • Moreover, equivalentClass and intersectionOf cannot be used in a triple if the subject or object represents an anonymous class
OWL DL • In OWL DL • Each individual must be an extension of a class • Even if an individual cannot be classified under any user defined class, it must be classified under the general owl:Thing class • Individuals can not be used as properties, and vice versa • Moreover, properties can not be used as classes, and vice versa • It is allowed to use the intersectionOf construct with any number of classes and of any non negative integer in the cardinality restrictions value fields • The computational complexity is the same as the corresponding Description Logic
Properties • Inverse • Given that a property P is inverse of another property Q, P owl:inverseOf Q, and two individuals x and y are connected using P as follows: x P y. We can infer that y Q x. • For example, the property hasChild can be an inverse property of hasParent • Symmetric • Given that a property P is symmetric, P rdf:typeowl:symmetricProperty, two individuals x and y are connected using P as follows: x P y. We can infer that y P x. • For example, the property isMarriedTo is symmetric • Transitive property is used with owl:TransitiveProperty
Properties • Equivalent Property • In RDFS, x rdfs:subPropertyOf y y rdfs:subPropertyOf x • In OWL, x owl:equivalentProperty y • For example, buy and purchase can be equivalent properties • Functional Property • A functional property can have only one value attached to it for any individual • Given that a property P is functional, P rdf:typeowl:FunctionalProperty, the individuals x, y and z are connected using P as follows: x P y and x P z. We can infer that y owl:sameAs z. • For example, the property hasMother is functional
Properties • Inverse Functional Property • An inverse functional property can have only one individual as a subject attached to it for any value • Given that a property P is inverse functional, P rdf:typeowl:InverseFunctionalProperty, the individuals x, y and z are connected using P as follows: x P y and z P y. We can infer that x owl:sameAs z. • For example, the property motherOf is inverse functional • Used • Especially in settings where data come from multiple sources • In entity matching on the Semantic Web
OWL 2 • OWL 2: • Extends OWL 1 • Inherits OWL 1 language features • The new features of OWL 2 based on: • Real applications • User experience • Tool developer experience
Features and Rationale • Syntactic sugar • New constructs for properties • Extended datatypes • Punning • Extended annotations • Some innovations • Minor features
Features and Rationale • Syntactic sugar • Makes some patterns easier to write • Does not change • Expressiveness • Semantics • Complexity • Can help implementations • For more efficient processing
Features and Rationale • Syntactic sugar: • DisjointUnion • DisjointClasses • NegativeObjectPropertyAssertion • NegativeDataPropertyAssertion • DisjointUnion • Union of a set of classes • All the classes are pairwise disjoint
Syntactic sugar • Need for disjointUnion construct • A :CarDoor is exclusively either • a :FrontDoor, • a :RearDoor or • a:TrunkDoor • and not more than one of them • A disjointUnion example • <owl:Classrdf:about="CarDoor"> <owl:disjointUnionOfrdf:parseType="Collection"> <rdf:Descriptionrdf:about="FrontDoor"/> <rdf:Descriptionrdf:about="RearDoor"/> <rdf:Descriptionrdf:about="TrunkDoor"/> </owl:disjointUnionOf> </owl:Class>
Syntactic sugar • DisjointClasses • A set of classes • All the classes are pairwise disjoint • Need for DisjointClasses • Nothing can be both • A LeftLung and • A RightLung
Syntactic sugar • NegativeObjectPropertyAssertion • Two individuals • A property does not hold between them Example, Patient “John” does not live in “Povo” • NegativeDataPropertyAssertion • An individual • A literal • A property does not hold between them Example, “John” is not “5” years old.
New constructs for properties • Self restriction • Qualified cardinality restriction • Object properties • Disjoint properties • Property chain • keys
Self restriction • Classes of objects that are related to themselves by a given property • For example, the class of processes that regulate themselves • It is also called local reflexivity • An example: Auto-regulating processes regulate themselves
Qualified cardinality restrictions • Qualifies the instances to be counted • Restrain the class or data range of the instances to be counted • For example, • Persons that have exactly three children who are girls • Each individual has at most one SSN
Qualified cardinality restrictions • ObjectMinCardinality • ObjectMaxCardinality • ObjectExactCardinality • DataMinCardinality • DataMaxCardinality • DataExactCardinality
Object properties • ReflexiveObjectProperty • Globally reflexive • Everything is part of itself • IrreflexiveObjectProperty • Nothing can be a proper part of itself • AsymmetricObjectProperty • If x is proper part of y, then the opposite does not hold
Disjoint propertis • DisjointObjectProperties • Deals with object properties • Pairwise disjointness can be asserted • E.g., connectedTo and contiguousWith • DisjointDataProperties • Deals with data properties • Pairwise disjointness can be asserted • E.g., startTime and endTime of a surgery
Property chain inclusion • Properties can be defined as a composition of other properties • If disease A is locatedIn body part B and B is part of body part C then A is locatedIn C • SubObjectPropertyOf ( ObjectPropertyChain( locatedIn partOf) locatedIn)
Keys • Individuals can be identified uniquely • Identification can be done using • A data property • An object property or • A set of properties • HasKey( :RegisteredPatient:hasWaitingListN ) ClassAssertion( :RegisteredPatient:ThisPatient ) DataPropertyAssertion( :hasWaitingListN:ThisPatient "123-45-6789" ) • HasKey( :Transplantation :donorId:recipientId:ofOrgan )
Features and Rationale • Syntactic sugar • New constructs for properties • Extended datatypes • Punning • Extended annotations • Some innovations • Minor features
Extended datatypes • Extra datatypes • For example, owl:real and owl:rational • Datatype restrictions • Range of datatypes • For example, adult has an age >= 18 • DatatypeRestriction(xsd:integerminInclusive 18) • Datatype definitions • New datatypes • DatatypeDefinition( :adultAgeDatatypeRestriction(xsd:integerminInclusive 18))
Extended datatypes • Data range combinations • Intersection of • DataIntersectionOf( xsd:nonNegativeIntegerxsd:nonPositiveInteger ) • Union of • DataUnionOf( xsd:stringxsd:integer ) • Complement of data range • DataComplementOf( xsd:positiveInteger )
Punning • Punning: “What's black and white and red all over?” • Classes and individuals can have the same name thanks to punning • E.g., Eagle as a class and as an individual • Properties and individuals can have the same name • E.g., is_located_in as a property and as an individual of Deprecated_Properties class
Punning • Classes and object properties also can have the same name • But classes and datatype properties can not have the same name • Also datatype properties and object properties can not have the same name
Features and Rationale • Extended Annotations • Axioms can be annotated • For example, SubClassOf( Annotation( rdfs:comment "Middle lobes of lungs are necessarily right lobes since left lungs do not have middle lobe.") :MiddleLobe:RightLobe ) • Innovations • Top and Bottom properties • IRI: Internationalized Resource Identifier
Features and Rationale • Inverse object properties: • some object property can be inverse of another property • For example, partOf and hasPart • ObjectInverseOf( :partOf ): this expression represents the inverse property of :part of • This makes writing ontologies easier by avoiding the need to name an inverse
Profiles • Profiles are sublanguages of OWL 2 • Profiles considered • Useful computational properties, e.g., reasoning complexity • Implementation possibilities, e.g., using RDBs • There are three profiles • OWL 2 EL • OWL 2 QL • OWL 2 RL
OWL 2 EL • The EL acronym reflects the profile’s basis in the EL family of description logics • This logic is also called small descriptionlogic (DL) EL • This logic allows for conjunction and existentialrestrictions • It does not allow disjunction and universal restrictions • It can capture the expressive power used by many large-scale ontologies, e.g., SNOMED CT
OWL 2 QL • The QL acronym reflects its relation to the standard relational Query Language • It does not allow existential and universal restrictions to a class expression or a data range • These restrictions • enable a tight integration with RDBMSs, • reasoners can be implemented on top of standard relational databases • Can answer complex queries (in particular, unions of conjunctive queries) over the instance level (ABox) of the DL knowledge base
OWL 2 RL • The RL acronym reflects its relation to the Rule Languages • OWL 2 RL is desgined to accommodate • OWL 2 applications that can trade the full expressivity of the language for efficiency • RDF(S) applications that need some added expressivity from OWL 2 • Existential quantification to a class, union and disjoint union to class expressions are not allowed • These restrictions • allow OWL 2 RL to be implemented using rule-based technologies such as rule extended DBMSs
Profiles • Profile selection depends on • Expressivenss required by the application • Priority given to reasoning on classes or data • Size of the datasets
References • OWL Overview (2004). W3C Recommendation. • OWL 2 New Features and Rationale (2009). W3C Recommendation. • F. Giunchiglia, F. Farazi, L. Tanca, and R. D. Virgilio. The semantic web languages. In Semantic Web Information management, a model based perspective. Roberto de Virgilio, Fausto Giunchiglia, Letizia Tanca (Eds.), Springer, 2009. • D. Allemang and J. Hendler. Semantic web for the working ontologist: modeling in RDF, RDFS and OWL.Morgan Kaufmann Elsevier, Amsterdam, NL, 2008.