RDF (Resource Description Framework)

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

Semantic Web Thanks to folks at LAIT lab Sources include :
An Introduction to RDF(S) and a Quick Tour of OWL
CS570 Artificial Intelligence Semantic Web & Ontology 2
By Ahmet Can Babaoğlu Abdurrahman Beşinci.  Suppose you want to buy a Star wars DVD having such properties;  wide-screen ( not full-screen )  the extra.
Of 27 lecture 7: owl - introduction. of 27 ece 627, winter ‘132 OWL a glimpse OWL – Web Ontology Language describes classes, properties and relations.
1 Semantic Web Technologies: The foundation for future enterprise systems Okech Odhiambo Knowledge Systems Research Group Strathmore University.
1 Introduction to XML. XML eXtensible implies that users define tag content Markup implies it is a coded document Language implies it is a metalanguage.
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.
Descriptions Robert Grimm New York University. The Final Assignment…  Your own application  Discussion board  Think: Paper summaries  Time tracker.
Dr. Alexandra I. Cristea RDF.
Ontology and Ontology-Based Applications C. Farkas Some of the slides were obtained from presentations of Ian Horrocks.
Knowledge Technologies Manolis Koubarakis 1 An Introduction to RDF Schema.
DAML+OIL HTML XHTML XML SMILRDF(S) DCPICS. DAML+OIL Language A DAML+OIL ontology consist of –Headers –Class elements –Property elements –Instances.
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
1 DCS861A-2007 Emerging IT II Rinaldo Di Giorgio Andres Nieto Chris Nwosisi Richard Washington March 17, 2007.
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.
Chapter 6 Understanding Each Other CSE 431 – Intelligent Agents.
1 USC INFORMATION SCIENCES INSTITUTE Yolanda Gil Semantic Markup Languages: A Gentle Introduction Yolanda Gil USC/Information Sciences Institute
Okech Odhiambo Faculty of Information Technology Strathmore University
1 Representing Data with XML September 27, 2005 Shawn Henry with slides from Neal Arthorne.
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.
Semantic Web - an introduction By Daniel Wu (danielwujr)
RDF and XML 인공지능 연구실 한기덕. 2 개요  1. Basic of RDF  2. Example of RDF  3. How XML Namespaces Work  4. The Abbreviated RDF Syntax  5. RDF Resource Collections.
Chapter 7: Resource Description Framework (RDF) Service-Oriented Computing: Semantics, Processes, Agents – Munindar P. Singh and Michael N. Huhns, Wiley,
EEL 5937 Ontologies EEL 5937 Multi Agent Systems Lecture 5, Jan 23 th, 2003 Lotzi Bölöni.
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.
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.
DAML+OIL: an Ontology Language for the Semantic Web.
OIL and DAML+OIL: Ontology Languages for the Semantic Web Sungshin Lim TOWARDS THE SEMANTIC WEB: Ontology-driven Knowledge.
Introduction to the Semantic Web and Linked Data Module 1 - Unit 2 The Semantic Web and Linked Data Concepts 1-1 Library of Congress BIBFRAME Pilot Training.
Chapter 7: Resource Description Framework (RDF) Service-Oriented Computing: Semantics, Processes, Agents – Munindar P. Singh and Michael N. Huhns, Wiley,
Extensible Ontological Modeling Framework for Subject Mediation L. A. Kalinichenko, N. A. Skvortsov Institute for Problems of Informatics, RAS
Problems with XML & XML Schemas XML falls apart on the Scalability design goal. 1.The order in which elements appear in an XML document is significant.
Representing Data with XML February 26, 2004 Neal Arthorne.
Setting Up Namespaces
Practical RDF Chapter 12. Ontologies: RDF Business Models Shelley Powers, O’Reilly SNU IDB Lab. Taikyoung Kim.
EEL 5937 Ontologies EEL 5937 Multi Agent Systems Lotzi Bölöni.
Motivation Dynamically identify and understand information sources Provide interoperability between agents in a semantic manner Enable distributed extensible.
Stefan Decker Stanford University Mike Dean BBN Technologies.
W3C’s (world wide web consortium) Semantic Web: - RDF and metadata markup efforts to represent data in a machine understandable form. DARPA started the.
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.
Service-Oriented Computing: Semantics, Processes, Agents
The Semantic Web By: Maulik Parikh.
An Introduction to RDF Schema
The Semantic Web Part 6. RDF Vocabularies: RDF Schema
Building Trustworthy Semantic Webs
Service-Oriented Computing: Semantics, Processes, Agents
Service-Oriented Computing: Semantics, Processes, Agents
Tutorial on Semantic Web
Grid Computing 7700 Fall 2005 Lecture 18: Semantic Grid
RDF For Semantic Web Dhaval Patel 2nd Year Student School of IT
ece 720 intelligent web: ontology and beyond
Introduction to RDF and RDFS Editor: MR3
RDF 1.1 Concepts and Abstract Syntax
ece 720 intelligent web: ontology and beyond
Grid Computing 7700 Fall 2005 Lecture 18: Semantic Grid
DAML: The DARPA Agent Markup Language
Semantic Web Ontologies & Data Models
Semantic Web Basics (cont.)
Semantic-Web, Triple-Strores, and SPARQL
Presentation transcript:

RDF (Resource Description Framework) RDF provides a way of describing resources via metadata (data about data) It restricts the description of resources to triplets (subject,predicate,object) It provides interoperability between applications that exchange machine understandable information on the Web. The broad goal of RDF is to define a mechanism for describing resources that makes no assumptions about a particular application domain, nor defines (a priori) the semantics of any application domain. Uses XML as the interchange syntax. Provides a lightweight ontology system. The formal specification of RDF is available at: http://www.w3.org/TR/REC-rdf-syntax/

RDF Syntax Subject, Predicate and Object Triplets (Tuples) Subject: The resource being described. Predicate: A property of the resource Object: The value of the property A combination of them is said to be a Statement (or a rule) John Doe http://foo.bar.org/index.html Author A web page being described [Subject] A property of the web page (author) [Predicate] The value of the predicate (here the author) [Object]

RDF Example Namespace for the RDF spec <?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/TR/WD-rdf-syntax#" xmlns:s="http://description.org/schema/"> <rdf:Description about="http://foo.bar.org/index.html"> <s:Author>John Doe</s:Author> </rdf:Description> </rdf:RDF> Namespace for the RDF spec Namespace ‘s’, a custom namespace Subject Author (property of the subject) (Also a resource) Object. Can also point to a resource The above statement says : The Author of http://foo.bar.org/index.html is “John Doe” In this way, we can have different objects (resources) pointing to other objects (resources) , thus forming a DLG (Directed Line Graph) You can also make statements about statements – reification Ex: ‘xyz’ says that ‘ The Author of http://foo.bar.org/index.html is John Doe’

RDF Schema http://www.w3.org/TR/rdf-schema/ A schema defines the terms that will be used in the RDF statements and gives specific meanings to them. http://www.w3.org/TR/rdf-schema/ Example: <rdf:RDF xml:lang="en" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"> <rdf:Description ID="MotorVehicle"> <rdf:type resource="http://www.w3.org/2000/01/rdf-schema#Class"/> <rdfs:subClassOf rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/> </rdf:Description> <rdf:Description ID="PassengerVehicle"> <rdfs:subClassOf rdf:resource="#MotorVehicle"/> <rdf:Description ID="Truck"> RDF Schema Namespace An “ID” attribute actually defines a new resource “Resource” is the top level class PassengerVehicle is a subclass of MotorVehicle

Example (cont..) Multiple Inheritance Domain of a property <rdf:Description ID="Van"> <rdf:type resource="http://www.w3.org/2000/01/rdf-schema#Class"/> <rdfs:subClassOf rdf:resource="#MotorVehicle"/> </rdf:Description> <rdf:Description ID="MiniVan"> <rdfs:subClassOf rdf:resource="#Van"/> <rdfs:subClassOf rdf:resource="#PassengerVehicle"/> <rdf:Description ID="registeredTo"> <rdf:type resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> <rdfs:domain rdf:resource="#MotorVehicle"/> <rdfs:range rdf:resource="#Person"/> <rdf:Description ID="rearSeatLegRoom"> <rdfs:domain rdf:resource="#PassengerVehicle"/> <rdfs:domain rdf:resource="#Minivan"/> <rdfs:range rdf:resource="http://www.w3.org/2000/03/example/classes#Number"/> </rdf:RDF> Multiple Inheritance Domain of a property Range of a property

RDF: Tools/Resources SirPAC A Simple RDF Parser & Compiler. It parses the RDF, and validates it. It also generates the tuples and even draws a graph of the data model. www.w3.org/RDF/Implementations/SiRPAC/ Reggie A Nice Metadata Editor. Java based simple user interface to describe a web resource. Can mail the metadata file to yourself after finished editing. http://metadata.net/dstc/ Protégé Editor of ontologies in practically any language you care about. Open source. http://www.smi.stanford.edu/projects/protege/

Summary: RDF & RDF Schema layer Minimalist model - (thing), Class, Property Subproperty, Subclass Domain & Range Still not a W3C recommendation Continues to change Other languages are being built on XML substrate: XQUERY, XTM

The Layer Cake [TBL,XML2000]

Limitations of RDF - Cannot define properties of properties (unique, transitive) - No equivalence, disjointness, etc. - No mechanism of specifying necessary and sufficient conditions for class membership. Example: If it is given that ‘XYZ’ has a ‘car’ which is ‘7ft high’, has ‘wide wheels’ and ‘loading space is 4 cub.m’, then we should be able to reason that ‘XYZ’ has an ‘SUV’, as given by the necessary and sufficient conditions for being an ‘SUV’ : height > 4ft & wide wheels & loading space > 2 cub.m

DAML+OIL’s History W3C’s Semantic Web Activity: - RDF and metadata markup efforts to represent data in a machine understandable form. DARPA started the DARPA Agent Markup Language (DAML) program. possibly with “ARPANET -> Internet” in mind EC (European Commission) funding programs - Ontology Interchange Language (OIL) - logic based language. - brings logic and inference to the Semantic Web www.daml.org DAML+OIL: http://www.daml.org/2001/03/daml+oil-index.html

DAML+OIL (www.daml.org) It builds on earlier W3C standards such as RDF and RDF Schema. DAML extends RDF and RDFS with richer modelling primitives. disjointWith, intersectionOf, oneOf, cardinality Able to provide properties of properties uniqueness, transitivity, etc. Current version DAML+OIL provides a semantic interpretation (model-theoretic semantics) http://www.daml.org/2001/03/daml+oil-index.html

An Example (from www.daml.org) <rdf:RDF xmlns:rdf ="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:daml="http://www.daml.org/2000/12/daml+oil#" xmlns ="http://www.daml.org/2000/12/daml+oil-ex#" > <daml:Ontology about=“”> <daml:versionInfo>An example ontology</daml:versionInfo> <rdfs:Class rdf:ID="Animal"> <rdfs:label>Animal</rdfs:label> <rdfs:comment> This class of animals is illustrative of a number of ontological idioms. </rdfs:comment> </rdfs:Class> <rdfs:Class rdf:ID="Male"> <rdfs:subClassOf rdf:resource="#Animal"/> <rdfs:Class rdf:ID="Female"> <daml:disjointWith rdf:resource="#Male"/> <rdfs:Class rdf:ID="Man"> <rdfs:subClassOf rdf:resource="#Person"/> <rdfs:subClassOf rdf:resource="#Male"/> Start of an ontology (about = “” implies ‘this’ document) The label is not used for logical interpretation Can explicitly specify the set of Females to be disjoint with the set of Males The Person class is defined later To be read conjunctively. A man is a sub-class of ‘Person’ and a ‘Male’

Example (contd..) <rdfs:Class rdf:ID="Woman"> <rdfs:subClassOf rdf:resource="#Person"/> <rdfs:subClassOf rdf:resource="#Female"/> </rdfs:Class> <rdf:ObjectProperty rdf:ID="hasParent"> <rdfs:domain rdf:resource="#Animal"/> <rdfs:range rdf:resource="#Animal"/> </rdf:ObjectProperty> <rdf:ObjectProperty rdf:ID="hasFather"> <rdfs:subPropertyOf rdf:resource="#hasParent"/> <rdfs:range rdf:resource="#Male"/> <daml:DatatypeProperty rdf:ID="age"> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#nonNegativeInteger"/> </daml:DatatypeProperty <rdfs:Class rdf:ID="Person"> <rdfs:subClassOf rdf:resource="#Animal"/> <rdfs:subClassOf> <daml:Restriction> <daml:onProperty rdf:resource="#hasParent"/> <daml:toClass rdf:resource="#Person"/> </daml:Restriction> </rdfs:subClassOf> <daml:Restriction daml:cardinality="1"> <daml:onProperty rdf:resource="#hasFather"/> An objectProperty relates objects to objects Describes the element which encloses this Property Describes the value of the Property Note: Contrary to RDF, DAML takes the ‘intersection’ of the domains/ranges if multiple domains/ranges are specified A datatype property relates an object to a primitive datatype value The XML Schema datatype is referenced here The Restriction defines an anonymous class of all things that satisfy the restriction. Restrictions on the property hasParent (only for the Person class – Local scope, as opposed to rdfs:range) A person can have only another Person as it’s parent A Person can have only 1 Father

Example (contd..) Further constructs that the example doesn’t use : <rdfs:Class rdf:about="#Animal"> <rdfs:subClassOf> <daml:Restriction daml:cardinality="2"> <daml:onProperty rdf:resource="#hasParent"/> </daml:Restriction> </rdfs:subClassOf> </rdfs:Class> <rdfs:Class rdf:about="#Person"> <daml:Restriction daml:maxcardinality="1"> <daml:onProperty rdf:resource="#hasSpouse"/> Addition to the Animal Class without modifying it -- “about” Restrictions on the property hasParent An animal can have exactly 2 parents Restrictions on the property hasSpouse A person can have only 1 spouse Further constructs that the example doesn’t use : Properties: TransitiveProperty (hasAncestor), UniqueProperty (hasMother), inverseOf(hasChild -> hasParent), etc. Classes: intersectionOf (a daml:collection), unionOf (a daml:collection), sameClassAs, complementOf, etc.

DAML References/Tools DAML Viewer: It provides a means to view the instances found in a DAML document. http://www.daml.org/viewer/applet.html DAML Crawler Results: A list of .daml files on the internet http://www.daml.org/crawler/pages.html A DAML Validator http://www.daml.org/validator/ A DAML example explained: It has the same example as in the slides, discussed in detail. http://www.daml.org/2001/03/daml+oil-walkthru.html

The Layer Cake [TBL,XML2000]

The “Layer” Cake DAML+OIL WSDL DAML-O OIL RDFS XQUERY XTM XHTML RDF NOTATION 3 RDFS XQUERY XTM XHTML RDF HTML XML

W3C’s Semantic Web Principles Everything identifiable is in the Semantic Web (URIs!) Partial information Anyone can say anything about anything Web of trust All statements on the Web occur in some context Evolution Allow combining independent work done by different communities Minimalist design Make the simple things simple, and the complex things possible Standardize no more than is necessary

Hypertext: Then and Now SOTA circa 1990: Dynatext’s electronic book A book had to be compiled (like a program) in order to be displayed efficiently A central link database, to make sure there were no broken links Text that was fixed and consistent (a whole book) WWW: Links can be added and used at any time Distributed (must live with broken links!) Decentralized

Knowledge Representation: Now and Tomorrow “To webize KR in general is, in many ways, the same as to webize hypertext. Replace identifiers with URIs. Remove any requirement for global consistency. Put any significant effort into getting critical mass. Sit back.” -- TBL