the knowledge presentation language. web ontology language (owl) web ontology language (owl)...
Post on 01-Jan-2016
Embed Size (px)
The Knowledge Presentation Language
Web Ontology Language (OWL)Web Ontology Language (OWL) extends RDF and RDFS languages by adding several other constructs such as owl:class (in addition to the rdfs:class), relationships between class and individuals, and property characteristicsThese new constructs facilitate interoperability among distributed resources OWL is encoded in RDF/XML
OWL is said to be monotonic, meaning that addition of new information to a knowledge base does not falsify previous conclusions
Owl dialectsOWL has three species (dialects): OWL-Lite, OWL DL, and OWL Full
The differences are on the limitations on restrictions on classes
OWL Lite: supports class and property hierarchies and simple restrictions, allowing us to develop thesauri and simple ontologies
OWL DL is the decidable version of OWL Full, with some limitation; it is a restricted version of RDF
OWL Full has no limitation, but may not be decidable
Features of OWLIs compatible with (serializable in) XML. Uses XSD datatypes
Follows description logic in having class, property, and individualsHas constructs that are identified by the URIref
Allow us to define complex classes with Boolean combinations (intersection, union, complement)
Makes it possible to define properties and subproperties and assigning logical metadata (e.g., transitivity)
Has features to set two classes, properties, and individuals as equivalent
Allows setting the cardinality constraints
Setting classes as instances
Resources defined by it can have labels such that they can be displayed in different natural languages
Allows developing Web-distributed ontologies
Lets us import and reuse other owl code (ontologies) by extension
Allows saving the same ontologies with different versions
Allows defining metadata for ontologies (e.g., author, version)
OWL ontology header infoIncludes namespace declarationInformation about the ontology is put within the owl:Ontology Qname, e.g., version, comments, and import
The version includes: owl:versionInfo, owl:priorVersion, owl:backwardCompatibleWith, owl:incompatibleWith, owl.deprecatedClass, and owl:deprecatedProperty
We can also use the rdfs:comment, rdfs:label, rdfs:seeAlso, and rdfs:isDefinedBy
Part of Structural Geology
Two Types of Property in OWLDatatype Property has a typed literal (e.g., XSD or RDF literal) as its range
As a binary relation, the datatype property relates a set of instances of a [domain] class to a set of instances of a datatype (range; object)
A datatype property is declared using the owl:DatatypeProperty
Object PropertyObject property has a URIref as its range
As a binary property, it relates a set of individuals of one class to the set of individuals of another class
That is, the subject and objects of a triple using an object property are both individuals
Object properties are declared in two different ways: or:
Example in N3struc:foldDescription rdf:type owl:DatatypeProperty.struc:foldDescription rdfs:domain struc:Fold.struc:foldDescription rdfs:range xsd:string. struc: Fold struc: foldDescriptionxsd:tring
struc:foldAxis rdf:type owl:ObjectProperty.struc:foldAxis rdfs:domainstruc:Fold.struc:foldAxis rdfs:rangestruc:Line. struc:Foldstruc:foldAxisstruc:Line
Domain and range of propertiesCan be assigned in a short form:
Or the long way, as is shown in the following slide!
owl:inveseOfProperties themselves have properties
owl:inverseOf property relates two properties to each other
Many properties in one direction have an inverse property in the opposite direction
For example, the first property in each of the following pairs reverses the direction of the second propertyanalyzes and analyzedByinvestigates and investigatedByhasSample and sampleOfwrote and writtenBylocatedIn and locationOf
These follow the definition of the mathematical inverse function that state: if f(x) = y, then f-1(y) = x.
Inference of the owl:inverseOfP owl:inverseOf Q.Ifx P y.Theny Q x.
Example: The partOf property is an inverse property struc : Fold hasPart struc : limb.partOf owl : inveseOf struc : hasPart.
This means that if fold has limb as part, then limb is part of fold
partOf owl:inverseOf hasPart
owl:symmetricPropertyIf the property that relates two classes is the same (has the same name) in both directions, we declare the property as symmetric
For example: equals or siblingOf is a symmetric property if x is siblingOf y, then y is siblingOf x
Symmetric properties must be declared as such P rdf : type owl:SymmetricProperty.
The inference for a symmetric property is as follows:P owl:inverseOf P.
That is, the symmetric property is an inverse property.
owl:transitivePropertyIn mathematics, a relation is said to be transitive if P(a,b) and P(b,c) implies P(a,c). This is represented by the owl:TransitiveProperty, which applies to a property. P rdf : type owl:TransitiveProperty.The inference for this property is as follows:IFx P y. y P z.THEN x P z.
C part of B B part of A C part of A.FaultBendFaultSegmentxyPFaultzP
partOfThe partOf property (containment) may be transitive (not always). Finger is part of hand, and hand is part of body However, someones hand is not part of the group to which the person is part of
Geologically, being fractal, faults have segments that have smaller fault segments, which have even smaller segments which are themselves fault
struc:FaultSegment struc:partOf struc: FaultSegment.struc:partOf rdf :type owl:TransitiveProperty.struc:FaultSegment rdfs:subClassOf struc:Fault.
Transitive partOfpartOf owl:inverseOf hasPart
locatedIn is transitiveC locatedIn B B locatedIn A C locatedIn A. geo:locatedInrdf:typeowl:TransitiveProperty.If
tect:SanAndreasFault geo:locatedIn geo:California.geo:California geo:locatedIn geo:United States.
Thengeo:SanAndreasFault geo:locatedIn geo:United States.
Functional Property A functional property is a property that can have only one unique value y (object) for each instance x (subject)e.g., hasBirthMother is functional This means that there cannot be two distinct values y1 and y2 if (x, y1) and (x, y2) are instances of the functional propertyIf x p y1 and x p y2, then y1=y2Ashley hasBirthMother JaneAshley hasBirthMother Maria then jane=MariaGiven x (subject individual) we can find y (object individual)!Both object and datatype properties can be declared functional!There could be many xs, but all relate to one y Example: husband property may be functional in some cultures: Woman husband Man(not in polygamy or same sex marriages)If x husband y1 and x husband y2, then y1=y2If Jane husband Jack and Jane husband Jeff, then Jack = Jeffxyxxx
InferenceThe owl:FunctionalProperty can only take one value for any [object] individual, allowing sameness to be inferred
The inference rule for this construct is as follows Note: x is a subject individual and A and B are object individualsIfP rdf:type owl:FunctionalProperty.X P AX P BThenA owl:sameAs B.pBpx
A property p is functional if x p y1 and x p y2 imply that y1 = y2We infer that the two object individuals are the same (y1 owl:sameAs y2)
Note that the subjects are not asserted to be the same; only the objects are the same
DaughterProduct daughterProductOf ParentIsotopeSample sampleLocation LocationdaughterProductOf and sampleLocation are functional properties, because there is one unique value y for x in the following triples:
x sampleLocation y or x daughterProductOf yThere is a unique location for each sampleThere is a unique ParentIsotope for each daughterProduct
Inverse Functional PropertyThis is the inverse property of the functional property.e.g., isBirthMotherOf which is the inverse of hasBirthMoterhThe object y of an inverse functional property p uniquely determines the subject x (some individual)y can only be the value for p for a single instance xThere cannot be two distinct x1 and x2 such that (x1, y) and (x2, y) are instances of p.If there are, then x1 = x2Liz isBirthMotherOf StevenMyra isBirthMotherOf Steven then, Liz = Myra (same individual)
Note: Peoples name is not inverse functional (different people can have the same name)
Inverse Functional PropertyThis property is the inverse of the owl:FunctionalPropertyIt is very useful for merging data from different sourcesThe owl:FunctionalProperty and owl:InverseFunctionalProperty allow merging data for a same individual from different sources
The owl:InverseFunctionalProperty is equivalent to the key in relational databases, such as SSN and driving license numberThese are uniqueThe inference rule of this construct is as follows:P rdf:type owl:InverseFunctionalProperty.A P X.B P X.ThenA owl:sameAs B.
owl:InverseFunctionalPropertyIf x p y, and p is inverse functional, then there can be only a single value of x for a given y, that is:The object individual y of an owl:InverseFunctionalProperty p uniquely determines a single subject individual xGiven the object individual (y), we can find a unique subject individual (x) (i.e., x y-1)