[Cache version from http://www.rddl.org/20050704/, 2005-09-13]
This Version: July 4, 2005
Latest Version: http://www.rddl.org/
Previous Version: February 18, 2002
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 Resource Directory Description Language is an extension of XHTML Basic
1.0 with an added element named
This element serves as an XLink to the referenced resource, and contains
a human-readable description of the resource and machine readable links which describe
the purpose of the link and the nature of the resource being linked to.
The nature of the resource being linked to is indicated by the
xlink:role attribute and the purpose of the link is indicated by the
Alternatively namespace related resources may be specified using an
xhtml:a element with
rddl:nature (equivalent to
rddl:purpose (equivalent to
xlink:arcrole) attributes. This is a newer and more compact syntax. The previous (XLink) syntax has been retained for backward compatibility.
A DTD for RDDL has been defined using Modularization for XHTML.
This document describes the syntax and semantics of the Resource Directory Description Language 1.0,
and also serves as a Resource Directory Description for the namespace
This specification is subject to change without notice.
However, each version is associated with a version specific URI.
Version specific RDDL namespace URIs are named as: "http://www.rddl.org/" + YYYYMMDD.
Backwards incompatible changes will be publicly announced and associated with a new namespace URI.
The Resource Directory Description Language was initially proposed and
specified after discussion on the xml-dev mailing list.
Descriptions of the origins and historical context of RDDL may be found at
the XML Cover Pages,
Extending HTML with a
resource element was proposed in 1996 by Tim Berners-Lee and Dave Raggett.
RDDL reflects contributions from many participants in the xml-dev mailing
list. More recently there has been discussion of RDDL on the W3C Technical Architecture Group mailing list. Tim Bray proposed the
rddl:purpose syntax which has been incorporated into this latest draft.
This document has no official standing and has not been approved by any organization.
Related resources have a nature, a machine-readable label provided by
the value of the
For example, the nature of an XML Schema designed for use with a namespace
would be given as
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.
Related resources may have a purpose, a machine-readable label
the value of the
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.
xhtml:a element may be used to specify related resources using the
rddl:purpose attributes, just as the
rddl:resource element is used with XLink (see below).
resource element is in a namespace whose name
In this discussion, we assume the use of the namespace prefix
rddl, and refer to this element as
rddl:resource element represents a simple xlink, using the
attributes defined in the XLink namespace.
rddl:resource must occur in the content of the HTML
In the RDDL DTD, the XHTML %Flow.mix entity has been
redefined to contain
rddl:resource so it roughly may be placed anywhere a
p element may be placed.
rddl:resource element itself uses the %Flow.mix content model, and should have human-readable content
which describes the associated resource.
Here is a DTD fragment declaring the
edited for clarity.
<!ELEMENT rddl:resource (#PCDATA | %Flow.mix;)*> <!ATTLIST rddl:resource id ID #IMPLIED xml:lang NMTOKEN #IMPLIED xml:base CDATA #IMPLIED xmlns:rddl CDATA #FIXED "http://www.rddl.org/" xlink:type (simple) #FIXED "simple" xlink:arcrole CDATA #IMPLIED xlink:role CDATA "http://www.rddl.org/#resource" xlink:href CDATA #IMPLIED xlink:title CDATA #IMPLIED xlink:embed CDATA #FIXED "none" xlink:actuate CDATA #FIXED "none" >
id attribute value may be used to give the resource
description a unique identifier.
The base URI of a RDDL document may be specified according to the W3C XML Base recommendation.
xml:base attribute may be specified on the root
html element or on a
Future versions of XHTML may allow the use of
xml:base on some or all XHTML elements,
and its semantics should apply even when on another XHTML element, for example
that contains a
The language of the text contained by an element is specified by the xml:lang attribute.
This attribute can be specified on
XHTML elements and on the
html element in an XHTML document may specify both
lang attribute is not used by RDDL processors.
In the following discussion, several attributes appear which
are defined by XLink.
For purposes of this discussion, we assume that the XLink
http://www.w3.org/1999/xlink is bound to
The value of this attribute must be a URI reference. A URI reference may contain a URI part and a fragment identifier. Per XLink, when present the URI part must be an absolute URI. 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
xlink:role 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.
It is anticipated that many related-resource natures will be well known. A list of well-known natures may be found in the RDDL directory http://www.rddl.org/natures.
If no nature is provided for a related resource, the default value is
The value of this attribute must be a URI reference. A URI reference may contain a URI part and a fragment identifier. Per XLink, when present the URI part must be an absolute URI. 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 RDDL directory http://www.rddl.org/purposes.
This XLink locator attribute's value is a URI reference to the target related resource.
A human readable short descriptive title. This should be specified but not be seen as a replacement for descriptive content.
xlink:type is always "simple" in this version of the specification.
Not used. The only legal value is "none".
An RDF description of a namespace is provided via an XSLT transform. The transform is specified in a
<head profile="http://www.w3.org/2003/g/data-view"> <link rel="transformation" href="http://www.w3.org/2001/tag/2005/06/23-rddl/grddl-rddl1.xsl"/> </head>