280 likes | 425 Vues
An Extensible Approach for Modeling Ontologies in RDF(S). Steffen Staab, Michael Erdmann, Alexander Mädche, & Stefan Decker Research Group Knowledge Management Institute AIFB, University of Karlsruhe, & DB Group, Stanford University Lisbon, September 21, 2000. RDF(S). What is an Ontology?.
E N D
An Extensible Approach for Modeling Ontologies in RDF(S) Steffen Staab, Michael Erdmann, Alexander Mädche, & Stefan DeckerResearch Group Knowledge Management Institute AIFB, University of Karlsruhe, & DB Group, Stanford UniversityLisbon, September 21, 2000
RDF(S) What is an Ontology? • Light-weight Ontology • concepts, atomic types • is-a hierarchy among concepts • associations between concepts • Heavy-weight Ontology • cardinality constraints • taxonomy of relations • reified statements • Axioms / semantic entailments of various tastes • expressiveness (DL, propositional, horn, or first order logic, higher order) • inferences
Tools for Ontologies • Light-weight • uncontroversial • all Tools support light-weight • Protege, Stanford • OntoEdit, Karlsruhe • UML-Tools, several • Heavy-weight • no consensus yet • layering seems appropriate/necessary
The use of XML Namespaces in RDF(S) • Distinguish between different modeling layers • Reuse and integrate existing schemata and applications • XML serialization of RDF(S)
Odoc & O • Odoc: namespace for ontology documentation • O: namespace for modeling of ontological axioms • An actual ontology definition – http://ontoserver.aifb.uni-karlsruhe.de/schema/example.rdf
Modeling ontology metadata using RDF Dublin Core • Dublin Core Metadata element set comprises 15 elements ensuring a maximal level of generality and exchangeability. • Extention of Dublin Core http://ontoserver.aifb.uni-karlsruhe.de/schema/ontodoc
<?xml version=‘1.0’ encoding =‘ISO-8859-1’?> <rdf:RDF xmlns: rdf = http://www.w3.org/1999/02/22-rdf-syntax-ns# xmlns:dc = http://purl.oclc.org/dc xmlns:odoc=“http://ontoserver.aifb.uni-karlsruhe.de/schema/ontodoc”> <rdf: Description about = “”> <dc: Title>an Example Ontology</dc:Title> <dc:creator> <rdf: Bag> <rdf:li>Steffen Staab</rdf:li> … </rdf:Bag> </dc:creator> <dc:date>… <dc:format>… <dc:description>… <dc:subject>….. <odoc:url> http://ontoserver.aifb.uni-karlsruhe.de/schema/example.rdf </odoc:url> <odoc:version>2.1</odoc:version> <odoc:last_modification>2000-03-01</odoc:last_modification> <odoc:ka_technique>semi-automatic text knowledge accquisition</odoc:ka_technique> <odoc:ontology_type>domain ontology</odoc:ontology_type> <odoc:no_concepts>24</ odoc:no_concepts > <odoc:no_relations>23</ odoc:no_relations > <odoc:no_axioms>11</ odoc:no_axioms > <odoc:highest_depth_level>6</odoc:highest_depth_level> </rdf:Description> </rdf:RDF> Example
Modeling Ideal Modeling (WYMIWYG) • Modeling not constrained by any language • All appropriate epistemological primitives and modeling styles should be usable Real Modeling • A particular language always restricts allowed primitives (modeling language) • A particular language is needed in applications(application language) => distinguish modeling language from final application language translate automatically
Axioms • For Semantic Web and DAML more than light-weight is needed! • Axioms • Framework for conceptual modeling of axioms • Ontology of axiom patterns • language specific axiom-schemata can work with that knowledge • Interoperability is an issue • RDF / RDFS seem appropriate next slide next but one slide
Axiom Patterns • 1. Axioms for a relational algebra • (a) Reflexivity of relations • (b) Symmetry of relations • (c) Asymmetry of relations • (d) Transitivity of relations • (e) Inverse relations • (f) Irreflexivity of relations • (g) Antisymmetry of relations • 2. Composition of relations • 3. (Exhaustive) Partitions of Concepts
Axiom Patterns • 4. Axioms for subrelation relationships • 5. Axioms for part-whole reasoning [Winston 87] [Chaffin 92] • PhysicalPartOf • MemberOf • PortionOf • PhaseOf • FeatureOf • SubRegionOf • 6. Nonmonotonicity • 7. Axioms for temporal and modal contexts • 8. (General axioms (application specific, ad hoc))
A simple symmetry example. • A relation MarriedWith(such as used for “William is married with Susan”) • First-order predicate logic: MarriedWith(X,Y)MarriedWith(Y,X)
A simple symmetry example. • In F-Logic Person:LivingBeing[MarriedWithPerson]. Man::Person. • William:Man[MarriedWithSusan] • A rule corresponding to 1 is given by 4 Y[MarriedWithX] X[MarriedWithY]
A simple symmetry example. • We denote symmetry as predicate that holds for particular relations: Symmetric(MarriedWith) • In RDF(S) this specification may easily be realized by a newly agreed upon class o:Symmetric <o:Symmetric rdf:ID=“marriedWith”/> • Derive the implications of symmetry by a general rule Y [RX]Symmetric(R) and X[RY]
subClassOf rdfs:Resource instanceOf RDF/RDFSlayer and namespace rdfs:Class rdf:Property o:Partition o:Relation o:Composition o:Partonomic- RolePropagation ontology meta layerand namespace o:isInverseRelationOf o:PartOfRel o:Asymmetric o:Reflexive o:Transitive o:Irreflexive o:Symmetric appl:Organisation o:secondComponent o:firstComponent appl:Person o:composee Application-specific schema and namespace appl:Man appl:Woman appl:fatherInLaw appl:fatherOf appl:marriedWith appl:marriedWith Application- specificactual data http://www.foo.com/W.Smith http://www.foo.com/S.Smith appl:lastName appl:lastName appl:firstName appl:firstName William Smith Susan Smith
Example of Composition of Relations <o:Composition rdf:ID="FatherInLawComp"> <o:composee rdf:Resource="fatherInLawOf"/> <o:firstComponent rdf:Resource="fatherOf"/> <o:secondComponent rdf:Resource="marriedWith"/> </o:Composition> rdf:Class rdfs:Property o:Composition o:Relation Composition(fatherInLawOf, fatherOf, marriedWith). o:IrreflexiveRel forall R,Q,S,X,Y,Z X[R ->> Z] <- Composition(R, Q, S) and X[Q ->> Y] and Y[S ->> Z]. o:secondComponent o:composee appl:marriedWith o:firstComponent forall X,Y,Z X[fatherInLawOf ->> Z] <- X[fatherOf ->> Y] and Y[marriedWith ->> Z]. appl:fatherInLawOf appl:fatherOf
General Axioms • Two ways to approach • RDF(S) representation for a particular inferencing system • OIL • Representation that is more application specific • A practical choice for many application-specific axioms
OntoEdit supports Axiom Classification fatherInLawOf fatherOf marriedWith
Ontology Engineering using OntoEdit • Interaction with the user on a conceptual level • Multiple views for concepts, relations and axioms • Multilinguality • Linkable to NLP domain lexicon • Exports ontology (incl. axioms) into several formats • F-Logic (main language) • RDF/RDFS • DTDs (as far as possible) • ORDB-Schema (as far as possible) • OIL (partially and in RDF) • UML/XMI (planned) • the DAML language (when specified ;-)
Frame-Logic Inference Engine Access Automatically Derived from Axiom views Pure F-Logic Debugging Instances + Rule Debugging
FaCT DL Engine Interface • Generate FaCT LISP KB (future: OIL) • Call FaCT Client, transform ontology on FaCT server • Ask server
RDF/RDFS layer and namespace rdfs:Resource subClassOf instanceOf rdfs:Property rdf:Class rdfs:ConstraintProperty rdf:type rdfs:subClassOf rdfs:subPropertyOf rdfs:domain rdfs:range XRDF OIL DAML o:isInverseRelationOf o:Relation o:Composition o:PartOfRel o:ReflexiveRel o:Partition o:IrreflexiveRel Ontological meta layer for kinds of relations with own namespace o:PhysicalPartOfRel o:SymmetricRel o:AsymmetricRel o:MemberOfRel o:TransitiveRel o:SubRegionOfRel Application Flexible Epistemological Level XRDF OIL DAML
Conclusion • ‘‘No Method fits all‘‘ • Different applications need • different representation languages • with their underlying reasoning services • Ontology development must be aware of this • conceptual modeling • mechanisms to access/integrate several ontologies • distributed on the web • identified by (XML-) namespaces