452 likes | 630 Vues
This presentation by Zhimin Chen delves into the limitations of HTML and XML for conveying semantics, highlighting how agents struggle to automatically process web information. It discusses the construction of a semantic network with taxonomic categories and ARCs that enhance search capabilities. Through examples, it showcases RDF, RDF Schema, and DAML+OIL, emphasizing how these frameworks define tag semantics, enabling precise knowledge retrieval and complex queries across distributed datasets, ultimately illustrating the architecture of the Semantic Web.
E N D
The Semantic Web Presented by Zhimin Chen
HTML Is Human Readable, Not Machine understandable • A Course Schedule Web Page • Consequence: agents can’t effectively process information on the web automatically
XML May Help, But Can Only Help • XML fragment for the course schedule … <course-offered> <catalog> 92809 </catalog> <course> <number> 500 </number> <session> 201 </session> <name> Algorithm Design </name> </course> <room> cisr 104 </room> <instructor> Evans </instructor> …
XML May Help, But Can Only Help (Cont’d) • Tags in XML carry no semantics <course> <ID> 500 </ID> <Session> 201 </Session> <Name> Algorithm Design </Name> </course> is no more meaningful than <H1> <H2> 500 </H2> <H3> 201 </H3> <H4> Algorithm Design </H4> </H1>
Expressing Meanings Of Tags • Semantic network, a graph composed of • Two Kinds of Nodes • Taxonomic categories or property (labeled by relation constants) • Objects in the domain (labeled by object constants) • Three Kinds of Arcs • IS-A arc • Set membership arc • Function arc • Meanings of tags as taxonomic concepts or property
Example Of Semantic Network [Tim Berners-Lee, James Hendler and Ora Lassila]
Use Case – Precise Search • Current search engine • Key word based • Single page only • Semantic search • Assemble knowledge spanning many pages • Example Scenario: locating a person • her last name is "Cook“ • she works for a company on your client list • she has a son attending your alma mater, Avondale University
Architecture Of The Semantic Web Where the standard progress stands [Tim Berners-Lee]
Outline of the talk • RDF and RDF Schema • DAML+OIL and OWL • Description Logic
RDF • An RDF statement is a triple <subject, property, value> • Reification is statement about statement, i.e., subject is a statement • Each subject identified by a URI • Semantics represented as a set of triples and serialized as XML
RDF Example <rdf:Description rdf:about=“http://www.bob-stacy.com/cook”> <works-for rdf:resource=“www.bob-stacy.com” /> </rdf:Description> http://www.bob-stacy.com http://www.bob-stacy.com/cook <rdf:Description rdf:about=“http://www.bob-stacy.com/cook”> <lives-in>Johannesburg</lives-in> </rdf:Description>
RDF Schema • RDF schema provides a way to define the meanings of tags • A tag is a class • Employee rdf:type rdf:class • <rdf:Description rdf:ID="Employee"> <rdf:type rdf:resource = "http://www.w3.org/2000/01/rdf-schema#Class"/> </rdf:Description> • A tag is a property • Works-for rdf:type rdf:property • Works-for rdf:domain Employee • Works-for rdf:range Company
RDF Schema (Cont’d) • XML as a shorthand for RDF descriptions of a semantic network Property Class Class type type type domain range Employee Company Works-for type type Works-for Mrs. Cook Bob-Stacy
RDF Schema (Cont’d) <Company rdf:ID=“Bob-Stacy” /> <Employee rdf:ID=“Cook”> <Works-for rdf:resource=“#Bob-Stacy” /> </Employee>
RDF Schema (Cont’d) • Other modeling mechanisms • Rdf:subClassOf • Rdf:subPropertyOf • Rdf:container and Rdf:collection • Reification (rdf:type is rdf:statement) • daml+oil provides more
Outline of the talk • RDF and RDF Schema • DAML+OIL and OWL • Description Logic
DAML+OIL • DAML+OIL adds richer expressive mechanism to RDF schema • Constraints on properties • Boolean combination of classes • Equivalence and disjointness • Property of property
Constraints On Property • A class is defined as all objects satisfying constraints on property • Universal constraint • E.g.: All objects working for companies <daml:restriction> <daml:onProperty rdf:resource=“#works-for” /> <daml:toClass rdf:resource=“#Company” /> </daml:restriction> • Existential constraint (hasClass and hasValue)
Constraints On Property (Cont’d) • Cardinality constraint (minCardinality, maxCardinality, exactCardinality) • E.g.: All objects having more than 1 child <daml:restriction> <daml:onProperty rdf:resource=“#parentOf” /> <daml:minCardinality> 2 <daml:minCardinality/> </daml:restriction>
Boolean Combination of Classes • Intersection, union, complement • E.g.: all objects working for Bob-Stacy and having more than 1 child <daml:Class ID=“BobStacyParentWorker”> <daml:intersectionOf daml:parseType=“daml:collection”> <daml:restriction> <daml:onProperty rdf:resource=“#works-for” /> <daml:hasValue rdf:resource=“#Bob-Stacy” /> </daml:restriction> <daml:restriction> <daml:onProperty rdf:resource=“#parentOf” /> <daml:minCardinality> 2 <daml:minCardinality/> </daml:restriction> </daml:intersectionOf> </daml:Class>
Equivalence and Disjointness • Equivalence • sameClassAs • samePropertyAs • sameIndividualAs • Disjointness • disjointWith • differentIndividualFrom
Property of property • inverseOf • transitiveProperty • uniqueProperty and unambiguousProperty
OWL • OWL DL DAML + OIL • Add/remove/rename some language constructs • Version management • Knowledge modularization (import) • OWL Full allows class to be an individual (undecidable)
Outline of the talk • RDF and RDF Schema • DAML+OIL and OWL • Description Logic
ALC • Concept descriptions are formed using constructs: • A (atomic concept) • C D (daml:intersectionOf) • C D (daml:unionOf) • C (daml:complementOf) • R.C (daml:toClass) • R.C (daml:hasClass)
SHIQ • ALC plus • Transitive role • R* (daml:transitiveRole) • Concept hierarchy and role hierarchy (subClass and subProperty) • Inverse role • R- (daml:inverseOf) • Qualified number restriction • nR, etc (daml:minCardinality, etc)
Basic Inference Problem • Concept subsumption C T D • Reduction to unsatisfiability • C T D there exists no model I for T s.t. (C D)I is not empty. • Tableau algorithm to find such a model
Tableau • D is a concept • sub(D) is the closure of concept subexpressions in D’s definition • S is a set of individuals • L : S 2sub(D) maps each individual to a subset of sub(D) • E : R 2SS maps each role to a set of pairs of individuals • There is some s in S s.t. D is in L(s)
Tableau For ALC Concepts • T=<S, L, E> is a tableau for ALC concept D if it holds • L(s) does not contain both C and C • If C E L(s), then C L(s) and E L(s) • If C E L(s), then C L(s) or E L(s) • If R.C L(s) and <s,t> E(R), then C L(t) • If R.C L(s), then there is some s s.t. <s,t> E(R) and C L(t) • Further constraints for other concept constructs can be added for more expressive DL.
Tableau Algorithm For ALC • Completion tree • Node x labeled with a set L(x) sub(D) • Edge <x,y> labeled with a set L(<x,y>) of roles occurring in D • Tree expansion rules • - rule: • Condition: C1 C2 L(x) and {C1, C2} L(x) • Action: L(x) {C1, C2} L(x) • - rule: • Condition: C1 C2 L(x) and {C1, C2} L(x) = • Action: for some C {C1, C2} , L(x) {C} L(x)
Tableau Algorithm For ALC (Cont’d) • - rule: • Condition: R.C L(x) and there is a R-successor y of x s.t. C R • Action: L(y) {C} L(y) • - rule: • Condition: R.C L(x) and x has no R-successor y s.t. C L(y) and no other rule is applicable to any of its ancestors • Action: create a R-successor y for x with L(<x,y>)=R and L(y)={C}
Tableau Algorithm For ALC (Cont’d) • A node has clash if {C, C} L(x) • Algorithm starts with a node x labeled with L(x)={D} • Applying expansion rules until • A clash happens • No rules can be further applied to the tree
R clash z {A, A} Tableau Example • Check (R.A) (R.B) R.(A B) • D = (R.A) (R.B) (R.(A B)) {(R.A) (R.B) (R.(A B))} {(R.A), (R.B), (R.(A B))} x R y {A, (A B)} {A, B} {A} {B, A } {B} {B, A B}
Transitive Role and Blocking • + - rule: • Condition: R.C L(x) where R is a transitive role and there is a R-successor y of x s.t. R.C L(y) • Action: L(y) {R.C} L(y) • May lead to infinite loop • Subset blocking: if L(y) is a subset of an ancestor’s label L(x), then block the expansion
L(x)={C, R.C, R.(R.C)} x R y Blocking Example L(x)={C, R.C, R.(R.C)} L(y)={C, R.C} L(y)={C} Blocked
More Expressive DL • For additional concept construct (inverse role, quantifier, etc.), add more expansion rules and blocking rules
backjumping Optimizations • Backjumping L(x)={C1 D1, …, Cn Dn, R.(A B), R.(A)} pruning [Horrocks-Satter-Tobies]
Optimizations (Cont’d) • Absorption • Reasoning w.r.t. axiom C D needs to add (C D) to every node • CN D (CN D) only need to add D (D) to the nodes that contain CN (CN) • Transforming axiom into this form • CN C D CN C D • CN C, CN D CN C D • Similar rules for the cases
Optimizations (Cont’d) • Cache • Cache the satisfiability of L(x) for node x • Caching partial tableaus of concepts to check obvious satisfiability (E.g., merge the tableau of C and D to check satisfiability of C D (and thus C D))
Optimizations (Cont’d) • Lazy expansion of concept • Semantic branching search • C1, …, Cn, C1 … Cn D D • Heuristic guided search • Oldest-first: select the disjunctions dependent on the least recent branching point
Summary • The semantic web tries to make www machine accessible • OWL is the current standard to define vocabulary, and a large part of OWL is DL • Challenges (DB-related) • Scalibility (techniques of reasoning with individual in DL unlikely can scale up) • Query • Ontology design and integration
References • W3C standards: • Resource Description Framework (RDF) Model and Syntax Specification W3C Recommendation 22 February 1999 Ora Lassila, Ralph R. Swick, eds. http://www.w3.org/TR/1999/REC-rdf-syntax-19990222/ • RDF Vocabulary Description Language 1.0: RDF Schema W3C Working Draft Dan Brickley, R.V. Guha, eds. http://www.w3.org/TR/rdf-schema/ • RDF Primer W3C Working Draft Frank Manola, Eric Miller, eds. http://www.w3.org/TR/rdf-primer/ • DAML+OIL (March 2001) Reference Description. Dan Connolly, Frank van Harmelen, Ian Horrocks, Deborah L. McGuinness, Peter F. Patel-Schneider, and Lynn Andrea Stein. W3C Note 18 December 2001. http://www.w3.org/TR/daml+oil-reference • OWL Web Ontology Language Reference W3C Working Draft Mike Dean, Guus Schreiber eds., Frank van Harmelen Jim Hendler Ian Horrocks Deborah L. McGuinness Peter F. Patel-Schneider Lynn Andrea Stein http://www.w3.org/TR/owl-ref/
References (contd.) • Description logic: • Basic Description Logics Description Logic Handbook, edited by F. Baader, D. Calvanese, D.L. McGuinness, D. Nardi, P.F. Patel-Schneider, Cambridge University Press, 2002, pages 47-100. http://www.cs.man.ac.uk/~franconi/dl/course/dlhb/dlhb-02.pdf • Practical Reasoning for Very Expressive Description Logics I. Horrocks and U. Sattler and S. Tobies Logic Journal of the IGPL, Volume 8, Issue 3: May 2000. http://www3.oup.co.uk/igpl/Volume_08/Issue_03/pdf/horrocks1.pdf