1 / 34

OIL and DAML+OIL: Ontology Languages for the Semantic Web

TOWARDS THE SEMANTIC WEB: Ontology-driven Knowledge Management. OIL and DAML+OIL: Ontology Languages for the Semantic Web. 2005. 1. 10. Sungshin Lim sslim@pusan.ac.kr. Artificial Intelligence Laboratory, Pusan National University. Contents. The Semantic Web Pyramid of Languages

sydnee
Télécharger la présentation

OIL and DAML+OIL: Ontology Languages for the Semantic Web

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. TOWARDS THE SEMANTIC WEB: Ontology-driven Knowledge Management OIL and DAML+OIL: Ontology Languages for the Semantic Web 2005. 1. 10. Sungshin Lim sslim@pusan.ac.kr Artificial Intelligence Laboratory, Pusan National University

  2. Contents • The Semantic Web Pyramid of Languages • XML for Data Exchange • Resource Description Framework (RDF) • RDF Schema • Ontology Inference Layer (OIL) • DAML+OIL • Web Ontology Language (OWL)

  3. The Semantic Web Pyramid of Languages

  4. XML for Data Exchange • XML is designed for mark-up in documents of arbitrary structure • XML provides a standardized syntactical way to expose structural information • DTD defines a grammar to specify allowable combinations and nesting of tag names, attribute names, and so on. • Although XML Schema offers several advantages over DTDs, their role is essentially the same. • XML is used to server a range of purposes: • Serialization syntax for other mark-up languages • e.g. Synchronized Multimedia Integration Language (SMIL) • Separating form from content • E.g. XSL • Uniform data-exchange format

  5. predicate Subject Object Equivalent! property Resource Value Resource Description Framework (RDF) • RDF • is designed to standardize the definition • use of meta-data descriptions of web-based resource • is suited to representing data • Basic building block • object–attribute-value • A(O,V) • [O] – A ->[V]

  6. RDF: Why do we need RDF? Sungshin Limis the creator of the resource “http://klpl.re.pusan.ac.kr/page.html“. What is the correct way of expressing it? <creator> <fistName>Sungshin</fistName> <lastName>Lim</lastName> <documents> <uri>http://klpl.re.pusan. ac.kr/page.html</uri> </documents> </creator> <document href=”http://klpl.re. pusan.ac.kr/page.html”> <creator>Sungshin Lim</creator> </document> <creator> <name>Sungshin Lim</name> <uri>http://klpl.re.pusan.ac.kr/page.html</uri> </creator>

  7. RDF: The RDF Data Model In RDF this sentence would be a triple: triple(page.html,creator,Sungshin Lim) creator(page.html,Sungshin Lim) creator page.html “Sungshin Lim“ Resource (subject) object Property (predicate) attribute Value (object) value

  8. RDF: The RDF Data Model creator page.html “Sungshin Lim“ <rdf:RDF xmlns:rdf = “http://www.w3.org/1999/02/22-rdf-syntax-ns#” xmlns:dc = “http://http://purl.org/dc/elements/1.1/”> <rdf:Description rdf:about = “http://klpl.re.pusan.ac.kr/page.html”> <dc:creator>Sungshin Lim</dc:creator> </rdf:Description> </rdf:RDF>

  9. Tutorial: RDF Namespace http://www.w3.org/1999/02/22-rdf-syntax-ns# ID about type resource Description

  10. Tutorial: RDF Model (graph) Legend: Ellipse indicates "Resource" Rectangle indicates "literal string value"

  11. Tutorial: rdf:Description + rdf:type <?xml version="1.0"?> <rdf:Description rdf:about="http://www.china.org/geography/rivers#Yangtze" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.geodesy.org/river#"> <rdf:type rdf:resource="http://www.geodesy.org/river#River"/> <length>6300 kilometers</length> <startingLocation>western China's Qinghai-Tibet Plateau</startingLocation> <endingLocation>East China Sea</endingLocation> </rdf:Description> This is read as: This is a Description about the resource http://www.china.org/geography/rivers#Yangtze. This resource is an instance of the River type (class). The http://www.china.org/geography/rivers#Yangtze resource has a length of 6300 kilometers, a startingLocation of western China's Qinghai-Tibet Plateau, and an endingLocation of the East China Sea."

  12. Tutorial: Alternative • Alternatively we can use rdf:ID rather than rdf:about, as shown here: <?xml version="1.0"?> <rdf:Descriptionrdf:ID="Yangtze" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.geodesy.org/river#" xml:base="http://www.china.org/geography/rivers"> <rdf:type rdf:resource="http://www.geodesy.org/river#River"/> <length>6300 kilometers</length> <startingLocation>western China's Qinghai-Tibet Plateau</startingLocation> <endingLocation>East China Sea</endingLocation> </rdf:Description>

  13. RDF Schema • RDFS extends RDF with “schema vocabulary”, e.g.: • Class, Property • type, subClassOf, subPropertyOf • range, domain • RDF Schema for Simple Ontologies <rdfs:Class ref:about=“Book”/> <rdfs:Class ref:about=“HardCover”/> <rdfs:subClassOf ref:resource=“#Book”/> </rdfs:Class> <rdfs:Property rdf:about=“hasPrice”> <rdfs:domain rdf:resource=“#Book”/> </rdfs:Property>

  14. RDFS: Core Classes and Properties rdfs:Resource rdfs:Literal rdfs:XMLLiteral rdfs:Class rdf:Property rdfs:DataType Core Classes rdfs:Type rdfs:SubClassOf rdfs:SubPropertyOf rdfs:Domain rdfs:Range rdfs:Label rdfs:Comment Core Properties

  15. RDFS: Example A Vehicle Class Hierarchy This schema could also be described by the triples: ex:MotorVehicle rdf:type rdfs:Class . ex:PassengerVehicle rdf:type rdfs:Class . ex:Van rdf:type rdfs:Class . ex:Truck rdf:type rdfs:Class . ex:MiniVan rdf:type rdfs:Class . ex:PassengerVehicle rdfs:subClassOf ex:MotorVehicle . ex:Van rdfs:subClassOf ex:MotorVehicle . ex:Truck rdfs:subClassOf ex:MotorVehicle . ex:MiniVan rdfs:subClassOf ex:Van . ex:MiniVan rdfs:subClassOf ex:PassengerVehicle .

  16. RDFS: Example <?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xml:base="http://example.org/schemas/vehicles"> <rdf:Description rdf:ID="MotorVehicle"> <rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/> </rdf:Description> <rdf:Description rdf:ID="PassengerVehicle"> <rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/> <rdfs:subClassOf rdf:resource="#MotorVehicle"/> </rdf:Description> <rdf:Description rdf:ID="Truck"> <rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/> <rdfs:subClassOf rdf:resource="#MotorVehicle"/> </rdf:Description> <rdf:Description rdf:ID="Van"> <rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/> <rdfs:subClassOf rdf:resource="#MotorVehicle"/> </rdf:Description> <rdf:Description rdf:ID="MiniVan"> <rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/> <rdfs:subClassOf rdf:resource="#Van"/> <rdfs:subClassOf rdf:resource="#PassengerVehicle"/> </rdf:Description> </rdf:RDF> The Vehicle Class Hierarchy in RDF

  17. RDFS: Example <?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xml:base="http://example.org/schemas/vehicles"> <rdfs:Class rdf:ID="MotorVehicle"/> <rdfs:Class rdf:ID="PassengerVehicle"> <rdfs:subClassOf rdf:resource="#MotorVehicle"/> </rdfs:Class> <rdfs:Class rdf:ID="Truck"> <rdfs:subClassOf rdf:resource="#MotorVehicle"/> </rdfs:Class> <rdfs:Class rdf:ID="Van"> <rdfs:subClassOf rdf:resource="#MotorVehicle"/> </rdfs:Class> <rdfs:Class rdf:ID="MiniVan"> <rdfs:subClassOf rdf:resource="#Van"/> <rdfs:subClassOf rdf:resource="#PassengerVehicle"/> </rdfs:Class> </rdf:RDF> The Vehicle Class Hierarchy Using the Typed Node Abbreviation

  18. Ontology Inference Layer (OIL) • Ontology Inference Layer or Ontology Interchange Language • a Web-based representation and inference layer for ontologies • uses frame-based systems, description logics, and Web standards • Frame-based Systems • Classes (frames) with properties (attributes, slots) • Description Logics • describe knowledge in terms of concepts and role restrictions • Web Standards: XML and RDF • extension of RDF and RDF Schema • compatible with RDF Schema (RDFS), and includes a precise semantics for describing term meanings

  19. Capabilities of OIL • Support hierarchies of classes and properties • based on subclass and subproperty relations • Allow classes to be built from other classes • using combinations of intersection (AND), union (OR), and complement (NOT) • Allow the domain, range, and cardinality of properties to be restricted • Support transitive and inverse properties • Support concrete data types • integers, strings, etc.

  20. Example: OIL Ontology

  21. DARPA Agent Markup Language + OIL (DAML+OIL) • Two languages developed to satisfy above requirements • OIL: developed by group of (largely) European researchers(several from OntoKnowledge project) • DAML-ONT: developed by group of (largely) US researchers (in DARPA DAML programme) • Efforts merged to produce DAML+OIL • Development was overseen by joint EU/US committee • DAML+OIL • a semantic markup language for Web resources • builds on earlier W3C standards such as RDF and RDF Schema, and extends these languages with richer modeling primitives • provides modeling primitives commonly found in frame-based languages • A DAML+OIL ontology consists of headers, class elements, property elements, and instances • OWL (Web Ontology Language)

  22. DAML+Oil example: Namespace, Header • Namespace • Header • Version information • Comments • Imports

  23. DAML+Oil example: Class • Defining Classes • In order to describe objects, it is useful to define some basic types. This is done by giving a name for a class, which is the subset of the universe which contains all objects of that type. Multiple superclasses subClassOf

  24. DAML+Oil example: Property • Object properties • Datatype properties

  25. DAML+Oil example: Property Restrictions • Restriction defines an anonymous class, namely the class of all things that satisfy the restriction.

  26. DAML+Oil example: Addition to Existing Class • If we want to add to a defined class, we need not modify previous statement, but we can simply add a class description:

  27. DAML+Oil example: Notations for Properties UniqueProperty inverseOf TransitiveProperty samePropertyAs

  28. DAML+Oil example: Notations for Classes complementOf disjointUnionOf intersectionOf sameClassAs

  29. DAML+Oil example: Defining Individuals

  30. The semantic web pyramid of languages  Semantics+reasoning  Relational Data  Data Exchange

  31. From RDF to OWL • Two languages developed by extending (part of) RDF • OIL: developed by group of (largely) European researchers (several from EU OntoKnowledge project) • DAML-ONT: developed by group of (largely) US researchers (in DARPA DAML programme) • Efforts merged to produce DAML+OIL • Development was carried out by “Joint EU/US Committee on Agent Markup Languages” • Extends (“DL subset” of) RDF • DAML+OIL submitted to W3C as basis for standardisation • Web-Ontology (WebOnt) Working Group formed • WebOnt group developed OWL language based on DAML+OIL • OWL language now a W3C Recommendation

  32. Web Ontology Language (OWL) • OWL is now a W3C Recommendation • The purpose of OWL is identical to RDFS i.e. to provide an XML vocabulary to define classes, properties and their relationships. • RDFS enables us to express very rudimentary relationships and has limited inferencing capability. • OWL enables us to express much richer relationships, thus yielding a much enhanced inferencing capability. • The benefit of OWL is that it facilitates a much greater degree of inferencing than you get with RDF Schema.

  33. Origins of OWL DARPA Agent Markup Language Ontology Inference Layer DAML OIL RDF EU/NSF Joint Ad hoc Committee DAML+OIL All influenced by RDF OWL Lite OWL DL OWL Full A W3C Recommendation OWL

  34. OWL • OWL and RDF Schema enable rich machine-processable semantics RDFS OWL <rdfs:Class rdf:ID="River"> <rdfs:subClassOf rdf:resource="#Stream"/> </rdfs:Class> Semantics RDF Schema OWL Syntax XML/DTD/XML Schemas <owl:Class rdf:ID="River"> <rdfs:subClassOf rdf:resource="#Stream"/> </owl:Class>

More Related