Resource Description Framework
(RDF) Schema Specification

W3C Proposed Recommendation 03 March 1999

This Version:
Newest Version:
Dan Brickley, University of Bristol
R.V. Guha, Netscape
Document Status and errata

Copyright ©1998,1999 W3C (MIT, INRIA, Keio) , All Rights Reserved. W3C liability, trademark, document use and software licensing rules apply.

Status of this document

This document is a Proposed Recommendation of the World Wide Web Consortium. Review comments on this specification should be sent by 2359Z April 06, 1999 to <>. The archive of public comments is available at W3C Members may send their formal comments, visible only to W3C staff, to <>.

This specification is a revision of the last-call working draft dated 1998-10-30 incorporating suggestions received in review comments and further deliberations of the W3C RDF Schema Working Group. The detailed differences are available for reviewers to compare.

The Working Group anticipates no further substantial changes to this specification. We encourage active implementation to test this specification during the Proposed Recommendation review period.

Publication as a Proposed Recommendation does not imply endorsement by the W3C membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite W3C Drafts as other than "work in progress".

The Resource Description Framework is part of the W3C Metadata Activity. The goal of this activity, and of RDF specifically, is to produce a language for the exchange of machine-understandable descriptions of resources on the Web. A separate specification describes the data model and syntax for the interchange of metadata using RDF.

Note: The HTML source of this document contains embedded RDF and will therefore not validate against the HTML4.0 DTD. A solution for those requiring DTD-style validation services may come from future W3C work.

Table of Contents

  1. Introduction
  2. Classes and Properties
  3. Constraints
  4. Extensibility Mechanisms
  5. Documentation
  6. Model and Syntax concepts
  7. Examples
  8. Acknowledgments
  9. Appendix A: XML Serialization
  10. Appendix B: Dublin Core
  11. Appendix C: References

RDF Schemas

1. Introduction

The Resource Description Framework (RDF) is a foundation for processing metadata; it provides interoperability between applications that exchange machine-understandable information on the Web. RDF emphasizes facilities to enable automated processing of Web resources. RDF can be used in a variety of application areas; for example: in resource discovery to provide better search engine capabilities, in cataloging for describing the content and content relationships available at a particular Web site, page, or digital library, by intelligent software agents to facilitate knowledge sharing and exchange, in content rating, in describing collections of pages that represent a single logical "document", for describing intellectual property rights of Web pages, and for expressing the privacy preferences of a user as well as the privacy policies of a Web site. RDF with digital signatures will be key to building the "Web of Trust" for electronic commerce, collaboration, and other applications.

Descriptions used by these applications can be modelled as relationships among Web resources. The RDF data model, as specified in [RDFMS], defines a simple model for describing interrelationships among resources in terms of named properties and values. RDF properties may be thought of as attributes of resources and in this sense correspond to traditional attribute-value pairs. RDF properties also represent relationships between resources. As such, the RDF data model can therefore resemble an entity-relationship diagram. The RDF data model, however, provides no mechanisms for declaring these properties, nor does it provide any mechanisms for defining the relationships between these properties and other resources. That is the role of RDF Schema.

Resource description communities require the ability to say certain things about certain kinds of resources. For describing bibliographic resources, for example, descriptive attributes including "author", "title", and "subject" are common. For digital certification, attributes such as "checksum" and "authorization" are often required. The declaration of these properties (attributes) and their corresponding semantics are defined in the context of RDF as an RDF schema. A schema defines not only the properties of the resource (Title, Author, Subject, Size, Color, etc.) but may also define the kinds of resources being described (books, Web pages, people, companies, etc.).

This document does not specify a vocabulary of descriptive elements such as "author". Instead, it specifies the mechanisms needed to define such elements, to define the classes of resources they may be used with, to restrict possible combinations of classes and relationships, and to detect violations of those restrictions. Thus, this document defines a schema specification language. More succinctly, the RDF Schema mechanism provides a basic type system for use in RDF models. It defines resources and properties such as Class and subClassOf that are used in specifying application-specific schemas.

The typing system is specified in terms of the basic RDF data model - as resources and properties. Thus, the resources constituting this typing system become part of the RDF model of any description that uses them. The schema specification language is a declarative representation language influenced by ideas from knowledge representation (e.g. semantic nets, frames, predicate logic) as well as database schema specification languages (e.g. NIAM) and graph data models. The RDF schema specification language is less expressive, but much simpler to implement, than full predicate calculus languages such as CycL[CycL] and KIF [KIF].

RDF and the RDF Schema language were also based on metadata research in the the Digital Library community. In particular, RDF adopts a modular approach to metadata along the lines of the Warwick Framework [WF]. RDF represents an evolution of the Warwick Framework model in that the Warwick Framework allowed each metadata vocabulary to be represented in a different syntax. In RDF, all vocabularies are expressed within a single well defined model and syntax. This allows for a finer grained mixing of machine-processable vocabularies, and addresses the need [EXTWEB] to create metadata in which statements can draw upon multiple vocabularies that are managed in a decentralised fashion by various communities of expertise.

RDF Schemas might be contrasted with XML Document Type Definitions (DTDs). Unlike an XML DTD, which gives specific constraints on the structure of a document, an RDF Schema provides information about the interpretation of the statements given in an RDF data model. The RDF/XML syntax itself provides considerable flexibility in the syntactic expression of the data model. A syntactic schema alone is not sufficient for RDF purposes. RDF Schemas may also specify consistency constraints that should be followed by these data models.

1.1 Scope

The RDF Schema specification is not aimed at theoretical issues, but at solving a small number of immediate problems. Its creators expect that other problems (some of which are illustrated in the examples below) will share similar characteristics and that they also may be able to use the basic classes described in this specification.

The RDF Schema specification was directly influenced by consideration of the following problems: