Copyright ©2002 W3C® (MIT, INRIA, Keio), All Rights Reserved. W3C liability, trademark, document use and software licensing rules apply.
[[[tbd]]]
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/.
[[[tbd -- about this document]]]
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.
The development of RDF has been motivated by the following uses, among others:
The design of RDF is intended to meet the following goals:
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-MODEL] or a textbook on logical semantics (e.g. [HUNTER,DAVIS]) for more information about what logicians call "model theory".
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.
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.
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].
RDF can be used with XML schema datatypes [XML-SCHEMA-DATATYPES], thus assisting the exchange of information between RDF and other XML applications.
[[[Add comment here if goal not fully achieved]]]
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.)
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.
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 explored further in section 2.3 below.
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.
[[[adapt words from primer 7.1]]]
[[[adapt words from F2F]]]
[[[adapt words from F2F]]]
[[[adapt words from F2F]]]
RDF uses the following key concepts:
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:
[[[picture of node --arc--> node]]]
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.
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 [I10].
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.
The RDF specification defines the following components:
Further, the RDF documentation suite contains:
[[[designate namespace URIs]]]
[[[description, and formal spec (later, maybe ref as appendix)]]]
[[[note of RDF names that cannot appear in graph syntax; e.g. rdf:Description]]]
[[[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.
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.
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.
[[[List vocabulary terms defined by RDF spec, with reference to definition]]]
[[[TBD -- if datatyping is finalized]]]
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.
The RDF Primer [RDF-PRIMER] serves two purposes:
xxx
xxx
xxx
[[[anything to say?]]]
xxx
xxx
[[[Acknowledgements from original RDFM&S]]]
The editors acknowledge valuable contributions of the following reviewers:
[[[For reviewers' reference. This appendix will be removed on final publication.]]]
xxxx
[[[For reviewers' reference. This appendix will be removed on final publication.]]]
xxxx
[[[For reviewers' reference. This appendix will be removed on final publication.]]]
$Log: Overview.htm,v $ Revision 1.4 2002/06/24 13:29:48 graham Update current/previous version links 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