rdf: concepts and abstract syntax w3c recommendation 10 february 2004 michael felderer digital...
TRANSCRIPT
RDF:Concepts and Abstract SyntaxW3C Recommendation 10 February 2004
www.w3.org/TR/2004/REC-rdf-concepts-20040210
Michael FeldererDigital Enterprise Research Institute
14-06-04
RDF: Concepts and Abstract Syntax 2
Overview
• Motivations and Goals
• RDF Concepts• RDF Vocabulary URI and Namespace (Normative)
• Datatypes (Normative)
• Abstract Syntax (Normative)
• Fragment Identifiers
RDF: Concepts and Abstract Syntax 3
Motivation
The development of RDF has been motivated by the following uses:• Web metadata: providing information about Web
resources• Applications that require open rather than constrained
information models• To do for machine processable information• Internetworking among applications• Automated processing of Web information by
software agents
RDF: Concepts and Abstract Syntax 4
Design Goals
• Simple data model
• Formal semantics and inference
• Extensible URI-based vocabulary
• XML-bases syntax
• Use XML Schema Datatypes
• Anyone can make statements about any resource
RDF: Concepts and Abstract Syntax 5
RDF Concepts
RDF uses the following key concpets:• Graph data model• URI-based vocabulary• Datatypes• Literals• XML serialization syntax• Expression of simple facts• Entailment
RDF: Concepts and Abstract Syntax 6
Graph Data Model
• Each triple represents a statement of a relationship between the things denoted by the nodes that it links
• Each triple has a subject, an object and a predicate (also called property) that denotes the relationship
• The arc always points toward the object• A set of triples is called an RDF Graph.• The nodes of an RDF graph are its subjects and objects
RDF: Concepts and Abstract Syntax 7
URI-based Vocabulary and Node Identification
• A node may be a URI with optional fragment identifier, a literal or blank• Properties are URI references• A blank node is a node that is not a URI reference or a literal. In the RDF
abstract syntax, a blank node is just a unique node that can be used in one or more RDF statements, but has no intrinsic name.Some linear representations of RDF graphs allow several statements to reference the same blank node identifier
RDF: Concepts and Abstract Syntax 8
Datatypes (1)
• Datatypes are used by RDF in the representation of values such as integers, floating point numbers and dates
• A datatype consists of a lexical space, a value space and a lexical-to-value mapping
• RDF predefines just one datatype rdf:XMLLiteral, used for embedding XML in RDF
• RDF refers to datatypes that are defined separately (XML Schema datatypes are widely used for this purpose)
• RDF provides no mechanism for defining new datatypes
Value Space {T, F}
Lexical space (Unicode strings) {"0", "1", "true", "false"}
Lexical-to-Value Mapping {<"true", T>, <"1", T>, <"0", F>, <"false", F>}
RDF: Concepts and Abstract Syntax 9
Datatypes (2): XML Content within RDF graph
• RDF provides for XML content as a possible literal value. This typically originates from the use of rdf:parseType="Literal"
• Such content is indicated in an RDF graph using a typed literal whose datatype is a special built-in datatype rdf:XMLLiteral
– lexical space: strings which are well-balanced, self-contained XML content
– value space: set of entities which are disjoint from lexical space and have a 1:1 correspondence with the lexical space
– bijective mapping between lexical and value space
RDF: Concepts and Abstract Syntax 10
Literals
• Literals are used to identify values such as numbers and dates by means of a lexical representation.
• Anything represented by a literal could also be represented by a URI, but it is often more convenient or intuitive to use literals
• A literal may be the object of an RDF statement, but not the subject or the predicate
• Literals may be plain or typed:– a plain literal is a string combined with an optional language tag
– a typed literal is a string combined with a datatype URI
Typed Literal Lexical-to-Value Mapping Value
<xsd:boolean, "true"> <"true",T> T
<xsd:boolean, "0"> <"0",F> F
RDF: Concepts and Abstract Syntax 11
RDF Expression of Simple Facts
staffid street state city postalCode
85740 1501 Grant Avenue Massachusetts Bedford 01730
STAFFADRESSES
• Arbitrary relations (rows) can be represented by a new blank node and a new triple is introduced for each cell in the row
• A more complex fact is expressed in RDF using a conjunction of simple binary relationships
• RDF does not provide means to express neagtion or disjunction
RDF: Concepts and Abstract Syntax 12
Entailment
• The ideas of meaning and inference in RDF are underpinned by the formal concept of entailment.
• An RDF expression A is said to entail another RDF expression B if every possible arrangement of things in the world that makes A true also makes B true.
RDF: Concepts and Abstract Syntax 13
Abstract Syntax (1)
• The RDF abstract syntax is a set of triples, called the RDF graph.
• An RDF triple contains three components:– subject, which is an RDF URI reference or a blank node
– predicate, which is an RDF URI reference
– object, which is an RDDF URI reference, a literal or a blank node
• An RDF graph is a set of RDF triples
• The abstract syntax is the syntax over which the formal semantics are defined. Implementations are free to represent RDF graphs in any other equivalent form
RDF: Concepts and Abstract Syntax 14
Abstract Syntax (2)• Two RDF graphs G and G' are equivalent if there is a bijection M
between the sets of nodes, such that:– M maps blank nodes to blank nodes– M(lit) = lit, M(uri) =uri– triple (s,p,o) in G iff (M(s),M(p),M(o)) is in g'
• RDF URI references are UTF-8 encoded Unicode strings that represent an absolute URI. Two RDF URI references are equal if they compare as equal character by character
• RDF literals are plain or typed and they are equal if they compare as equal character by character and have the same tag or datatype URI
• Blank nodes are drawn from an infinite set• The sets of RDF URI references, literals and blank nodes are
pairwise disjoint
</rdf:RDF>