Computer Science Department Brigham Young University CS652 – Spring 2004 Yihong Ding XML, RDF, and OWL The Derivation of Web Ontology Language.

Slides:



Advertisements
Similar presentations
CH-4 Ontologies, Querying and Data Integration. Introduction to RDF(S) RDF stands for Resource Description Framework. RDF is a standard for describing.
Advertisements

RDF Schemata (with apologies to the W3C, the plural is not ‘schemas’) CSCI 7818 – Web Technologies 14 November 2001 Van Lepthien.
An Introduction to RDF(S) and a Quick Tour of OWL
RDF and XML tutorial. 2 Talk Overview Semantic Web XML RDF DAML + OIL ( Time permitting)
CS570 Artificial Intelligence Semantic Web & Ontology 2
RDFS: Resource Description Framework Schema
Presented by Amr Ali AL-Hossary (M.B.,B.Ch)
Of 27 lecture 7: owl - introduction. of 27 ece 627, winter ‘132 OWL a glimpse OWL – Web Ontology Language describes classes, properties and relations.
OWL TUTORIAL APT CSA 3003 OWL ANNOTATOR Charlie Abela CSAI Department.
1 Semantic Web Technologies: The foundation for future enterprise systems Okech Odhiambo Knowledge Systems Research Group Strathmore University.
1 An Introduction To The Semantic Web. 2 Information Access on the Web Find an mp3 of a song that was on the Billboard Top Ten that features a cowbell.
Chapter 8: Web Ontology Language (OWL) Service-Oriented Computing: Semantics, Processes, Agents – Munindar P. Singh and Michael N. Huhns, Wiley, 2005.
Descriptions Robert Grimm New York University. The Final Assignment…  Your own application  Discussion board  Think: Paper summaries  Web cam proxy.
Dr. Alexandra I. Cristea RDF.
COMP 6703 eScience Project Semantic Web for Museums Student : Lei Junran Client/Technical Supervisor : Tom Worthington Academic Supervisor : Peter Strazdins.
More RDF CS 431 – Carl Lagoze – Cornell University Acknowledgements: Eric Miller Dieter Fensel.
Chapter 7: Resource Description Framework (RDF) Service-Oriented Computing: Semantics, Processes, Agents – Munindar P. Singh and Michael N. Huhns, Wiley,
From SHIQ and RDF to OWL: The Making of a Web Ontology Language
Department of Computer Science, University of Maryland, College Park 1 Sharath Srinivas - CMSC 818Z, Spring 2007 Semantic Web and Knowledge Representation.
W3C Tracking – OWL David De Roure GGF Semantic Grid Research Group
1 Roger L. Costello, David B. Jacobs. © 2003 The MITRE Corporation. XML Design (A Gentle Transition from XML to RDF) Roger L. Costello David B. Jacobs.
Nancy Ide Vassar College USA Resource Definition Framework A Tutorial EUROLAN 2003 July 28 - August 8 Bucharest - Romania.
RDF (Resource Description Framework) Why?. XML XML is a metalanguage that allows users to define markup XML separates content and structure from formatting.
Aidministrator nederland b.v. Adding formal semantics to the Web Jeen Broekstra, Michel Klein, Stefan Decker, Dieter Fensel,
1 Roger L. Costello, David B. Jacobs. © 2003 The MITRE Corporation. Inferring and Discovering Relationships using RDF Schemas Roger L. Costello David B.
1 MASWS Multi-Agent Semantic Web Systems: OWL Stephen Potter, CISA, School of Informatics, University of Edinburgh, Edinburgh, UK.
Okech Odhiambo Faculty of Information Technology Strathmore University
1 Representing Data with XML September 27, 2005 Shawn Henry with slides from Neal Arthorne.
OWL and SDD Dave Thau University of Kansas
Logics for Data and Knowledge Representation
RDF – Resource Description Framework M. Missikoff – F. Taglino LEKS, IASI-CNR Una piattaforma inferenziale per il Web Semantico: Jena2 Roma, 2006 Web Semantico.
Dept. Computer Science, Korea Univ. Intelligent Information System Lab. 1 Sohn Jong-Soo Intelligent Information System lab. Department of Computer Science.
RDF and OWL Developing Semantic Web Services by H. Peter Alesso and Craig F. Smith CMPT 455/826 - Week 6, Day Sept-Dec 2009 – w6d21.
OWL 2 in use. OWL 2 OWL 2 is a knowledge representation language, designed to formulate, exchange and reason with knowledge about a domain of interest.
Chapter 9. 9 RDFS (RDF Schema) RDFS Part of the Ontological Primitive layer Adds features to RDF Provides standard vocabulary for describing concepts.
Michael Eckert1CS590SW: Web Ontology Language (OWL) Web Ontology Language (OWL) CS590SW: Semantic Web (Winter Quarter 2003) Presentation: Michael Eckert.
1 Roger L. Costello, David B. Jacobs. © 2003 The MITRE Corporation. OWL Web Ontology Language Roger L. Costello David B. Jacobs The MITRE Corporation (The.
Metadata. Generally speaking, metadata are data and information that describe and model data and information For example, a database schema is the metadata.
Part I: Set Constructs. RDF Schema (RDFS) RDF does not provide mechanisms to define domain classes and properties RDFS is a vocabulary that provides many.
Semantic Web - an introduction By Daniel Wu (danielwujr)
Advanced topics in software engineering (Semantic web)
Chapter 7: Resource Description Framework (RDF) Service-Oriented Computing: Semantics, Processes, Agents – Munindar P. Singh and Michael N. Huhns, Wiley,
1 Artificial Intelligence Applications Institute Centre for Intelligent Systems and their Applications Stuart Aitken Artificial Intelligence Applications.
Of 35 lecture 5: rdf schema. of 35 RDF and RDF Schema basic ideas ece 627, winter ‘132 RDF is about graphs – it creates a graph structure to represent.
RDF Schema (RDFS) RDF user communities need to define the vocabularies (terms) to indicate that they  are describing specific kinds or classes of resources.
Artificial Intelligence 2004 Ontology
Introduction The Resource Description Framework (RDF) is recommended by the World Wide Web Consortium (W3C) to model meta-data about the resources of the.
OIL and DAML+OIL: Ontology Languages for the Semantic Web Sungshin Lim TOWARDS THE SEMANTIC WEB: Ontology-driven Knowledge.
1 Roger L. Costello, David B. Jacobs. © 2003 The MITRE Corporation. OWL Web Ontology Language Roger L. Costello David B. Jacobs The MITRE Corporation (The.
Organization of the Lab Three meetings:  today: general introduction, first steps in Protégé OWL  November 19: second part of tutorial  December 3:
Chapter 7: Resource Description Framework (RDF) Service-Oriented Computing: Semantics, Processes, Agents – Munindar P. Singh and Michael N. Huhns, Wiley,
Metadata : an overview XML and Educational Metadata, SBU, London, 10 July 2001 Pete Johnston UKOLN, University of Bath Bath, BA2 7AY UKOLN is supported.
OWL & Protege Introduction Dongfang Xu Ph.D student, School of Information, University of Arizona Sept 10, 2015.
Representing Data with XML February 26, 2004 Neal Arthorne.
OWL Web Ontology Language Overview. The OWL Web Ontology Language is designed for use by applications that need to process the content of information.
Practical RDF Chapter 12. Ontologies: RDF Business Models Shelley Powers, O’Reilly SNU IDB Lab. Taikyoung Kim.
CS621 : Artificial Intelligence Pushpak Bhattacharyya CSE Dept., IIT Bombay Lecture 12 RDF, OWL, Minimax.
RDF & SPARQL Introduction Dongfang Xu Ph.D student, School of Information, University of Arizona Sept 10, 2015.
The Semantic Web and Ontology. The Semantic Web WWW: –syntactic transmission of information –only processible by human – no semantic conservation of the.
Motivation Dynamically identify and understand information sources Provide interoperability between agents in a semantic manner Enable distributed extensible.
W3C’s (world wide web consortium) Semantic Web: - RDF and metadata markup efforts to represent data in a machine understandable form. DARPA started the.
OWL Web Ontology Language Summary IHan HSIAO (Sharon)
Describing Web Resources in RDF Semantic Web. Knowledge Technologies Manolis Koubarakis 2 The Semantic Web “Layer Cake”
Chapter Describing Individuals OWL Individuals ▫Ontological Primitive Layer  Mostly described with RDF ▫Instances of user-defined ontological.
OWL (Ontology Web Language and Applications) Maw-Sheng Horng Department of Mathematics and Information Education National Taipei University of Education.
Building Trustworthy Semantic Webs
Ontology.
ece 720 intelligent web: ontology and beyond
RDF 1.1 Concepts and Abstract Syntax
Presentation transcript:

Computer Science Department Brigham Young University CS652 – Spring 2004 Yihong Ding XML, RDF, and OWL The Derivation of Web Ontology Language

2 Acknowledgments  This presentation uses several researchers’ previous examples  Special thanks to Roger L. Costello and David B. Jacobs in MITRE Corporation, Hamish Cunningham and Kalina Bontcheva in University of Sheffield, David De Roure in GGF Semantic Grid Research Group, and one anonymous researcher who provides excellent explanation of RDF syntax.

3 The Holy Grail Hamish Cunningham and Kalina Bontcheva, Ontology-Aware Information Extraction, 2002

4 Semantic Web Wedding Cake

5 XML: document = labeled tree course teachertitlestudents namehttp = XML Schema: grammars for describing legal trees and datatypes Why not use XML to represent semantics?

6 Syntax and Semantics  Syntax: structure of the data  Semantics: meaning of the data  Two conditions necessary for interoperability:  Adopt a common syntax: this enables applications to parse the data.  Adopt a means for understanding the semantics: this enables applications to use the data.

7 Can XML represent semantics? …  title: a heading that names a statute or legislative bill.  title: the name of a work of art or literary composition etc.  title: a general or descriptive heading for a section of a written work.  title: the status of being a champion.  title: a legal document signed and sealed and delivered to effect a transfer of property and to show the legal right to possess it  … (from WordNet)

8 XML: limitations for semantic markup  XML makes no commitment on:  Domain-specific ontological vocabulary  Ontological modeling primitives  Requires pre-arranged agreement on  &   Only feasible for closed collaboration  agents in a small & stable community  pages on a small & stable intranet  Not suited for sharing Web-resources

9 What is the purpose of RDF?  The purpose of RDF (Resource Description Framework) is to give a standard way of specifying data "about" something.  Here's an example of an XML document that specifies data about China's Yangtze river : <River id="Yangtze" xmlns=" kilometers western China's Qinghai-Tibet Plateau East China Sea "Here is data about the Yangtze River. It has a length of 6300 kilometers. Its startingLocation is western China's Qinghai-Tibet Plateau. Its endingLocation is the East China Sea."

10 From XML to RDF <River id="Yangtze" xmlns=" kilometers western China's Qinghai-Tibet Plateau East China Sea XML <River rdf:ID="Yangtze" xmlns:rdf=" xmlns=" kilometers western China's Qinghai-Tibet Plateau East China Sea RDF Yangtze.xml Yangtze.rdf "convert to"

11 Internationalized Resource Identifier (IRI) <River rdf:ID="Yangtze" xmlns:rdf=" xmlns=" kilometers western China's Qinghai-Tibet Plateau East China Sea RDF provides an ID attribute for identifying the resource being described. The ID attribute is in the RDF namespace. Add the "fragment identifier symbol" to the namespace

12 Namespaces  Newest version: W3C Recommendation in February 4 th, 2004 (Namespaces in XML 1.1)  A simple method for qualifying element and attribute names used in XML documents  Identified by IRI references

13 RDF Namespace ID about type resource Description

14 RDF Framework Model Property TypeValue Property RDF Description Resource IRI

15 The RDF Format <Class rdf:ID="Resource" xmlns:rdf=" xmlns="uri"> value...

16 More Interpretation <River rdf:ID="Yangtze" xmlns:rdf=" xmlns=" kilometers western China's Qinghai-Tibet Plateau East China Sea Identifies the type (class) of the resource being described. Identifies the resource being described. This resource is an instance of River. These are properties, or attributes, of the type (class). Values of the properties

17 Uniquely Identify the Resource  RDF is very concerned about uniquely identifying the type (class) and the properties. RDF is also very concerned about uniquely identifying the resource, e.g., <River rdf:ID="Yangtze" xmlns:rdf=" xmlns=" kilometers western China's Qinghai-Tibet Plateau East China Sea This is the resource being described. We want to uniquely identify this resource.

18 rdf:ID  The value of rdf:ID is a "relative URI".  The "complete URI" is obtained by concatenating the URL of the XML document with "#" and then the value of rdf:ID, e.g., <River rdf:ID="Yangtze" xmlns:rdf=" xmlns=" kilometers western China's Qinghai-Tibet Plateau East China Sea Suppose that this RDF/XML document is located at this URL: Thus, the complete URI for this resource is: Yangtze.rdf

19 xml:base  By default, the URL of the document provided the base URI.  Depending on the location of the document is brittle: it will break if the document is moved, or is copied to another location.  A more robust solution is to specify the base URI in the document, e.g., <River rdf:ID="Yangtze" xmlns:rdf=" xmlns=" xml:base=" kilometers western China's Qinghai-Tibet Plateau East China Sea Resource URI = concatenation(xml:base, '#', rdf:ID) = concatenation( '#', "Yangtze") =

20 rdf:about  Instead of identifying a resource with a relative URI (which then requires a base URI to be prepended), we can give the complete identity of a resource. However, we use rdf:about, rather than rdf:ID, e.g., <River rdf:about=" xmlns:rdf=" xmlns=" kilometers western China's Qinghai-Tibet Plateau East China Sea

21 rdf:Description + rdf:type  There is another way of representing the XML. This way makes it very clear that you are describing something, and it makes it very clear what the type (class) is of the thing you are describing: <rdf:Description rdf:about=" xmlns:rdf=" xmlns=" kilometers western China's Qinghai-Tibet Plateau East China Sea

22 RDF Triple Model  RDF “statements” consist of resources (= nodes) which have properties which have values (= nodes,strings) “6300 kilometers” = subject = predicate = object “ has a of 6300 kilometers ” resource value property

23 RDF Graph Model “6300 Kilometers” “western China's Qinghai-Tibet Plateau” “East China Sea”

24 Naming Convention  The convention is to use a capital letter to start a type (class) name, and use a lowercase letter to start a property name.  This helps the eye quickly discern the striping pattern. <River rdf:about=" xmlns:rdf=" xmlns=" kilometers western China's Qinghai-Tibet Plateau East China Sea uppercase lowercase

25 Complex Values  RDF/XML can also represent graphs that include nodes that have no IRIrefs, i.e., the blank nodes, syntactically, values can be embedded (i.e. lexically in-line) or referenced (linked) …:location …:starting …:ending “western China's Qinghai-Tibet Plateau” “East China Sea”

26 Complex Values (RDF code) …:location …:starting …:ending “western China's Qinghai-Tibet Plateau” “East China Sea” <rdf:Description rdf:about=" xmlns:rdf=" xmlns=" western China's Qinghai-Tibet Plateau East China Sea

27 rdf:ID versus rdf:about  When should rdf:ID be used? When should rdf:about be used?  When you want to introduce a resource, and provide an initial set of information about a resource use rdf:ID  When you want to extend the information about a resource use rdf:about  The RDF philosophy is akin to the Web philosophy. That is, anyone, anywhere, anytime can provide information about a resource.

28 RDF Description Resource 1 Resource 2 Resource 3 PropertyType1PropertyType3 PropertyType2 PropertyType4 “Atomic Value”

29 RDF Parser  There is a nice RDF validation Web services at the W3C Web site, which will tell you if your XML is in the proper RDF format.

30 Notes of using the RDF Format  Constrained: the RDF format constrains you on how you design your XML (i.e., you can't design your XML in any arbitrary fashion).  RDF uses namespaces to uniquely identify types (classes), properties, and resources. Thus, you must have a solid understanding of namespaces.  Another XML vocabulary to learn: to use the RDF format you must learn the RDF vocabulary.

31 Two Main Areas of RDF RDF SchemaRDF Syntax RDF XML

32 RDF Schema (RDFS) Defines small vocabulary for RDF: Class, subClassOf, type Property, subPropertyOf domain, range Vocabulary can be used to define other vocabularies for your application domain The benefit of an RDFS is that it facilitates inferences on your data, and enhanced searching. Person StudentResearcher subClassOf Jeen type HasSupervisor domain range Frank type hasSuperVisor

33 Ocean Lake BodyOfWater River Stream Properties: length: Literal emptiesInto: BodyOfWater Sea NaturallyOccurringWaterSource TributaryBrook Inference Engine Inferences: - Yangtze is a Stream - Yangtze is an NaturallyOcurringWaterSource - is a BodyOfWater Yangtze.rdf Rivulet <River rdf:ID="Yangtze" xmlns:rdf=" xmlns=" kilometers

34 Ocean Lake BodyOfWater River Stream Properties: length: Literal emptiesInto: BodyOfWater Sea NaturallyOccurringWaterSource TributaryBrook <River rdf:ID="Yangtze" xmlns:rdf=" xmlns=" kilometers Search Engine Results: - Yangtze is a Stream, so this document is relevant to the query. "Show me all documents that contain info about Streams" Yangtze.rdf Rivulet

35 RDF Schemas is all about defining taxonomies (class hierarchies) <rdf:RDF xmlns:rdf=" xmlns:rdfs=" xml:base=" This is read as: "I hereby define a River Class. River is a subClassOf Stream." "I hereby define a Stream Class. Stream is a subClassOf NaturallyOccurringWaterSource."... NaturallyOccurringWaterSource.rdfs (snippet) All classes and properties are defined within rdf:RDF Defines the River class Defines the Stream class Since the Stream class is defined in the same document we can reference it using a fragment identifier. 1 2 Assigns a namespace to the taxonomy! 3 4 5

36 rdfs:Class  This type is used to define a class.  The rdf:ID provides a name for the class.  The contents are used to indicate the members of the class.  The contents are ANDed together. Name of the class ANDed

37 rdfs:subClassOf Stream River This represents the set of Streams, i.e., the set of instances of type Stream. This represents the set of Rivers, i.e., the set of instances of type River.

38 Multiple rdfs:subClassOf Properties Stream River SedimentContainer - a River is both a Stream and a SedimentContainer. The conjunction (AND) of two subClassOf statements is a subset of the intersection of the classes.

39 rdf:Property  This type is used to define a property.  The rdf:ID provides a name for the property.  The contents are used to indicate the usage of the property.  The contents are ANDed together. Name of the property ANDed

40 Example of multiple rdfs:range BodyOfWater range CoastalWater - the value of emptiesInto is a BodyOfWater and a CoastalWater.

41 Example of multiple rdfs:domain River domain Vessel - emptiesInto is to be used in instances that are of type River and Vessel.

42 Class and Property: different namespaces  Class is in the rdfs namespace.  Property is in the rdf namespace.

43 Properties are defined separately from classes  RDF Schema approach is to define a class, and then separately define properties and state that they are to be used with the class.  The advantage of this approach is that anyone, anywhere, anytime can create a property and state that it is usable with the class!

44 Problems  Equivalent classes  Cardinality constraints  More …  no precisely described meaning  no inference model

45 Beyond RDF: &  OIL (Ontology Inference Layer) extends RDF Schema to a fully-fledged knowledge representation language.  logical expressions  data-typing  cardinality  quantifiers   DAML (DARPA Agent Markup Language) = US sister of OIL  Merged as DAML+OIL in 2001  Becomes OWL W3C Recommendation in February 10 th, 2004

46 DARPA’s DAML/ W3C’s OWL Language Web Languages RDF/S XML DAML-ONT Formal Foundations Description Logics FACT, CLASSIC, DLP, … Frame Systems DAML+OIL (OWL) OIL

47 OWL Web Ontology Language OWL

48 OWL cannot be a simple semantic extension of RDF/S  Relationship between layers  Syntactically no restriction  Semantically preserve meanings  Russell’s paradox  A very large collection of built-in sets  These built-in sets include the set consisting of those sets do not contain themselves  Is this set a member of itself?  Yes? It contains itself, so no  No? It do not contain itself, so yes  Violate the very principle of set theory: set membership should be a well-defined relationship

49 OWL cannot be a simple semantic extension of RDF/S  If OWL layered on top of RDF/S as a same-syntax extension  There has to bee a large collection of built-in classes in any model  When we want to make logical foundations of classes in the extension work correctly  This collection includes the class that is defined as those resources that do not belong to the class  Russell’s paradox  RDF/S does not fall into this paradox because it does not need a large collection of built-in classes  RDFS theory of classes and properties is very weak  Not possible to give class a formula or determine which resources belong to him  OWL is designed to allow for defined classes and more relationships between classes  This richer theory clashes the underlying principle of RDF/S

50 OWL Extends RDF  RDF-schema  Class, subclass  Property, subproperty + Restrictions  Range, domain  Local, global  Existential  Cardinality + Combinators Union, Intersection Complement Symmetric, transitive + Mapping Equivalence Inverse

51 Again! What is an Ontology?  An ontology answers questions that are implicit in your data. ABCD ZXYZXY How many guns can have this serial number? How many people can have this driver's license number? Can this gun be registered in other gun licenses? How many guns/people are registered in a gun license?

52 Gun License Ontology answers the Questions! ABCD ZXYZXY Only one gun can have this serial number. Only one person can have this driver's license number. A gun can be registered in only one gun license. A gun license registers one gun to one person

53 Ontologies vs. Markups  Ontologies contain “persistent” information  Markups – data about specific instances of classes and properties  E.g., general knowledge about the class River (ontology) vs. data about specific river in a country (markup)  OWL does not enforce this separation

54 Ontologies vs. Markups <River rdf:ID="Yangtze" xmlns:rdf=" xmlns="

55 Properties

56 OWL Full, OWL DL, and OWL Lite OWL Full OWL DL OWL Lite  Description Logics provides a careful balance between expressivity and computational complexity  OWL provides sublanguages with reduced expressivity and computational complexity

57 Language Constructs: OWL Lite  Class  rdf:Property  rdfs:subClassOf  rdfs:subPropertyOf  rdfs:domain  rdfs:range  Individual  equivalentClass  equivalentProperty  sameIndividualAs  differentFrom  allDifferent  inverseOf  TransitiveProperty  SymmetricProperty  FunctionalProperty  InverseFunctionalProperty  allValuesFrom  someValuesFrom  minCardinality (only 0 or 1)  maxCardinality (only 0 or 1)  cardinality (only 0 or 1)  intersectionOf  Imports  priorVersion  …more

58 Language Constructs: DL & Full  one of  disjointWith  equivalentClass (applied to class expressions)  rdfs:subClassOf (applied to class expressions)  unionOf  intersectionOf  complementOf Arbitrary Cardinality  minCardinality  maxCardinality  cardinality  hasValue

59 More OWL example

60 More OWL example

61 Differences  OWL Lite  Support classification hierarchy and simple constraint features.  Tool support is simple  Provide a quick migration path for thesauri and other taxonomies  Support cardinality constraints, but only 0 or 1  OWL DL  Supports maximum expressiveness without losing computational completeness and decidability of reasoning systems  Support the existing Description Logic business segment  A class cannot also be an individual or property, a property can not also be an individual or class  OWL Full  Maximum expressiveness and the syntactic freedom of RDF with no computational guarantees  Allow an ontology to augment the meaning of the pre-defined (RDF or OWL) vocabulary  A class can be treated simultaneously as a collection of individuals and as an individual in its own right

62 OWL Validator  OWL Validator:   Web-based or command-line utility  Performs basic validation of OWL file  OWL Ontology Validator:   a "species validator" that checks use of OWL Lite, OWL DL, and OWL Full constructs

63