350 likes | 515 Views
Geoinformatics. Logic 2. Complex classes and roles. OWL DL (language to build ontologies) uses Description Logic, which is a family of knowledge representation formalisms based on the syntax, semantics, and proof theory of the first-order predicate logic
E N D
Geoinformatics Logic 2
Complex classes and roles • OWL DL (language to build ontologies) uses Description Logic, which is a family of knowledge representation formalisms based on the syntax, semantics, and proof theory of the first-order predicate logic • Protégé (Editor to build ontologies) supports DL • The inference rules in OWL and related languages (RDF, RDFS) enable reasoners to infer new implicit facts from explicit knowledge (i.e., reasoning)
Atomic classes and properties • OWL DL supports the notion of atomic classes or concepts (e.g., denoted by C, D), atomicproperties or roles (e.g., denoted by p), and constants (e.g., denoted by a, b) • Fault (class or type for faults), Rock, and Batholith are examples of atomic classes or concepts • The hasAttitude and locatedIn are examples of atomic properties or roles representing the binary relations between individuals. • It should be noted that a property such as hasLinearAttitude, despite its name, does not necessarily relate a linear structure to its type of attitude (orientation, trend) • It only relates individuals to other individuals, which may not be members of the linear structure or attitude sets unless explicitly asserted • The following are examples of constants: “Nevada”, “San Andreas Fault”, and “Mississippi River”
Complex classes • Description logic includes constructors to define complex classes and roles from atomic concepts and roles, and allows defining axioms and assertions • Atomic (named) classes are types of individuals or instances, such as Fault, Rock, and Aquifer • Atomic classes can be aggregated to form complex classes such as the set of all individuals (T) and the empty set () • For example, we can construct the AlteredRock class out of the Rock atomic class by restricting one or more of its properties to represent what it means for a rock to be altered (i.e., specializing it)
Atomic Properties • Atomic properties or atomic roles are binary, non-taxonomic relations between individuals, and can be of the following types: • Object type (relating individuals to other individuals) traceElementComposition (Mineral, TraceElement) • Datatype (relating an individual to numeric or alphanumeric expressions): phone (“111223333”) • Annotation: The annotation property includes label, comment, and version information; are added to data for human consumption • Classes that have a fixed set of individuals (i.e., nominals) are denoted by i1, …, in, such as the Solar System which has a fixed (exact) number of planets. • This closed class type is equivalent to the owl : oneOf Mineral traceElementComposition TraceElement Investigator phone “111223333”
Intersection of classes • Some of the most interesting complex classes are constructed applying the logical intersection, union, and complement to domain classes • The class defined as the intersection of two other classes (A and B) is denoted as A B, and represents individuals that are instances of both A and B • Disjoint sets are those with empty intersections (i.e., A B ) e.g., liquid and solid are disjoint • That is, a class defined by the intersection of two other classes contains exactly those individuals that are instances of both of these classes: • Pyroclastic rocks can be the intersection of volcanic and depositional rocks: PyroclasticRockDepositionalRockVolcanicRock
DFR FMR Example Mylonite • We can define mylonite to be an intersection of both foliated metamorphic rock (FMR) and ductile fault rock (DFR) as: MyloniteDuctileFaultRockFoliatedMetamorphicRock • To construct the set of igneous rocks which are located in Nevada, and the set of igneous rocks which are sampled by Babaie, we use the intersection of these two sets IgneousRocksInNevadaIgneousRocksSampledByBabaie • If we really want to make a statement for the set of individuals that are rocks but are not igneous, we do it by asserting: Rock IgneousRock • To define the non-metamorphic rocks as equivalent to rocks that are not metamorphic, we assert: nonMetamorphicRock Rock MetamorphicRock Rock Ign Ign
A B Union of classes A B • The class defined as the union of two classes A and B, is denoted as A B, and represents individuals that are instances of at least one class A orB, or both • In other words, the union of set A and B (A B) contains elements that are contained only in A, only in B, or in both A and B • Define the Semibrittle class as a union of Brittle and Ductile classes • Instances of this class have properties that are either brittle, ductile, or both brittle and ductile • To define the Semibrittle class to always have features of both brittle and ductile deformation, we must use the intersection constructor instead of union • When translating the natural language ‘and’, and ‘or’, we need to be careful not to translate them without testing what we actually intend to say. The word ‘and’ can be translated either into a union () or an intersection (), with different logical consequences
Complement of a class denoted with (not) • The complement of class A (i.e., A) is the set of individuals that provably are not instances of class A • This implies that an instance of A is satisfiably an instance of all the other classes that are provably not equivalent to class A • A fact is provably true if it is true in all cases given what is currently known and considering all cases (i.e., what is asserted in the knowledge base) • A fact is satisfiably true if, given what is currently known and considering all cases, it is true in at least one case • This means that anything that is provably true or provably false, is also satisfiably true or satisfiably false, respectively!Because provable condition covers satisfiable condition! • On the other hand, anything which is not satisfiably false, or satisfiably true, must be provably true or provably false, respectively A A
Complement combined with and • The complex concept IgneousRock is the group of individuals, not necessarily rocks, which are not igneous (could be river or ice cream) • To assert that IgneousRock is a Rock, not an orange or river, we have to use an intersection, i.e., Rock IgneousRock • We can define the class UnweatheredMineral to be thecomplement of the WeatheredMineral (WM) class, i.e.: UnweatheredMineralWeatheredMineral • This can inclue a soccer ball! • If we do not use intersection, the instances of the UnweatheredMineral class can be instances of any class which are provably not equivalent to the WeatheredMineral Class • Better is to construct a restricted UnweatherMineralby intersecting the WeatheredMineral class with the Mineral class UnweatheredMineral Mineral WeatheredMineral Min WM WM
TBox vs. ABox • There are three kinds of axioms that make statements about the relationships between classes, properties, and individuals • The set of the first two types of axioms (classes and properties) constitutes what is called a TBox (T) or terminology (schema), which expresses the intensional knowledge • The assertional axioms (facts) define the Abox (A) about individuals (instances) which captures the extensional knowledge; the part of knowledge that changes as the world changes
Abox Contains Assertions • Abox (A) consists of statement such as C (a), and P(a, b), for example: Mineral (quartz), i.e., quartz is a mineralcomposition (calcite, carbonate); i.e., composition of calcite is carbonate • The ABox constitutes what is called the knowledge base, which is a set of logical sentences like those given above
D General Class inclusion C • Class (terminological) axioms include the general class inclusion (GCI) axiom: CD, which states thatC is a subclass of D, i.e., C is subsumed by D • This means that all individuals of the set (class, type) C are also individuals (members, instances, individuals) of the set D • C and D classes can be atomic or complex, e.g.: NormalFaultDipSlipFault
Class Equivalence • Two classes C and D (e.g., defined in the same or different namespaces) can be set to be equal (i.e., being the same set) by making them subsume each other (i.e., subclass each other), denoted as C D min: XRayDiffraction min: XRD Assume ‘min’ is the prefix for the Mineralogy domain struc:ScanningElectronMicroscopestruc:SEM Assume‘struc’ is the prefix for the Structural geology domain
Disjoint Classes • Two classes C and D can be declared to be disjoint(owl : disjointWith) either as C D (C is not a D), or alternatively by setting their intersection to be a subset of the empty set as: C D BrittleRockDuctileRockMyloniticRockCataclasticRockSilicate Carbonate • Notice that the names of classes are in the singular form because each represents a type! D C
Lineation Foliation Empty set (Nothing) Empty set • The empty set (owl : Nothing) is denoted as the intersection of a class C with its disjoint complement : C C • On the other hand, the class Τ (owl : Thing), is expressed by the union of a class and its complement (i.e., everything)Τ C C i.e., C and everything else! Notice that Τ , meaning that Thing is the complement of Nothing, or that the Thing class is the complement of the empty set
S Subproperty B A x y P • A property Pcan be declared to be a subproperty of another property S with the property (or role inclusion) axiom as: P S If P is a subproperty of S, then x P y implies x S y • Where x and y are instances of A and B, respectively • For example, shearStrain strain states that the property shearStrain is a subproperty of the strain property, i.e.:x shearStrain y implies x strain y x fizzes y implies x reactsWith y reacts strain B B A A x x y y fizzes shearStrain
R S Intersection of Properties A B P • We can declare a property P to be the intersection of two other properties: R and S, i.e., P R S If x and y are related by P, i.e., x P y, then x R y and x S y • We use this construct when a property at the bottom implies the two above it in the hierarchy. They imply each other, but with different meanings • For example, when a seismic fault ruptures it implies that it shears and slides • If x ruptures y, then x slides y and x shears y slides shears x y x y Deformaton ruptures Rock
R Union of Properties P Q A B x y • Assume that properties P and Q are used similarly in two different namespaces, and we want to combine them into a single super-property R • If property R represents the union of P and Q, i.e., P Q R, then: • If x P y or x Q y, we can infer x R y • For example, if we have two properties: strains and distorts that mean the same thing, and we want to combine them into one property called deforms, then: • If x strains y or x distorts y, we can infer x deforms y
shortens R Union of Properties … P Q folds thrusts A A B B x x y y • Property union is used when each of two or more properties (e.g., oxidize, hydrate) that mean the same thing imply a super-property that has a similar meaning (e.g., weather) • If x oxidizes y or x hydrates y, we can infer that x weathers y • Shortens can be thought of as the union of the folds and thrusts properties • If x folds y or x thrusts y, then x shortens y
Equivalence of Properties • We can also declare two properties, perhaps declared in two different domains, to be equivalent R S • Any triple, that uses R as a predicate, can use S as a predicate, i.e., x R y implies x S y • This means the two have the same meaning, and are used similarly with similar domain and range slips displacesi.e., x slips y implies x displaces y and vice versa dilate changeVolume decay decompose
p A x y B p- Inverse Property • The direction of property is from its domain to its range • A property (p) is inverse of another property p-, if when p holds in one direction, it implies that p-holds in the opposite direction (note: p p-, i.e., properties are not the same!) • In other words, the subjects of (i.e., classes using) p are the objects (i.e., target classes) for p-, i.e., x p y implies y p- x if p and p- are inverse of each other • A partOf B implies B hasPart A • Exampless of Inverse property pairs: samples and sampledBy, owns andownedBy, and identifies andidentifiedBy • Because in OWL, datatypes (e.g., string, date) cannot be the subject of a triple statement (subject-predicate-object), the inverse property needs to be used with caution!
p A x y B p Symmetric Property • If p is a symmetric property relating instances of A to instances of B (i.e., x p y), then the same property relates instances of B to instances of A (i.e., y p x), i.e., it is bidirectional, in the sense that the subjects and objects can switch. • Note: here pp-, i.e., both properties have the same name! • The adjacentTo property is bidirectional: PacificPlateadjacentToNorthAmericanPlate NorthAmericanPlateadjacentToPacificPlate More examples: ‘equals’ and ‘attached’, ‘connectedTo” • A symmetric property is inverse of itself: pp- adjacentTo Plate PacificPlate NorthAmericanPlate Plate adjacentTo
p A x y B p Asymmetric Property • Asymmetric properties are not bidirectional i.e., if x p y, thennot y p x (i.e.., it is a contradiction) • The properties ‘above’, ‘less-than’, and ‘contains’ are all asymmetric properties • For example, ‘intrusion contains xenolith’ does not imply ‘xenolith contains intrusion’, or ‘Cretaceous system above Jurassic system’ does not (normally) imply ‘Jurassic system above Cretaceous system’ (unless thrusting brings old rocks above younger rocks)
p x A Reflexive and Irreflexive Properties • A property p is reflexive if x p x for all x, i.e., p relates all individuals to themselves • e.g., recrystallizes, alters, fragments, breaks • For example, shrinksis a reflexive property because rock shrinks to a smaller rock • This is in contrast to an irreflexive property which cannot relate an individual to itself, i.e., x p x does not apply for all A, e.g.:greaterThan, sourceOf, brotherOf
Transitive Property • A property p is transitive if x p y and y p z implies x p z e.g., contains, subRegionOf, partOfand locatedIn IdahoBatholithlocatedIn Idaho Idaho locatedIn U.S.A Idaho BatholithlocatedIn U.S.A p p x y z A B C
p A B x y Functional Property subject hasMother object • If x p y, the functional property p can only have one unique value y for a particular individual x (i.e., a single value of y for a given x), e.g., hasMother: an x (child) has one mother (y), but y can have many x’s (children) • Function y=x2 has a square which is unique for each x • Declaring a property to be functional, puts a global cardinality constraints on the property • The husband in the Woman hasHusband Man, is a functional property, because a woman x can only have at most one husband y • ‘sampler’ in ‘Sample sampler Person’ is functional, because for an individual sample x, there is a unique person y who took it • Both object and datatype properties can be functional
p A B Functional PropertyInfers object Sameness x y1=y2 subject object • A property p is functional, if x p y1 and x p y2imply thaty1 = y2i.e., the two object individuals are the same (owl: sameAs) • i.e., if I have a mother called y1, and another mother called y2, the two are the same woman • Notice that the subjects are not asserted to be the same (me or my brother); only the objects (mothers) are the same • Every subject (e.g., x) individual that engages a functional property p, can have only one object individual y • If there are two object individuals, then the two must be the same, y1 = y2, for example: • sample13KT id B10xyzR • sample13KT id B10xyz B10xyzR and B10xyz must be the same if id is functional! id A B sample13KT B10xyzR =B10xyz subject object
sampleSite Sample Location x y Functional Property … subject object Assuming that each sample has a unique location (coordinates) where it was taken, then sampleSite is a functional property for subjects that are of type Sample, and its objects are strings of location (long., lat., elev.) Sample sampleSite Location • If two samples have exactly the same location, then they must be the same sample • More commonly we use inverse-functional to prove sameness!
A p B x1=x2 y subject object Inverse Functional property infers subject sameness • If 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 (e.g, SSN value or PIN) of an inverse-functional property p (SSN; PIN) uniquely determines a single subject individual x (a person; a car) • In this case, if x1 p y and x2 p y, then x1 and x2 are the same! Car1 PIN 1234232453435 Car2 PIN 1234232453435 then, Car1 is Car2 • hasSingleAuthorArticle: a person may have many published papers (objects), but all are authored by one author (subject) • A single value of the property (object y, SSN, PIN) cannot be shared by two x subject entities (Person, Car), e.g., imageNumber Image1 imageNumber A3345 Image2 imageNumber A3345 Image1 = Image2
Declaring a property to be inverse functional, puts a global cardinality constraints on the property • Datatype properties cannot be declared inverse-functional in OWL DL • The primary key of relational database is inverse functional because it uniquely identifies a record (row)
bioMother DranafileBojaxhiu = DranafileBojaxhu Woman Mother Teresa Person subject object • Every instance y of the person class of the bioMother property, in Woman bioMother Person, determines a unique woman (subject) x For example, Mother Teresa only has one biological mother even if her mother’s name was misspelled: DranafileBojaxhiubioMotherOf Mother TeresaDranafileBojaxhubioMotherOf Mother Teresa Then, DranafileBojaxhiu must be same as DranafileBojaxhu (despite misspelling of the names)
sampleNumber Sample sampleA = sampleB BO2K123 XSD:String subject object sampleAsampleNumber B02K123 sampleCsampleNumber B02K123 Then, for a unique sampleNumber, sampleAandsampleCmust be the same
occurrenceTime Earthquake earthquakeA = earthquakeB time123 XSD:Time subject object earthquakeAoccurrenceTime time123 earthquakeBoccurrenceTime time123 Then, for a given fault, earthquakeAand earthquakeB are the same earthquake (despite perhaps having been given a different names)
location Outcrop outcropA = ourcropB coordinates1 Location subject object outcropA location coordinates1 outcropB location coordinates1 Then, outcropAand outcropBmust be the same outcrop researcherAPIforProjectxyz PI: principal Investigator researcherBPIforProjectxyzThen, researcherA and researcherBare the same principal investigator PIfor Researcher researcherA = researcherB projectxyz Project subject object