Resource Directory Description Language (RDDL)

This Version: June 1, 2003

Latest Version: http://www.rddl.org/

Previous Version: February 18, 2002

Editors:

Table of contents

  1. Introduction
  2. Background
  3. Enriching the HTML a Element
    1. The Nature of a Related Resource
    2. The Purpose of a Related Resource
  4. Related Resources for RDDL
  5. Normative References
  6. Informative References

1. Introduction

This document describes the Resource Directory Description Language (RDDL). A RDDL document, called a Resource Directory, provides a package of information about some target, including:

The targets which RDDL was designed to describe are XML Namespaces. Examples of "individual related resources" include schemas, stylesheets, and executable code designed to process markup from some namespace. A Resource Directory is designed to be suitable for service as the body of an entity returned by dereferencing a URI serving as an XML Namespace name.

The Resource Directory Description Language is an extension of XHTML Basic 1.0 with two added attributes of the a element named rddl:nature and rddl:purpose.

2. Background

The Resource Directory Description Language was initially proposed and specified after discussion on the xml-dev mailing list. RDDL reflects contributions from many participants in the xml-dev mailing list

This document has no official standing and has not been considered nor approved by any organization.

3. Enriching the HTML a Element

A Resource Directory implements links to related resources using the XHTML a element, enriched by two attributes in the namespace identified by the URI http://www.rddl.org/ (identified in this discussion by the prefix rddl). The attributes are named rddl:nature and rddl:purpose, and an XHTML a element is considered to be an entry in the resource directory if either or both of these attributes are present.

Note that there is a rich assortment of other attributes defined by HTML for the a element, to provide information about its title, language, traversal and so on; their use is encouraged in Resource Directories.

3.1 The Nature of a Related Resource

Related resources have a nature, a machine-readable label provided by the value of the rddl:nature attribute. For example, the nature of an XML Schema designed for use with a namespace would be given as rddl:nature="http://www.w3.org/2001/XMLSchema".

In cases where there is only one resource with a particular nature, the purpose of the linked resource may be inferred from this nature. For example, if there is only one related resource for a particular namespace whose nature indicates that it is a schema, processing software might infer that its purpose is to validate elements in that namespace.

The value of this attribute must be a URI reference, which must be converted to absolute form before being used. It provides a machine-readable identifier for the nature of the related resource. Software may dispatch on this value.

When the related resource is an XML language for which a namespace name has been defined, and for which the namespace name adequately distinguishes the nature of the resource, the namespace name should be used as its nature.

When the related resource is not an XML document but is adequately distinguished by a MIME type, the value of the rddl:nature attribute may reflect this MIME type with values formed by the concatenation of the prefix http://www.isi.edu/in-notes/iana/assignments/media-types/ with a MIME type e.g. http://www.isi.edu/in-notes/iana/assignments/media-types/text/css.

It is anticipated that many related-resource natures will be well known. A list of well-known natures may be found in the Resource Directory http://www.rddl.org/natures.

If a purpose but no nature is provided for a related resource, the default value is http://www.rddl.org/#resource.

3.2 The Purpose of a Related Resource

Related resources may have a purpose, a machine-readable label provided by the value of the rddl:purpose attribute. The purpose is designed to convey the intended usage of the related resource. For example, two related resources might have natures that indicate they are both schemas, but the purposes might indicate that one is designed to validate the "strict" version of the language, the other the "forgiving" form.

The value of this attribute must be a URI reference, which must be converted to absolute form before being used. It provides a machine-readable identifier for the purpose of the link to the related resource. Software may dispatch on this value.

It is anticipated that the purposes of many related resources will be well known. A list of well-known purposes may be found in the Resource Directory http://www.rddl.org/purposes.

4. Related Resources for RDDL

4.1 Well-Known Related-Resource Natures

A list of well-known related-resource natures, with descriptions.

4.2 Well-Known Related-Resource Purposes

A list of well-known related-resource purposes, with descriptions.

4.3 CSS Stylesheet

A CSS stylesheet used to provide the "look-and-feel" of this document, suitable in general for RDDL documents.

4.4 Home RDDL Directory

This resource references a RDDL document containing a collection of resources referencing other RDDL documents.

5. Normative References

  1. W3C XML Names
  2. IETF RFC 2396
  3. W3C XHTML Basic 1.0
  4. W3C XML Base
  5. W3C XPointer
  6. W3C XML Infoset

6. Informative References

  1. W3C XHTML 1.0
  2. W3C Modularization of XHTML