XML Resource Directory Description Language (RDDL) (original) (raw)
Table of contents
- Introduction
- Background
- Nature and Purpose
- resource element
- xml:base and xml:lang Attributes
- xlink Attributes
- Resources
- Normative References
- 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:
- Human-readable descriptive material about the target.
- A directory of individual resources related to the target, each directory entry containing descriptive material and linked to the resource in question.
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 an added element named [resource](#resource)
. 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 xlink:arcrole
attribute.
A DTD for RDDL has been defined usingModularization 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 http://www.rddl.org/
. 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.
2. Background
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 atthe XML Cover Pages,, and xml.com. 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
This document has no official standing and has not been considered nor approved by any organization.
3. Nature and Purpose
3.1 The Nature of a Related Resource
Related resources have a nature, a machine-readable label provided by the value of the [xlink:role](#role)
attribute. For example, the nature of an XML Schema designed for use with a namespace would be given as xlink:role="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.
3.2 The Purpose of a Related Resource
Related resources may have a purpose, a machine-readable label provided by the value of the [xlink:arcrole](#arcrole)
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.
4. The rddl:resource
Element
The resource
element is in a namespace whose name is http://www.rddl.org/
. In this discussion, we assume the use of the namespace prefixrddl
, and refer to this element as rddl:resource
. The rddl:resource
element represents a simple xlink, using the attributes defined in the XLink namespace.
The rddl:resource
must occur in the content of the HTML body
element. 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. The 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 rddl:resource
element, edited for clarity.
4.1 id
The id
attribute value may be used to give the resource description a unique identifier.
5. The xml:base
and xml:lang
Attributes
5.1 Base URI
The base URI of a RDDL document may be specified according to the W3C XML Base recommendation. The xml:base
attribute may be specified on the root html
element or on a rddl:resource
element.
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 the body
, or div
element, that contains a rddl:resource
element.
5.2 Language
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 rddl:resource
element. An html
element in an XHTML document may specify both lang
and xml:lang
attributes, but the lang
attribute is not used by RDDL processors.
6. Attributes of rddl:resource
In the following discussion, several attributes appear which are defined by XLink. For purposes of this discussion, we assume that the XLink namespace, http://www.w3.org/1999/xlink
is bound to the prefix xlink
.
6.1 xlink:role
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 thexlink: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. 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 RDDL directory http://www.rddl.org/natures.
If no nature is provided for a related resource, the default value is http://www.rddl.org/#resource
.
6.2 xlink:arcrole
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.
6.3 xlink:href
This XLink locatorattribute's value is a URI reference to the target related resource.
6.4 xlink:title
A human readable short descriptive title. This should be specified but not be seen as a replacement for descriptive content.
6.5 xlink:type
The xlink:type
is always "simple" in this version of the specification.
6.6 xlink:show
and xlink:actuate
Not used. The only legal value is "none".