Chapter 7: Resource Description Framework (RDF) Service-Oriented Computing: Semantics, Processes, Agents – Munindar P. Singh and Michael N. Huhns, Wiley, 2005
Chapter 72Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns RDF Provides a basis for knowledge representation Simple language to capture assertions (statements), which help capture knowledge, e.g., about resources RDF puts together old KR ideas but uses the Web to enhance their range and avoid some longstanding problems
Chapter 73Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns Why RDF? XML Gives us a document tree Doesn’t identify the content represented by a document Enables multiple representations for the same content RDF expresses the content itself
Chapter 74Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns Resources and Literals RDF captures descriptions of resources A resource is an object Of which a description can be given Identified via a URI A literal is something simpler A value, e.g., string or integer Cannot be given a description
Chapter 75Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns Statements or Triples RDF is based on a simple grammar An RDF document is just a set of statements or triples Each statement consists of Subject: a resource (noun) Object: a resource or a literal (noun) Predicate: a resource (verb)
Chapter 76Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns Rendering RDF RDF is not about the surface syntax but the content it captures In principle, RDF is not tied to XML, which makes it verbose, but it is the common syntax, which we will use Uses standard XML namespace syntax Namespaces defined by the RDF standard Typically abbreviated rdf and rdfs
Chapter 77Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns Example (Using Dublin Core) <rdf:RDF xmlns:rdf=" syntax-ns#" xmlns:dc=" Service-Oriented Computing Munindar Michael Wiley rdf:Description gathers statements about one subject
Chapter 78Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns N-Triples Notation "Service-Oriented Computing". "Munindar". "Michael". "Wiley”. Could also write individual statements in the XML syntax, but the rdf:Description element simplifies the notation
Chapter 79Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns Collections Function as containers rdf:Bag rdf:Sequence rdf:Alt Accompanied by properties to extract elements Schematically represented as rdf:_1, and so on
Chapter 710Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns Exercise Graphs represent binary relationships naturally The vendor ships SKU-99 Express a three-party relationship The vendor ships SKU-99 quickly Hint: think of gerunds from natural language grammar
Chapter 711Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns Reification of Statements Reify: to make referenceable Needed to quote statements (e.g., to agree or disagree with them); assert modalities Make a statement into a resource; then talk about it rdf:Statement is the class whose rdf:type the given statement (object) is; additional properties such as rdf:subject, rdf:object, and rdf:predicate
Chapter 712Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns RDF Schema Analogous to an object-oriented type system built on top of RDF. Defines rdfs:Class, rdfs:subClassOf rdfs:Resource, rdfs:Literal rdfs:Property, rdfs:subPropertyOf rdfs:range, rdfs:domain rdfs:label, rdfs:comment, rdfs:seeAlso Applications of RDF Schema deferred to OWL, which greatly enhances the above
Chapter 713Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns RDF Schema versus XML Schema Both help define custom vocabularies An XML Schema document gives us syntactic details An RDF Schema document gives us meaning An OWL document (next chapter) captures richer meaning
Chapter 714Service-Oriented Computing: Semantics, Processes, Agents - Munindar Singh and Michael Huhns Chapter 7 Summary RDF captures the deep structure whereas XML captures the surface structure RDF captures graphs in general Meaning depends on the graph, not the document that represents a graph RDF is based on an simple linguistic representation: subject, predicate, object But “webified” via URIs RDF comes with RDF Schema In essence, an object-oriented type system: a vocabulary to create new vocabularies Has been used for important custom vocabularies For our purposes, best used as part of OWL