Some Other Useful Features of RDF

Slides:



Advertisements
Similar presentations
RDF Schemata (with apologies to the W3C, the plural is not ‘schemas’) CSCI 7818 – Web Technologies 14 November 2001 Van Lepthien.
Advertisements

RDF Tutorial.
RDF Schema – Syntax and Intuition
Chapter 3 RDF Syntax 1. Topics Basic concepts of RDF resources, properties, values, statements, triples URIs and URIrefs RDF graphs Literals and Qnames.
SPARQL for Querying PML Data Jitin Arora. Overview SPARQL: Query Language for RDF Graphs W3C Recommendation since 15 January 2008 Outline: Basic Concepts.
Dr. Alexandra I. Cristea RDF.
Chapter 3A Semantic Web Primer 1 Chapter 3 Describing Web Resources in RDF Grigoris Antoniou Frank van Harmelen.
Knowledge Technologies Manolis Koubarakis 1 An Introduction to RDF Schema.
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,
1 Introduction to Semantic Web with XML RDF Dickson K.W. Chiu PhD, SMIEEE Text: Antoniou & van Harmelen: A Semantic Web PrimerA Semantic Web Primer (Chapter.
RDF, RDFS making the Web a better place Ir. Richard Vdovjak, MTD.
LDK R Logics for Data and Knowledge Representation Resource Description Framework (RDF) Fausto Giunchiglia and Biswanath Dutta Fall’2011.
Resource Description Framework (RDF)
Resource Description Framework (RDF) Lecture # 6 Faculty of Computer Science, IBA.
RDF Semantics by Patrick Hayes W3C Recommendation Presented by Jie Bao RPI Sept 4, 2008 Part 1 of RDF/OWL Semantics Tutorial.
RDF (Resource Description Framework) Why?. XML XML is a metalanguage that allows users to define markup XML separates content and structure from formatting.
Logics for Data and Knowledge Representation Resource Description Framework (RDF) Feroz Farazi.
Logics for Data and Knowledge Representation
© Copyright 2008 STI INNSBRUCK RDF and RDF Schema Semantic Web Lecture Lecture III – xx 2009 Dieter Fensel Slides.
1 Object-Orientation in Ontology Date: April 30, 2007 Byunggul Koh Taeksu Kim.
Chapter 9. 9 RDFS (RDF Schema) RDFS Part of the Ontological Primitive layer Adds features to RDF Provides standard vocabulary for describing concepts.
Of 41 lecture 4: rdf – basics and language. of 41 RDF basic ideas the fundamental concepts of RDF  resources  properties  statements ece 720, winter.
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.
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 3 RDF and RDFS Semantics. Introduction RDF has a very simple data model But it is quite liberal in what you can say Semantics can be given using.
Chapter 7: Resource Description Framework (RDF) Service-Oriented Computing: Semantics, Processes, Agents – Munindar P. Singh and Michael N. Huhns, Wiley,
RDF Containers In N3, we could say that Ed (with id 21) and Bill (with id 34) created a certain document
EEL 5937 Ontologies EEL 5937 Multi Agent Systems Lecture 5, Jan 23 th, 2003 Lotzi Bölöni.
RDF & RDF Schema Machine Understandable Metadata for the Web Semantic Web - Spring 2006 Computer Engineering Department Sharif University of Technology.
Part II. Property domain and range restriction RDFS allows us to put restriction on the properties by specifying their domain and range, providing the.
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.
Introduction The Resource Description Framework (RDF) is recommended by the World Wide Web Consortium (W3C) to model meta-data about the resources of the.
Understanding RDF. 2/30 What is RDF? Resource Description Framework is an XML-based language to describe resources. A common understanding of a resource.
Chapter 7: Resource Description Framework (RDF) Service-Oriented Computing: Semantics, Processes, Agents – Munindar P. Singh and Michael N. Huhns, Wiley,
Important Concepts from the W3C RDF Vocabulary/Schema Sungtae Kim SNU OOPSLA Lab. August 19, 2004.
Description of Information Resources: RDF/RDFS (an Introduction)
RDF/RDFS Tutorial. Introduction The Resource Description Framework (RDF) is recommended by the World Wide Web Consortium (W3C) to model meta-data about.
Practical RDF Ch.4 Specialized RDF Relationships: Reification, Containers, and Collections Kim, Jong-Nam SNU OOPSLA Lab. August 12, 2004.
Doc.: IEEE /0169r0 Submission Joe Kwak (InterDigital) Slide 1 November 2010 Slide 1 Overview of Resource Description Framework (RFD/XML) Date:
Of 38 lecture 6: rdf – axiomatic semantics and query.
EEL 5937 Ontologies EEL 5937 Multi Agent Systems Lotzi Bölöni.
Chapter 3 RDF. Introduction Problem: What does an XML document mean? – XML is about data structures – Their meaning (semantics) is not apparent to a machine.
Practical RDF Chapter 4. Specialized RDF Relationships: Reification, Containers, and Collections Shelley Powers, O’Reilly SNU IDB Lab. Hyewon Lim.
Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall RDF & RDF Schema Machine Understandable Metadata for the.
Knowledge Technologies Manolis Koubarakis 1 Some Other Useful Features of RDF.
Other RDF Capabilities. Exercise: Write the following information into a set of statements (triples) and then draw them into and RDF graph The article.
Linked Data & Semantic Web Technology The Semantic Web Part 5. Resource Description Framework (2) Dr. Myungjin Lee.
Semantic Web In Depth Resource Description Framework Dr Nicholas Gibbins –
Linked Data & Semantic Web Technology The Semantic Web Part 7. RDF Semantics Dr. Myungjin Lee.
8.3.7 Compound Property Values Property values can be ▫Literals ▫Resource ▫Container ▫Collection, or… ▫Compound Value Compound Value ▫Has multiple value.
Linked Data & Semantic Web Technology The Semantic Web Part 4. Resource Description Framework (1) Dr. Myungjin Lee.
Service-Oriented Computing: Semantics, Processes, Agents
Knowledge Representation Part VI
Charlie Abela Department of Intelligent Computer Systems
Charlie Abela Department of Intelligent Computer Systems
Chapter 2 RDF Syntax 2.
An Introduction to RDF Schema
Service-Oriented Computing: Semantics, Processes, Agents
Knowledge Representation Part VI
Resource Description Framework
Service-Oriented Computing: Semantics, Processes, Agents
Department of Artificial Intelligence
RDF 1.1 Concepts and Abstract Syntax
ece 720 intelligent web: ontology and beyond
Chapter 3 RDF and RDFS Semantics
Resource Description Framework (RDF)
Semantic Web Basics (cont.)
Presentation transcript:

Some Other Useful Features of RDF Knowledge Technologies Manolis Koubarakis

Knowledge Technologies Manolis Koubarakis Acknowledgement This presentation is based on the excellent RDF primer by the W3C available at http://www.w3.org/TR/rdf-primer/ and http://www.w3.org/2007/02/turtle/primer/ . Much of the material in this presentation is verbatim from the above Web site. Knowledge Technologies Manolis Koubarakis

Knowledge Technologies Manolis Koubarakis Presentation Outline Lists (containers and collections) Reification Knowledge Technologies Manolis Koubarakis

Knowledge Technologies Manolis Koubarakis Lists in RDF Often we want to relate a subject to a groups of things that play a similar role: for example, to say that a book was created by several authors, or to list the students in a course, or the software modules in a package. RDF provides two kinds of lists for this: Containers (open lists) Collections (closed lists) Knowledge Technologies Manolis Koubarakis

Knowledge Technologies Manolis Koubarakis Containers A container is a resource that contains things. The contained things are resources called members. RDF defines three types of containers: bags sequences alternatives The following classes are also defined in RDF for these kinds of containers: rdf:Bag rdf:Seq rdf:Alt Knowledge Technologies Manolis Koubarakis

Knowledge Technologies Manolis Koubarakis Containers (cont’d) A bag represents a group of resources or literals, possibly including duplicate members, where there is no significance in the order of the members. A sequence represents a group of resources or literals, possibly including duplicate members, where the order of the members is significant. An alternative represents a group of resources or literals that are alternatives (typically for a single value of a property). rdf:Bag, rdf:Seq and rdf:Alt are subclasses of the RDFS class rdfs:Container. Knowledge Technologies Manolis Koubarakis

RDF Containers (cont’d) To describe a resource as being one of these types of containers, the resource is given an rdf:type property whose value is one of the predefined resources rdf:Bag, rdf:Seq, or rdf:Alt. The container resource (which may either be a blank node or a resource with a URIref) denotes the group as a whole. The members of the container can be described by defining a container membership property for each member, with the container resource as its subject and the member as its object. There are built-in container membership properties with names of the form rdf:_n, where n is a decimal integer greater than zero, with no leading zeros, e.g., rdf:_1, rdf:_2, rdf:_3, and so on, and are used specifically for describing the members of containers. Container resources may also have other properties that describe the container, in addition to the container membership properties and the rdf:type property. Knowledge Technologies Manolis Koubarakis

Knowledge Technologies Manolis Koubarakis Example of Bag Consider the sentence "Course 6.001 has the students Amy, Mohamed, Johann, Maria, and Phuong" . Knowledge Technologies Manolis Koubarakis

Example of Bag (cont’d) Knowledge Technologies Manolis Koubarakis

Example of Bag (cont’d) In Turtle notation: @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>. @prefix s: <http://example.org/students/vocab#>. <http://example.org/courses/6.001> s:students [ a rdf:Bag; rdf:_1 <http://example.org/students/Amy>; rdf:_2 <http://example.org/students/Mohamed>; rdf:_3 <http://example.org/students/Johann>; rdf:_4 <http://example.org/students/Maria>; rdf:_5 <http://example.org/students/Phuong>. ]. Knowledge Technologies Manolis Koubarakis

Container Membership Properties The class rdfs:ContainerMembershipProperty has as instances all built-in container membership properties. The following triples are true for these: rdfs:ContainerMembershipProperty rdfs:subClassOf rdf:Property . rdf:_1 rdf:type rdfs:ContainerMembershipProperty . rdf:_1 rdfs:domain rdfs:Resource . rdf:_1 rdfs:range rdfs:Resource . … Knowledge Technologies Manolis Koubarakis

Container Membership Properties (cont’d) One can define his own container membership properties, for example ex:hasIngredient by asserting: ex:hasIngredient rdf:type rdfs:ContainerMembershipProperty Example: ex:GreekSalad ex:hasIngredient ex:Tomato ex:GreekSalad ex:hasIngredient ex:Cucumber ex:GreekSalad ex:hasIngredient ex:Feta Knowledge Technologies Manolis Koubarakis

Container Membership Properties (cont’d) There is also the property rdfs:member rdfs:member rdf:type rdf:Property . rdfs:member rdfs:domain rdfs:Resource . rdfs:member rdfs:range rdfs:Resource . All container membership properties are subproperties of rdfs:member rdf:_1 rdfs:subPropertyOf rdfs:member … ex:hasIngredient rdfs:subPropertyOf rdfs:member rdfs:member is useful when we want to query for all members of a container (we cannot use rdf:_1, rdf:_2 , …) Knowledge Technologies Manolis Koubarakis

Example of Alternative Consider the sentence: "The source code for X11 may be found at ftp.example.org, ftp1.example.org, or ftp2.example.org" . Knowledge Technologies Manolis Koubarakis

Example of Alternative (cont’d) Knowledge Technologies Manolis Koubarakis

Example of Alternative (cont’d) In Turtle notation: @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>. @prefix s: <http://example.org/packages/vocab#>. <http://example.org/packages/X11> s:DistributionSite [ a rdf:Alt; rdf:_1 <ftp://ftp.example.org>; rdf:_2 <ftp://ftp1.example.org>; rdf:_3 <ftp://ftp2.example.org>. ]. Knowledge Technologies Manolis Koubarakis

Containers vs. simple triples Consider the statement: Sue has written "Anthology of Time", "Zoological Reasoning", and "Gravitational Reflections". The above statement can be expressed in RDF using three triples: exstaff:Sue exterms:publication ex:AnthologyOfTime . exstaff:Sue exterms:publication ex:ZoologicalReasoning . exstaff:Sue exterms:publication ex:GravitationalReflections . Knowledge Technologies Manolis Koubarakis

Containers vs. simple triples (cont’d) Alternatively, a bag can be used: exstaff:Sue exterms:publication _:z . _:z rdf:type rdf:Bag . _:z rdf:_1 ex:AnthologyOfTime . _:z rdf:_2 ex:ZoologicalReasoning . _:z rdf:_3 ex:GravitationalReflections . Knowledge Technologies Manolis Koubarakis

Containers vs. simple triples (cont’d) However, there are cases where using a container is the most prominent modeling option. Consider the statement: The resolution was approved by the Rules Committee, having members Fred, Wilma, and Dino. The statement says that the committee as a whole approved the resolution; it does not necessarily state that each committee member individually voted in favor of the resolution. Knowledge Technologies Manolis Koubarakis

Containers vs. simple triples (cont’d) ex:resolution exterms:approvedBy ex:rulesCommittee . ex:rulesCommittee rdf:type rdf:Bag . ex:rulesCommittee rdf:_1 ex:Fred . ex:rulesCommittee rdf:_2 ex:Wilma . ex:rulesCommittee rdf:_3 ex:Dino . Knowledge Technologies Manolis Koubarakis

Containers Should be Used Carefully Example: @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>. @prefix s: <http://example.org/packages/vocab#>. <http://example.org/packages/X11> s:DistributionSite [ a rdf:Alt; a rdf:Bag; rdf:_2 <ftp://ftp.example.org>; rdf:_2 <ftp://ftp1.example.org>; rdf:_5 <ftp://ftp2.example.org> ]. The above example is a well-formed RDF desciption although the resource has been defined as an instance of both rdf:Alt and rdf:Bag. Also, the property rdf:_2 has two values. RDF does not enfoce any “well-formedness constraint” for containers. RDF applications that require containers to be "well-formed" should be written to check that the container vocabulary is being used appropriately, in order to be fully robust. Knowledge Technologies Manolis Koubarakis

Knowledge Technologies Manolis Koubarakis RDF Collections A limitation of the containers is that there is no way to close them, i.e., to say "these are all the members of the container". A container only says that certain identified resources are members; it does not say that other members do not exist. RDF provides support for describing groups containing only the specified members, in the form of RDF collections. An RDF collection is a group of things represented as a list structure in the RDF graph. This list structure is constructed using a predefined collection vocabulary consisting of the predefined type rdf:List, the predefined properties rdf:first and rdf:rest, and the predefined resource rdf:nil. RDF does not enforce well-formedness constraints for collections too; this is left to applications. Knowledge Technologies Manolis Koubarakis

Knowledge Technologies Manolis Koubarakis Example Consider the sentence “The students in course 6.001 are Amy, Mohamed and Johann" . Knowledge Technologies Manolis Koubarakis

Knowledge Technologies Manolis Koubarakis Example as Graph Knowledge Technologies Manolis Koubarakis

Knowledge Technologies Manolis Koubarakis Example in Turtle @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>. @prefix s: <http://example.org/students/vocab#>. <http://example.org/courses/6.001> s:students ( <http://example.org/students/Amy> <http://example.org/students/Mohamed> <http://example.org/students/Johann> ). Knowledge Technologies Manolis Koubarakis

Knowledge Technologies Manolis Koubarakis Presentation Outline Lists (containers and collections) Reification Knowledge Technologies Manolis Koubarakis

Reification RDF applications sometimes need to describe other RDF statements using RDF, for instance, to record information about when statements were made, who made them, or other similar information (this is sometimes referred to as “provenance” information). Example: The company example.com might want to record who made the statement exproducts:item10245 exterms:weight "2.4"^^xsd:decimal . Knowledge Technologies Manolis Koubarakis

Knowledge Technologies Manolis Koubarakis Reification (cont’d) RDF provides a built-in vocabulary intended for describing RDF statements. A description of a statement using this vocabulary is called a reification of the statement. The RDF reification vocabulary consists of the class rdf:Statement, and the properties rdf:subject, rdf:predicate, and rdf:object. Knowledge Technologies Manolis Koubarakis

Knowledge Technologies Manolis Koubarakis Example (cont’d) Assign the statement about the tent’s weight a URIref such as exproducts:triple12345. Now statements can be written describing the statement. For example: exproducts:triple12345 rdf:type rdf:Statement . exproducts:triple12345 rdf:subject exproducts:item10245 . exproducts:triple12345 rdf:predicate exterms:weight . exproducts:triple12345 rdf:object "2.4"^^xsd:decimal . Four statements like the above are usually called “the reification quad”. Knowledge Technologies Manolis Koubarakis

Knowledge Technologies Manolis Koubarakis Example (cont’d) Now we can add information about who made the statement: exproducts:triple12345 rdf:type rdf:Statement . exproducts:triple12345 rdf:subject exproducts:item10245 . exproducts:triple12345 rdf:predicate exterms:weight . exproducts:triple12345 rdf:object "2.4"^^xsd:decimal . exproducts:triple12345 dc:creator exstaff:85740 . Knowledge Technologies Manolis Koubarakis

The Statement, its Reification and its Attribution Knowledge Technologies Manolis Koubarakis

Knowledge Technologies Manolis Koubarakis Reification (cont’d) In the previous graph, nothing indicates that the original statement describing the tent's weight is the resource exproducts:triple12345, the resource that is the subject of the four reification statements and the statement that exstaff: 85740 created it. Asserting the reification is not the same as asserting the original statement, and neither implies the other. Knowledge Technologies Manolis Koubarakis

Knowledge Technologies Manolis Koubarakis Reification (cont’d) The reification mechanism of RDF is weak. Applications are left to interpret and use the reification vocabulary in a proper manner. What RDF offers is not enough to identify a particular triple that is being reified and assert information about that triple (e.g., who wrote it, when etc.) SPARQL offers us the concept of named graphs that goes beyond reification: we are allowed to name an RDF graph using a URI and then assert information about this graph as a whole. Knowledge Technologies Manolis Koubarakis

Knowledge Technologies Manolis Koubarakis Readings Chapter 2 of the book “Foundations of Semantic Web Technologies” or Chapters 2 and 3 of the Semantic Web Primer available from http://www.csd.uoc.gr/~hy566/SWbook.pdf . The following material from the Semantic Web Activity Web page on RDF http://www.w3.org/RDF/ : RDF 1.1 Primer. RDF 1.1: Concepts and Abstract Syntax Check out the linked data for the International Semantic Web Conference 2011 for some examples of using container membership functions: http://data.semanticweb.org/conference/iswc/2011/complete Knowledge Technologies Manolis Koubarakis