W3C

Resource Description Framework (RDF)

Editors' Working Draft 24 June 2002

This version:
http://www.ninebynine.org/wip/RDF-basics/2002-06-24/Overview.htm
Latest version:
http://www.ninebynine.org/wip/RDF-basics/Current/Overview.htm
Previous version:
http://www.ninebynine.org/wip/RDF-basics/2002-06-21/Overview.htm
Editors:
Graham Klyne (Clearswift and Nine by Nine)
Jeremy Carroll (Hewlett Packard Labs)
Series editor:
Brian McBride (Hewlett Packard Labs)

Abstract

[[[tbd]]]

Status of this Document

The following text refers to the intended status of this document: it has not yet been approved by the RDF core working group an has no status other than editors' working draft at this time.

This is a W3C RDF Core Working Group Working Draft produced as part of the W3C Semantic Web Activity (Activity Statement).

This document is being released for review by W3C Members and other interested parties to encourage feedback and comments, especially with regard to how the changes affect existing implementations and content.

This is a public W3C Working Draft and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use W3C Working Drafts as reference material or to cite as other than "work in progress". A list of current W3C Recommendations and other technical documents can be found at http://www.w3.org/TR/.

Comments on this document are invited and should be sent to the public mailing list www-rdf-comments@w3.org. An archive of comments is available at http://lists.w3.org/Archives/Public/www-rdf-comments/.

Table of contents

Appendices


1. Introduction

[[[tbd -- about this document]]]

xxx

2. RDF overview

RDF is a data format for representing metadata about Web resources, and other information. It uses well established ideas from the Knowledge Representation branch of Artificial Intelligence, with recognizable relationships to Conceptual Graphs, Frames, logic-based and relational database knowedge representation forms [Sowa,CG,Luger,Hayes,Gray]. (John Sowa [Sowa] argues compellingly that these are pretty much equivalent for the purposes of knowledge representation.)

RDF builds on XML, which provides a syntactic framework for representing documents and other information. It has a simple graph-based data model and formal semantics with a rigorously defined notion of entailment, which in turn provides a basis for well founded deductions in RDF data.

The real value of RDF comes not so much from any single application, but from the possibilities for sharing data between applications. The value of information thus increases as it becomes accessible to more and more applications across the entire Internet.

2.1 Motivation

The development of RDF has been motivated by the following uses, among others:

2.2 Design goals

The design of RDF is intended to meet the following goals:

2.2.1 A simple data model

RDF has a simple data model that is easy for applications to process and manipulate. The data model is independent of any specific serialization syntax.

NOTE: the term "model" used here in "data model" has a completely different sense to its use in the term "model theory". See the RDF model theory specification [RDF-SEMANTICS] or a textbook on logical semantics (e.g. [HUNTER,DAVIS]) for more information about what logicians call "model theory".

2.2.2 Formal semantics and well-founded inference

RDF has a formal semantics which provides a sound basis for reasoning about the meaning of an RDF expression. In particular, it supports rigorously defined notions of entailment which provide a basis for defining reliable rules of inference in RDF data.

2.2.3 Extensible URI-based vocabulary

The vocabulary is fully extensible, being based on URIs with optional fragment identifiers (URIrefs). URIrefs are used for naming all kinds of things in RDF data. The only other kind of label that appears in RDF data is a literal string.

2.2.4 XML-based syntax

RDF has an XML-based serialization form which, if used appropriately, allows a wide range of "ordinary" XML data to be interpreted as RDF [STRIPEDRDF].

2.2.5 Use XML schema datatypes

RDF can be used with XML schema datatypes [XML-SCHEMA2], thus assisting the exchange of information between RDF and other XML applications.

[[[Add comment here if goal not fully achieved]]]

2.2.6 Anyone can say anything about anything

To allow operation at Internet scale, RDF is an open-world framework that allows anyone to say anything about anything. In general, it is not assumed that all information about any topic is available. A consequence of this is that RDF cannot prevent anyone from making nonsensical or inconsistent assertions, and applications that build upon RDF must find ways to deal with conflicting sources of information. (This is where RDF departs from the XML approach to data representation, which is generally quite prescriptive and aims to present an application with information that is well-formed and complete for the application's needs.)

2.2.7 Universal expression of ground facts

Through its use of extensible URI-based vocabularies, RDF aims to provide for universal expression of ground facts; i.e. assertions of specific properties about specific named things.

RDF itself does not provide the machinery of inference, but provides the raw data upon which such machinery can operate. Other work is looking for ways to build more expressive expressions on the basic capabilities of the RDF core language.

2.2.8 A basis for binding agrements

RDF is intended to convey assertions that are meaningful to the extent that they may, in appropriate contexts, be used to express the terms of binding agreements.

This goal is explored further in section 2.3 below.

2.3 Meaning of RDF documents

The RDF specification emphasizes the formal structure and meaning of RDF. But there is also a social dimension that is easily overlooked when dealing with such formal aspects.

2.3.1 Formal semantics

[[[These words adapted from Primer 7.1]]]

RDF is a language designed to support the Semantic Web, in much the same way that HTML is the language that supports the original Web. The Semantic Web aims for data to be shared and processed by automated tools as well as by people. To serve this purpose, certain meanings of RDF statements must be defined in a very precise manner; this is provided by the RDF Model Theory [RDF-SEMANTICS].

Model-theoretic semantics assumes that a language refers to a 'world', and describes the minimal conditions that a world must satisfy in order to assign an appropriate meaning for every expression in the language. A particular world is called an interpretation, so that model theory might be better called 'interpretation theory'. The idea is to provide an abstract, mathematical account of the properties that any such interpretation must have, making as few assumptions as possible about its actual nature or intrinsic structure. The RDF model theory is couched in the language of set theory simply because that is the normal language of mathematics - for example, the model theory assumes that names denote things in a set IR called the 'universe' - but the use of set- theoretic language is not supposed to imply that the things in the universe are set-theoretic in nature.

The chief utility of such a semantic theory is not to suggest any particular processing model, or to provide any deep analysis of the nature of the things being described by the language (in our case, the nature of resources), but rather to provide a technical tool to analyze the semantic properties of proposed operations on the language; in particular, to provide a way to determine when they preserve meaning.

The RDF model theory treats RDF as a simple assertional language, in which each triple makes a distinct assertion, and the meaning of any triple is not changed by adding other triples. Based on the semantics defined in the model theory, it is simple to translate an RDF graph into a logical expression with essentially the same meaning.

2.3.2 Social meaning

[[[Adapted words from DanBri/PatHayes]]]

RDF/XML documents, i.e. encodings of RDF graphs, can be used to make representations of claims or assertions about the world. RDF graphs may be asserted to be true, and such an assertion should be understood to carry the same social import and responsibilities as an assertion in any other format. A combination of social (e.g. legal) and technical machinery (protocols, file formats, publication frameworks) provide the contexts that fix the intended meanings of the vocabulary of some piece of RDF, and which distinguish assertions from other uses (e.g. citations, denals or illustrations).

A media type, application/rdf+xml has been registered for indicating the use of RDF/XML as an assertional representation in this way (see section 3.7).

2.3.3 Interaction between social and formal meaning

To support logical entailments, formal RDF meaning is based on a model theory (see section 2.3.1). The notion of truth here is crucial: a possible world may correspond to some RDF if and only if the RDF statement is true in that world. This leads to consideration of what makes a statement be true:

It is presumed here that any interesting statement about the world or human afairs must ultimately depend on assumed truths. Having accepted such an assumed truth into one's worldview, other interesting truths may be deduced by logical means. Semantic web vocabulary gains currency through use, so also do semantic web deductions ultimately have force through acceptance by people. There is a combination of logical and social (non-logical) dimensions in which semantic web deduction must operate.

The RDF code language provides a way to make simple formal assertions, with very no machinery for formalizing allowable inferences. Inferences are performed by processes, embedded in software implentations, whose validity is not formally demonstrable, and must be assumed or trusted to be valid (in relation to the world and/or human affairs). It is expected that semantic web languages layered on RDF will give formal expression to allowable inference, and to allow provable deductions by generic software modules to replace the individual ad-hoc implemenations.

2.3.4 Implications of asserting RDF

When an RDF graph is asserted in the web, its publisher is saying something about their view of the world. (The mechanism for deciding whether or not a graph is asserted is not defined here, but it is presumed that the publisher's intent will be clear in some way -- social convention or logical deduction.)

When a user invokes an application, there is also a social and technical context of invocation that determines some set of RDF assertions that will be assumed to be true: the application itself, and any RDF files that are passed to it. Garbage-in, garbage-out applies: if the initial assumed facts are wrong or meaningless, the results will have little value. No specfic mechanisms for deciding or evaluating the validity of any such assertions are defined here.

An assertion tells us something about "the world" and human affairs, through the normal model theoretic possible-world constraint mechanisms. Some of the truths that are asserted may be logical truths that can be evaluated using logical machinery. Others may be assumed truths that cannot be evaluated logically, but can be determined by human interpretation. So when we assert an RDF graph, one is stating a constraint on the real world, saying that both the logically testable and humanly interpretable truths in the graph are indeed true in that world.

In accordance with appropriately sanctioned logical entailment, it is intended that inferences may be used to deduce new RDF statements with the same force of assertion as the explicitly statements from which they are derived.

Noting that there is no single human opinion about the truth of some statements, the graph may further contain commentary for human interpreters to indicate the realm of human interpretation that should be applied. This means a graph may contain "defining information" that is opaque to logical reasoners. This information may be used by human interpreters of RDF informaton, or programmers writing software to perform specialized forms of deduction in the Semantic Web.

2.4 RDF concepts

RDF uses the following key concepts:

2.4.1 Graph data model

The underlying structure of any RDF expression is a directed labelled graph (or multigraph), which consists of nodes and labelled directed arcs that link pairs of nodes. The formal semantics for RDF is defined in terms of this graph syntax. An RDF expression is sometimes called an RDF graph. The graph can conveniently be represented as a set of triples, where each triple contains two node labels and an arc label:

Each arc corresponds to a startement that asserts a relationship between the nodes that it links. The meaning of an RDF graph is the conjunction (i.e. logical AND) of all the statements that it contains.

2.4.2 URI-based vocabulary

Nodes in an RDF graph are labelled with URIs with optional fragment identifiers (URIrefs), literal strings, or nothing at all. Arcs are labelled with URIrefs.

The label on a node indicates what that node is meant to represent. The label on an arc names the relationship that is asserted to hold between the nodes connected by that arc. Some URIrefs may indicate web resources, and a node thus labelled is presumed to denote that resource. Other URIrefs may represent abstract ideas or values rather than a retreivable Web resource. RDF thus leverages the universal naming space of URIs [URIS].

2.4.3 XML serialization syntax

RDF has a specific serialization syntax based on XML. There are several ways in which a given RDF graph can be prepresented in XML: these various forms allow RDF to be represented in ways that are amenable to specific XML applications. In this way, XML application data can easily be designed to be accessible to generic RDF processors [XML-AS-RDF].

Other syntaxes for RDF graphs are possible (e.g. [NOTATION3]), but only the XML syntax is normatively specified and recommended for use to exchange information between Internet applications.

3. RDF specification

The RDF specification defines the following components:

Further, the RDF documentation suite contains:

3.1 URI vocabulary collections

[[[designate namespace URIs/prefixes]]]

xxx

3.2 Graph syntax

[[[ref section 4]]]

xxx

3.3 Formal semantics

[[[rework this]]]

The RDF abstract graph syntax and model theory [RDF-SEMANTICS] are at the heart of the RDF specifications. This document specifies the essential elements of RDF abstract syntax, and the associated model theoretic semantics. The syntax is specified in a terms of a directed labelled graph and an equivalent representation of <subject,predciate,object> triples. Also given are entailment lemmas and their proofs. The entailment lemmas form the basis of RDF-based deduction.

Building on the core language and semantics, this specification also calls out the RDF reserved vocabulary (URIrefs) for RDF schema and RDF datatyping, also with model theoretic semantics, entailment lemmas and proofs.

This document contains a fair amount of formal mathematical content, necessary to meet some of the stated goals for RDF. Because RDF is such a simple language, the document actually serves as a quite accessible introduction to formal semantics. Developers whose sole concern is to write software that processes RDF may prefer to work from the XML syntax and RDF schema specifications, referring to this formal semantics specification to resolve occasional questions about validity of deductions.

3.4 XML serialization syntax

The RDF XML Syntax document [RDF-SYNTAX] defines the XML serialized forms for RDF graphs. The XML syntax is described in terms of the XML infoset [XML-INFOSET], and its correspondence to RDF graph triples.

3.5 RDF vocabulary definitions

The RDF Schema document [RDF-VOCABULARY] introduces and describes the use of RDF schema and datatypes vocabularies used to describe the classes and types of things described by some RDF vocabulary. The essential information in this document is covered formally in the model theory, and this specification provides a less formal account of these features of RDF.

3.5.1 RDF defined vocabulary terms

[[[List vocabulary terms defined by RDF spec, with reference to definition (e,g, section 5.x)]]]

xxx

3.6 RDF datatyping

[[[TBD -- if datatyping is finalized]]]

xxx

3.7 MIME content type registration

xxx

3.8 Test cases

The RDF Test Cases document [RDF-TESTS] provides specific examples of XML syntax and the corresponding RDF graph triples. To achieve this, it introduces a particular syntax for RDF graph triples, a very much simplified variant of Notation 3 [NOTATION3], which used to describe RDF graphs in a very direct and intuitive fashion. The test cases themselves are also published in machine-readable form at referenced Web locations, so developers may use these as the basis for some automated testing of RDF software.

The test cases document also contains a number of entailment tests, which indicate entailments that applications are licensed by the RDF specification to use as the basis of deductions in RDF data. Many of these entailments relate to inferences that can be drawn from RDF schema and RDF datatyping information.

The test cases are not a complete specification of RDF, and are not intended to take precedence over the main specification documents. However, they are intended to illustrate the intent of the working group with respect to the design of RDF, and developers may find these helpful should the specification wording be unclear on any point of detail.

3.9 Primer

The RDF Primer [RDF-PRIMER] serves two purposes:

4. Graph syntax

4.1 Reserved URIs in graph syntax

[[[note of RDF names that cannot appear in graph syntax; e.g. rdf:Description]]]

xxx

5. RDF vocabulary informal semantics

xxx

6. Additional technical considerations

xxx

6.1 Internationalization

xxx

6.2 Character normalization

xxx

6.3 Conformance

[[[anything to say?]]]

xxx

6.4 RDF in HTML

xxx

7. Acknowledgments

[[[Acknowledgements from original RDFM&S]]]

The editors acknowledge valuable contributions of the following:

8. References

6.1 Normative References

[XML]
Extensible Markup Language (XML) 1.0, Second Edition, T. Bray, J. Paoli, C.M. Sperberg-McQueen and E. Maler, Editors. World Wide Web Consortium. 6 October 2000. This version is http://www.w3.org/TR/2000/REC-xml-20001006. latest version of XML is available at http://www.w3.org/TR/REC-xml.
[XML-NS]
Namespaces in XML, T. Bray, D. Hollander and A. Layman, Editors. World Wide Web Consortium. 14 January 1999. This version is http://www.w3.org/TR/1999/REC-xml-names-19990114. The latest version of Namespaces in XML is available at http://www.w3.org/TR/REC-xml-names.
[URIS]
RFC 2396 - Uniform Resource Identifiers (URI): Generic Syntax, T. Berners-Lee, R. Fielding and L. Masinter, IETF, August 1998. This document is http://www.isi.edu/in-notes/rfc2396.txt.
[RDF-SYNTAX]
(RDF syntax...)
[RDF-SEMANTICS]
RDF Model Theory, P. Hayes, Editor. Work in progress. World Wide Web Consortium, 14 February 2002. This version of the RDF Model Theory is http://www.w3.org/TR/2002/WD-rdf-mt-20020214. The latest version of the RDF Model Theory is at http://www.w3.org/TR/rdf-mt/.
[RDF-VOCABULARY]
(RDF vocabulary and schema...)
[RDF-TESTS]
RDF Test Cases, A. Barstow and D. Beckett, Editors. Work in progress. World Wide Web Consortium, 15 November 2001. This version of the RDF Test Cases is http://www.w3.org/TR/2001/WD-rdf-testcases-20011115/. The latest version of the RDF Test Cases is at http://www.w3.org/TR/rdf-testcases.
[KEYWORDS]
RFC 2119 - Key words for use in RFCs to Indicate Requirement Levels, S. Bradner, IETF. March 1997. This document is http://www.ietf.org/rfc/rfc2119.txt.
[RFC-3023]
RFC 3032 - XML Media Types, M. Murata, S. St.Laurent, D.Kohn, IETF. January 2001. This document is http://www.ietf.org/rfc/rfc3023.txt.

6.2 Informational References

[RDF-PRIMER]
RDF Primer, F. Manola, E. Miller, Editors, World Wide Web Consortium W3C Working Draft, work in progress, 19 March 2002. This version of the RDF Primer is http://www.w3.org/TR/2002/WD-rdf-primer-20020319/. The latest version of the RDF Primer is at http://www.w3.org/TR/rdf-primer/.
[XML-INFOSET]
(XML infoset document...)
[XML-SCHEMA0]
XML Schema Part 0: Primer - W3C Recommendation, World Wide Web Consortium, 2 May 2001.
[XML-SCHEMA1]
XML Schema Part 1: Structures - W3C Recommendation, World Wide Web Consortium, 2 May 2001.
[XML-SCHEMA2]
XML Schema Part 2: Datatypes - W3C Recommendation, World Wide Web Consortium, 2 May 2001.
[SOWA]
John Sowa, Knowledge Representation, ...
[CG]
Conceptual Graphs (spec)
[LUGER]
Luger and Subblefield, Artificial Intelligence
[HAYES]
Pat Hayes... in defense of logic
[GRAY]
Peter Gray, Logic, Algebra and Databases,...
[HUNTER]
Geoffrey Hunter, Metalogic ...
[DAVIS]
Ruth E. Davis, Truth, Deduction and Computation ...
[CHARMOD]
Character Model for the World Wide Web 1.0, M. Dürst, F. Yergeau, R. Ishida, M. Wolf, A. Freytag, T Texin, Editors, World Wide Web Consortium Working Draft, work in progress, 20 February 2002. This version of the Character Model is http://www.w3.org/TR/2002/WD-charmod-20020220/. The latest version of the Character Model is at http://www.w3.org/TR/charmod/.
[STRIPEDRDF]
RDF: Understanding the Striped RDF/XML Syntax, D. Brickley, W3C, 2001. This document is http://www.w3.org/2001/10/stripes/.
[XML-AS-RDF]
(example of generic XML data that is RDF compatible - draft-klyne-xxx-rfc822-xml-xxx is one...)
[NOTATION3]
Tim Berners-Lee, DesignIssues note on N3, ...
[RDF-MS]
Resource Description Framework (RDF) Model and Syntax Specification, O. Lassila and R. Swick, Editors. World Wide Web Consortium. 22 February 1999. This version is http://www.w3.org/TR/1999/REC-rdf-syntax-19990222. The latest version of RDF M&S is available at http://www.w3.org/TR/REC-rdf-syntax.

Appendix W: Issues addressed in this document

[[[For reviewers' reference. This appendix will be removed on final publication.]]]

xxxx
xxxx

Appendix X: Outstanding issues for this document

[[[For reviewers' reference. This appendix will be removed on final publication.]]]

See: http://lists.w3.org/Archives/Public/www-archive/2001Jun/att-0021/00-part and http://www.w3.org/2000/03/rdf-tracking/.

rdfms-assertion
xxxx
rdf-charmod-uris
xxxx
rdf-charmod-literals
xxxx
rdf-namespace-change
xxxx
rdfms-identity-anon-resources
xxxx
rdfms-graph
xxxx
rdfms-literalsubjects
xxxx
rdfms-uri-substructure
xxxx
rdfms-xmllang
xxxx
rdfms-literal-is-xml-structure
xxxx
rdfms-identity-of-statements
xxxx
[RDF-MS] introduction
Sections: 1, 2.1, para60
[RDF-MS] HTML embedding
Para 75
[RDF-MS] graoh model
Section: 5
[RDF-MS] namespaces
Para 196 beginning
[RDF-MS] XML literals
Para 203 note
[RDF-MS] URIs
Para 204
[RDF-MS] Literals
Paras 216-220
[RDF-MS] xml:lang
Para 221
Vocabulary: rdfms-boolean-values-properties
xxxx
Vocabulary: rdfms-names-use
xxxx
Vocabulary: rdfms-fragments
xxxx
Vocabulary: rdfms-replace-value
xxxx
Vocabulary: rdf:value
2.2.3, 2.3
Vocabulary: containers
Para 90, 91; section 3.5
Vocabulary: reserved vocab
Para 223
Vocabulary: acknowledgements
Section 8
(?) rdfms-validating-embedded-rdf
xxxx
(?) rdf-equivalent-representations
xxxx
(?) Transporting RDF
Appendix B (drop?)
Vocabulary descriptions not covered by Schema and/or model theory
xxxx
MIME content type registration
xxxx

Appendix Y: Change log

[[[For reviewers' reference. This appendix will be removed on final publication.]]]

$Log: Overview.htm,v $
Revision 1.1  2002/06/24 16:48:33  graham
Saved 2002-06-24 working copy

Revision 1.4  2002/06/24 16:39:24  graham
Completed initial cut of section 2 text:
- 2.3.1 Semantics from Primer 7.1
- 2.3.2 social meaning adapted from text by DanBri
- 2.3.3-4 from text discussed at face-to-face
Some further renaming of sections

Revision 1.3  2002/06/24 13:27:16  graham
Update current/previous version links

Revision 1.2  2002/06/24 13:22:24  graham
Transcribe initial issue list to appendix X.
Rearrange outline with new sections for graph syntax
and informal semamntics for RDF vocabulary.

Revision 1.1  2002/06/21 14:57:22  graham
Update document name

Revision 1.3  2002/06/21 14:45:34  graham
Futher rearrangement of outline, to accommodate:
- list of RDF vocabulary terms
- RDF-in-HTML
- RDF namespaces
- Addressed issues appendix
- Note about pure syntax vocabulary (e.f. rdf:Description)
Renamed some section titles

Revision 1.2  2002/06/21 10:21:23  graham
Rearranged outline to accommodate material
from the primer on formal semantics

Revision 1.1  2002/06/20 20:47:03  graham
Initial version of document


RDF/XML Metadata