Contents
- RDDL Newsbits
- RDDL Specification Documents
- RDDL Background
- Principal References and Internet Domains
- Example RDDL Documents
- Articles, Papers, News, Early References
RDDL Newsbits
[June 26, 2008] W3C Publishes Approved TAG Finding on Associating Resources with Namespaces. From the Cover Pages. In June 2008, W3C published "Associating Resources with Namespaces" as an Approved TAG Finding from the W3C Technical Architecture Group (TAG). The document addresses the question of how ancillary information (schemas, stylesheets, documentation) can be associated with an XML namespace. It offers guidance on how a namespace document can be optimally designed for humans and machines such that information at the namespace URI conforms to web architecture good practice. This TAG finding addresses TAG issue 'namespaceDocument-8': "What should a namespace document look like?"
Draft RDDL documents for specifications being developed by the OASIS WS-TX Technical Committee: Web Services Atomic Transaction (WS-AtomicTransaction), Web Services Business Activity (WS-BusinessActivity), and Web Services Coordination (WS-Coordination). See the early examples.
WS-ReliableMessaging 1.1 and WS-RM Policy 1.1 namespaces use RDDL namespace documents to describes version 1.1 of the namespace and to provide a directory of links to related resources. A Namespace URI Versioning Policy is also presented: "It is the intent of the OASIS WS-RX Technical Committee that the WS-Reliable Messaging v1.1 namespace URI will not change arbitrarily with each subsequent revision of the corresponding WSDL or XML Schema documents but rather change only when a subsequent revision, published in conjunction with a Committee Draft or Committee Specification results in non-backwardly compatible changes from a previously published Committee Draft or Specification. Under this policy, the following are examples of backwards compatible changes that would not result in assignment of a new namespace URI: [5 conditions are presented]
"Associating Resources with Namespaces." Revised DRAFT TAG Finding that incorporates RDDL v1.0 Natures and Purposes, plus an OWL appendix.
RDDL Specification Documents
[January 18, 2004] "Resource Directory Description Language (RDDL) 2.0." Edited by Jonathan Borden (The Open Healthcare Group) and Tim Bray (Antarctica Systems). Version: January 18, 2004. Latest Version URL: http://www.rddl.org/rddl2. Previous Version ('1.x'): February 18, 2002. See the announcement from Jonathan Borden. Status: "This document is a working draft that contains substantial input from the W3C Technical Architecture Group, produced in connection with the work on its issue namespaceDocument-8. [Updated in the Architecture of the World Wide Web, Volume One, W3C Recommendation 15-December-2004.] It is the consensus of the TAG that RDDL is a suitable format for use as a 'Namespace Document', that is to say as a representation yielded by dereferencing a URI in use as an XML Namespace Name. While this document has no official standing, it is the intention of the TAG to seek guidance from the W3C membership and the larger community on the question of whether and how to progress this document and the use of RDDL..." 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: (1) Human-readable descriptive material about the target (2) 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 two added attributes of the a element, named rddl:nature and rddl:purpose. See URIs For Commonly Defined Link Purposes and URIs For Common Natures of Resources. [cache v2-20040118]
[September 15, 2003] Resource Directory Description Language (RDDL) . Version: September 15, 2003. Previous Version: February 14, 2003. Latest official version: http://www.rddl.org/. Edited by Jonathan Borden (The Open Healthcare Group) and Tim Bray (Antarcti.ca Systems). "This document is a working draft that contains substantial input from the W3C Technical Architecture Group, produced in connection with the work on its issue namespaceDocument-8. It is the consensus of the TAG that RDDL is a suitable format for use as a 'Namespace Document', that is to say as a representation yielded by dereferencing a URI in use as an XML Namespace Name..." [cache]
[February 14, 2003] Resource Directory Description Language (RDDL). Version: February 14, 2003. Previous Version: February 18, 2002. Latest official version: http://www.rddl.org/. Edited by Jonathan Borden (The Open Healthcare Group) and Tim Bray (Antarcti.ca Systems). [cache]
[January 03, 2001] An initial public draft for 'Resource Directory Description Language (RDDL)' was announced by Jonathan Borden on January 03, 2001. The draft document [http://www.openhealth.org/RDDL/rddl-20010103.htm] "defines Resource Directory Description Language (RDDL). A Resource Directory provides a text description of some class of resources and of other resources related to that class. It also contains a directory of links to these related resources. An example of a class of resources is that defined by an XML Namespace. Examples of such related resources include schemas, stylesheets, and executable code. A Resource Directory Description is designed to be suitable for service as the body of a resource returned by deferencing a URI serving as an XML Namespace name. The Resource Directory Description Language is an extension of XHTML Basic 1.0 with a new element named resource. This element serves as an XLink to the referenced resource. This document defines the syntax and semantics of the Resource Directory Description Language, and also serves as a Resource Directory Description for the namespace http://www.openhealth.org/RDDL/. The Resource Directory Description 1.0 DTD has been produced as an extension of XHTML Basic 1.0. The definition uses the method described in Modularization for XHTML, based on the use of internal-subset parsed entities."
RDDL Background
[January 02, 2001] The end of calendar year 2000 saw eruption of (yet) another communal lament about the W3C XML Namespace specification, which fails to meet the requirements or expectations of some users. Resulting from the discussion: a number of new proposals for indicating "what a namespace URI should point to."
Tim Bray, one of the XML Namespace editors, licensed underground activity for a namespace markup vocabulary that could reference related resources ("it would have to be done low, fast, and under the radar...") and then floated his own suggestion for XNRL (XML Namespace Related-Resource Language). "XML Namespace Related-resource Language (XNRL) is an HTML-based markup language designed to contain a human-readable description of an XML namespace as well as pointers to multiple resources related to that namespace. Examples of such related resources include schemas, stylesheets, human-readable documentation (beyond that contained in the XNRL package) and executable code. XNRL is designed to be suitable for service as the body of a resource returned by deferencing a URI serving as an XML Namespace name. [The draft proposal] defines the syntax and semantics of XNRL, and also serves as an XNRL package for the namespace http://xnrl.org/."
Jonathan Borden presented an "XML Namespace Catalog Format." The proposal "defines a format for an XML Namespace Catalog. An XML Namespace Catalog serves as a text description of an XML Namespace and includes links to resources associated with the namespace such as schemata, stylesheets and/or other resources associated with the namespace URI. An XML Catalog may also map Formal Public Identifiers into System Identifiers defined as URI references. An XML Namespace Catalog is designed to be suitable for service as the body of a resource returned by deferencing a URI serving as an XML Namespace name. The XML Namespace Catalog format is an extension of XHTML with a new element named resource. The resource element serves as an XLink to the referenced resource. The resource element represents an XLink with two additional attributes public and content-type which provide for optional formal public identifiers and/or content type specifiers The proposal document defines the syntax and semantics of the XML Namespace Catalog Format, and also serves as an XML Catalog for the namespace http://www.openhealth.org/XMLCatalog. The XML Namespace Catalog 1.0 DTD has been produced as an extension of XHTML Basic 1.0." See also the example.
Sean B. Palmer presented also XNCL (XML Namespace Catalogue Language) as "just another hack attempt at producing an XML Namespace Catalogue Language that the people on XML-DEV will find solice in. XNCL is a language intended to be used as a de facto dereferencable resource for namespaces. XNCL uses empty div elements in the Link elements to avoid overloading them, and to allow for family derivations. The specification is an XHTML Family derived from XHTML Basic. It has been modified in the following ways: The content model for the link element has been changed so that it may now include div elements An additional resource element may now be used inside link elements, and they are of content type EMPTY..."
Note the posting from Paul Grosso on "resource discovery directory" which (1) references the work of the OASIS Entity Resolution TC, and (2) advocates a separation of concerns, viz., between ER (entity resolution) catalogs and resource discovery (RD) directories.
Principal References and Internet Domains
As of 2005-07-28, the Internet Domain rddl.org was registered to Jonathan Borden (jonathan@openhealth.org, according to Network Solutions [Domain Name: RDDL.ORG; Created On: 05-Jan-2001 21:55:17 UTC; Last Updated On: 01-Nov-2004 13:22:57 UTC; Expiration Date: 05-Jan-2006 21:55:17 UTC]
- Resource Directory Description Language web site. Specification dated to February 18, 2002 or later.
- RDDL.org web site
- RDDL 2.0. January 18, 2004. [cache v2-20040118]
- RDDL Version 'September 15, 2003'. Draft from Tim Bray, 'rddl4.html'.
- RDDL Version 'June 1, 2003'. Draft from Tim Bray, 'rddl3.html'.
- Early RDDL Contributors to RDDL design
- "What should a 'namespace document look like?" W3C Technical Architecture Group (TAG). From the TAG Issues List. Reference: 'namespaceDocument-8'. This item on the TAG issues list (namespaceDocument-8) provides a collection of references for RDDL proposals and other aspects of the TAG's deliberation on the namespace document. Covers: Request concerning the section on namespaces in "Web Architecture from 50,000 feet"; Discussion history; Transition history; Action history. As of May 2004 [see "Minutes of 12-14 May 2004 TAG FTF meeting in Boston"], this issue was pending; an action item was open for Paul Cotton to "prepare [a] finding to answer this issue, pointing to the RDDL Note..."
Example RDDL Documents
The OASIS Web Services Reliable Exchange (WS-RX) TC is using RDDL for namespace documents in connection with the Web Services Reliable Messaging (WS-ReliableMessaging) and Web Services Reliable Messaging Policy Assertion (WS-RM Policy) specifications, with namespaces for Committee Drafts v02, January 23, 2006, at http://docs.oasis-open.org/ws-rx/wsrm/200510 and http://docs.oasis-open.org/ws-rx/wsrmp/200510. Early work on this design was done by Paul Cotton, Gilbert Pilz, and Steve Winkler; Chris Ferris drafted the incorporated Namespace URI Versioning Policy. Other OASIS TCs are using or are planning to use RDDL namespace documents (e.g., OASIS Web Services Transaction (WS-TX) TC, as presented in these draft examples.
The W3C Web Services Addressing Working Group published Web Services Addressing 1.0 - Core as a Candidate Recommendation on 17-August-2005. As described in the Namespaces section 1.2: "All information items defined by this specification are identified by the XML namespace URI http://www.w3.org/2005/08/addressing [and] a normative XML Schema document can be obtained by dereferencing the XML namespace URI..." Dereferencing the namespace URI gets a RDDL namespace document with the title WS-Addressing 1.0 Namespace. It describes the WS-Addressing 1.0 namespace and contains a directory of links to the related resources, including (1) URI for the latest schema (including errata) matching the WS-Addressing 1.0 namespace; (2) URI for the dated version of the XML Schema; (3) a versioning statement: "Stability of this namespace URI: This namespace URI will be updated only if changes are made to the document are significant and impact the implementation of the specifications..."
Web Services Reliable Messaging Protocol (WS-ReliableMessaging) [source]. Said to be "February 2005" (but the path portion /2005/02 does not guarantee anything about an actual date, evidently). The namespace URI is http://schemas.xmlsoap.org/ws/2005/02/rm, which gets the RDDL namespace document when dereferenced: "This document is a directory of links to resources related to the WS-ReliableMessaging specification" including references to XSD, WSDL, and prose spec in PDF format. Updated in 2006-02.
Geography Markup Language (version 3.1.1) is described in an Encoding Specification from Open Geospatial Consortium. A namespace URI defined in the GML 3 specification is http://www.opengis.net/gml. Dereferencing this NS URI gets the RDDL namespace document for "GML - the Geography Markup Language" with description and reference to the GML 3.1.1 schema documents.
Web Services Secure Conversation Language (WS-SecureConversation). Version 1.1. May 2004. The XML Schema is here: http://schemas.xmlsoap.org/ws/2004/04/sc/ws-secureconversation.xsd. If we dereference the XML namespace URI [http://schemas.xmlsoap.org/ws/2004/04/sc], we get a (RDDL) namespace document. Note the use of the rddl:resource element facilitated in this XHTML document through the namespace declaration xmlns:rddl="http://www.rddl.org/".
RDDL Namespace Document for the Web Single Sign-On (SSO) Identity Specification. The Web Single Sign-On Metadata Exchange Protocol has an XML Schema with a namespace declaration binding 'ssi' to http://schemas.xmlsoap.org/ws/2005/04/ssi. Dereferencing the namespace URI gets an XHTML 'RDDL' document that uses the namespace declaration xmlns:rddl="http://www.rddl.org/" and references the RDDL website CSS stylesheet for display (http://www.rddl.org/xrd.css). The element rddl:resource is used. See "Microsoft and Sun Publish Web Single Sign-On (SSO) Identity Specifications."
WS-Policy namespace. Web Services Policy Framework (WS-Policy), September 2004, uses namespace "http://schemas.xmlsoap.org/ws/2004/09/policy", when dereferenced, resolves to http://schemas.xmlsoap.org/ws/2004/09/policy/, being a RDDL namespace document with the title "Web Services Policy Framework (WS-Policy) and Web Services Policy Attachment (WS-PolicyAttachment), declaring "This document is a directory of links to resources related to the WS-Policy and WS-PolicyAttachment specifications." It provides links for the schema http://schemas.xmlsoap.org/ws/2004/09/policy/ws-policy.xsd and for the two specifications The WS-Policy Framework specification and The WS-Policy Attachment specification.
Web Services Eventing (WS-Eventing) '2004/08' namespace URI is http://schemas.xmlsoap.org/ws/2004/08/eventing. The RDDL namespace document of August 2004 provides references for the Schema for WS-Eventing, the WSDL for WS-Eventing and for the specification in PDF format.
Namespace for XML Schema Part 2: Datatypes Second Edition built-in datatypes. The built-in datatypes of XML Schema Part 2 have the namespace name: http://www.w3.org/2001/XMLSchema. dereferencing this URI yields a RDDL Namespace Document that uses the rddl:resource element.
XML Schema. 13-February-2001, updated 31-March-2004. "This document describes the XML Schema namespace. It also contains a directory of links to these related resources, using Resource Directory Description Language. See the doctype declaration: <!DOCTYPE html PUBLIC "-//XML-DEV//DTD XHTML RDDL 1.0//EN" "http://www.w3.org/2001/rddl/rddl-xhtml.dtd" >. With namespace xmlns:rddl="http://www.rddl.org/" and GRDDL <head profile="http://www.w3.org/2003/g/data-view"> using the GRDDL-RDDL XSLT transform.
Articles, Papers, News, Early References
[September 17, 2009] "Proposal for XML Namespaces in OMG Specifications." By Tom Rutt (Fujitsu). OMG Final Proposal Document. Version 1. September 17, 2009. Object Management Group (OMG), like several other consortia, sponsors an initiative to define the use of XML namespaces in technical specifications. The (draft) "Proposal for XML Namespaces in OMG Specifications" (Version 1) has been prepared for submission to the OMG Architecture Board. Document summary: "Currently, within the OMG there is no consistency in how namespaces are defined and associated with XML schemas, XMI documents, and WSDL documents for OMG Specs. Moving forward, it has been suggested that the OMG should have a policy for XML Namespaces associated with OMG specs... For consistency, the most important aspect of this proposal is that a URL used for any OMG XML namespace always resolves to a RDDL document describing that namespace, and that document be in a dated directory within the file hierarchy associated with the OMG specification which defines the namespace. The RDDL document is a special type of XHTML file, which contains explanatory text describing important aspects of the namespace definition, as well as specialized html links to related resources... This proposal specifies a specific policy for URLs used for OMG schema and WSDL descriptions, which requires that the URL used for an OMG XML namespace be in a dated directory within the directory of the OMG specification which defines the namespace. The explanatory text in the OMG RDDL document for the namespace needs to include the policy used for defining and versioning the URI used for that namespace. This proposal includes a draft of the text defining the namespace versioning policy. The use of a dated URL, rather than a fixed version number, in a namespace name allows for evolution of the namespace, through subsequent XSD files which refine the valid productions in that namespace..." [cache/archive]
[June 26, 2008] W3C Publishes Approved TAG Finding on Associating Resources with Namespaces. From the Cover Pages. In June 2008, W3C published "Associating Resources with Namespaces" as an Approved TAG Finding from the W3C Technical Architecture Group (TAG). The document addresses the question of how ancillary information (schemas, stylesheets, documentation) can be associated with an XML namespace. It offers guidance on how a namespace document can be optimally designed for humans and machines such that information at the namespace URI conforms to web architecture good practice. This TAG finding addresses TAG issue 'namespaceDocument-8': "What should a namespace document look like?" The new TAG finding defines a conceptual model for identifying related resources that is simple enough to garner community consensus as a reasonable abstraction. It demonstrates how RDDL 1.0 is one possible concrete syntax for this model, and shows how other concrete syntaxes could be defined and identified in a way that would preserve the model. The specification also provides guidance on use of identifiers for indivisual terms within an XML namespace. Finally, the TAG finding discusses the use of a namespace URI as a suitable "key" for the nature of a resource encoded in an XML vocabulary, or for the purpose of a resource.
[December 10, 2007] "Parsing RDDL Documents with PHP." By Vikram Vaswani (Melonfire). From IBM developerWorks. "The Resource Directory Description Language (RDDL) lets document authors provide more information about resources used within an XHTML document. One can parse these RDDL descriptors with an API in the XML_RDDL package from PEAR, and extract resource information for use in any PHP application... If you've worked with XML before, you already know that a namespace lets you qualify XML element names by associating them with a particular URI, thus avoiding conflicts between elements which have the same name. Often, however, a single URI is not enough; what's really needed is a way to describe a namespace using multiple resources, including DTDs, XML Schemas, XSL stylesheets and software documents. RDDL helps provide users with more information on a particular resource... The XML_RDDL package is maintained by Stephan Schmidt, and released to the PHP community under a PHP license. The easiest way to install it is with the automated PEAR installer, which should have been included by default with your PHP build... XML_RDDL also requires one other PEAR package, the XML_Parser package. You can use the PEAR automated installer to install this package..."
[July 29, 2006] "XMLVS: Using Namespace Documents for XML Versioning." By Harry Halpin (School of Informatics, University of Edinburgh). Prepared for presentation at the Extreme Markup Languages 2006 Conference, August 7-11, 2006 Montréal, Canada. "What is the relationship among languages, URIs, namespaces, and namespace documents? What ought it to be? Recent discussion has clarified the utility of having namespace documents dereferenceable from the namespace URI, but current practice in the formulation of namespace documents is inconsistent and exhibits serious semantic gaps. A better approach to namespace documents can provide not only better and more consistent information about namespaces and the names in them but also help with the problem of namespace versioning. XMLVS, an XML Version System for XML Languages, provides a concrete language for managing namespace documents; it can be serialized both as human-readable XHTML RDDL documents and (if the strict version of XMLVS is used) also RDF documents. When used with the Social Versioning System (a version-control system), XMLVS allows for easy maintenance of namespace documents in line with current W3C Recommendations, and suggests some solutions for problems caused by shortcomings in current standards." See an online draft [cache].
[March 15, 2006] "RDDL me this, Batman." By Chris Ferris (IBM Software Standards Strategy Group). Blog entry for Web Services, Distributed Computing, and Interoperability (March 05, 2006). "There has been an interesting discussion on the OASIS member-discuss list [March 2006 index] regarding the use of a namespace document. If you are following the activities of the W3C TAG, then you probably have seen their draft finding on Associating Resources with Namespaces. If you haven't read that yet, you should... You may have noticed that the WSDL1.1 Binding Extension for SOAP1.2 spec published last week made use of RDDL for its namespace document. My personal opinion is that use of a namespace document is a 'Good Thing', and I am glad to see that its use is growing. It is my hope that [OASIS] will make a recommendation that its use become a recommended practice for OASIS TCs..." See a list of references for RDDL in the thread "RDDL use in ASIS" [so! that's ASIS, not OASIS, as in "Artifact Standard Identification Scheme for Metadata"]
[December 16, 2005] "Associating Resources with Namespaces." DRAFT TAG Finding. 13-December-2005. Edited by Norman Walsh (Sun Microsystems, Inc). Produced for review by the W3C Technical Architecture Group (TAG). Version URI: http://www.w3.org/2001/tag/doc/nsDocuments-2005-12-13/. Latest version URI: http://www.w3.org/2001/tag/doc/nsDocuments/. Previous version URI: http://www.w3.org/2001/tag/doc/nsDocuments-2005-12-01/. Also available in (non-normative) XML format. Send comments on this finding to the publicly archived TAG mailing list 'www-tag@w3.org'. "This Finding addresses the question of how ancillary information (schemas, stylesheets, documentation, etc.) can be associated with a namespace." New in this version: [1] Section 5 on Natures is completed. "The nature of a resource identifies the fundamental or essential characteristics of that resource. We often speak of the nature of documents in an informal manner: when we say that's an XML Schema, or that's an HTML document, or that's an XML DTD, we are identifying the nature of those documents. The RDDL Model uses a URI to uniquely identify the nature of a resource. For XML vocabularies, the namespace URI is often suitable as an identifier for the nature of a resource encoded in that vocabulary. For other resources, the URI of the normative specification is appropriate." [2] Section 6 on Purposes is completed. "Purpose is a relationship between a namespace name and another resource. Broadly, it describes the action one might take with the related resource. For example, with respect to an XML document, the purpose of an W3C XML Schema might be 'validation'. For an XHTML 1.0 document, the purpose of the XHTML Recommendation might be 'normative reference'. [3] Non-Normative Appendix B: OWL Ontology for the RDDL Model. Version note: "It became clear during our discussions at the recent f2f meeting that my examples in 'Associating Resources with Namespaces' 12/01 were wrong in some significant ways. I've tried to correct those errors, I've added the list of RDDL natures and purposes, and I've added an attempt at an OWL Ontology to define the model more precisely..."
[December 15, 2005] OASIS WS-RX TC RDDL Presentation by Gilbert Pilz (BEA) Steve Winkler (SAP). OASIS WS-RX TC work on RDDLs for namespaces being proposed for use in specifications produced by the OASIS Web Services Reliable Exchange (WS-RX) TC (Paul Cotton, Gilbert Pilz, Steve Winkler). As presented in the draft Day 2 WS-RX TC Face to Face Prelim Minutes, consensus was reached that a RDDL document is a new deliverable for the OASIS Technical Committee (Marc Goodner to add RDDL document as a new deliverable for the TC, Gilbert Pilz to post RDDL document to the editors' drafts folder on Kavi). See the example/draft RDDL proposals. Chris Ferris has experimented with microformats in a RDDLv1.0 + microformat namespace document.
[December 15, 2005] TAG Discussion on 'namespaceDocument-8 What should a namespace document look like?'. Meeting minutes from TAG F2F Afternoon of 06 December 2005. Discussion of document 'Associating Resources with Namespaces'. Includes the IRC log. Tim Berners-Lee, Dan Connolly, Roy Fielding, Noah Mendelsohn, David Orchard (phone), Ed Rice, Vincent Quint, Henry Thompson, Norm Walsh.
[December 09, 2005] "Associating Resources with Namespaces." DRAFT TAG Finding. 1-December-2005. Edited by Norman Walsh (Sun Microsystems, Inc). Produced for review by the W3C Technical Architecture Group (TAG). Version URI: http://www.w3.org/2001/tag/doc/nsDocuments-2005-12-01/. Latest version URI: http://www.w3.org/2001/tag/doc/nsDocuments/. Previous version URI: http://www.w3.org/2001/tag/doc/nsDocuments-2005-11-07/. Also available in (non-normative) XML format. Send comments on this finding to the publicly archived TAG mailing list 'www-tag@w3.org'. "This Finding addresses the question of how ancillary information (schemas, stylesheets, documentation, etc.) can be associated with a namespace." Norm says: I've updated my draft of the finding to address namespaceDocuments-8, I fleshed out Section 3.3 [previously section 5], added a new section on identifying terms within a namespace and I believe I incorporated all of the feedback I received from the first draft." Jonathan Borden (The Open Healthcare Group, co-editor of RDDL Version 1.0) wrote in a comment: "This is a really good description of how a namespace should be graphically represented i.e., as an RDF model. I've been in favor of including something like this in the RDDL document itself but there was no consensus regarding this on the XML-DEV list (and I've really tried to be an editor rather than author of RDDL). That said, I would be very pleased to see this concept published in an authoritative place..." [cache]
[November 08, 2005] "Associating Resources with Namespaces." Edited by Norman Walsh (Sun Microsystems, Inc). November 08, 2005. Draft TAG Finding for the W3C Technical Architecture Group (TAG). Prepared for November 8, 2005 TAG meeting. 2005-11-07 version, with XML. Post feedback to the publicly archived TAG mailing list 'www-tag@w3.org'. "This Finding addresses the question of how ancillary information (schemas, stylesheets, documentation, etc.) can be associated with a namespace. The document has been produced for review by the W3C Technical Architecture Group (TAG); this finding addresses TAG issue namespaceDocument-8. The Architecture of the World Wide Web, Volume 1 says that it is a Good Practice for the owner of a namespace to make available at the namespace URI 'material intended for people to read and material optimized for software agents in order to meet the needs of those who will use the namespace'. The question remains: how can we best provide both human and machine readable information at the namespace URI such that we can achieve the good practice identified by web architecture? One early attempt was RDDL 1.0; RDDL 1.0 is an XLink-based vocabulary for identifying the nature and purpose of related resources. Several attempts were made to simplify RDDL. The TAG's original plan for addressing namespaceDocument-8 was to help define a simpler, standard RDDL format. However, time has passed, RDDL 1.0 is now widely deployed. In addition, some of the proposed alternative formats are also deployed. And it seems likely that over time new variations may arise based on other evolving web standards. This finding therefore attempts to address the problem by taking a step back. We hope to: (1) Define a conceptual model for identifying related resources that is simple enough to garner community consensus as a reasonable abstraction for the problem. (2) Show how RDDL 1.0 is one possible concrete syntax for this model. (3) Show how other concrete syntaxes could be defined and identified in a way that would preserve the model..." See postings [1] [2].
[October 10, 2005] "Names for (versions of) languages: A problem statement and a proposal." [To be] presented by Henry Thompson (Reader, University of Edinburgh, UK) at XML 2005. "We need names for and machine-exploitable descriptions of (multiple versions of) XML languages and their relationships. We offer LVDL, Language Version Description Language, and a convention for using RDDL to connect language names to their descriptions." See the note in the XML-DEV thread "Versions and profiles in RDDL", a response to Robin Berjon: "I'm in the process of writing an RDDL document for a vocabulary that has up to now three versions, one of which has two profiles and another three, for a total of (at least) six different schemata. Since it's a well-behaved XML vocabulary, it doesn't change namespaces between minor versions and profiles, and therefore there will be only one RDDL document. Of course the latest and greatest schema for the largest profile (they are all strict subsets/supersets compared to one another) will validate all profiles of all versions, but some people will want to validate at one given profile of a given version..."
[September 10, 2005] Resource Directory Description Language (RDDL). This Version: July 4, 2005. Latest Version [according to some interpretation]: http://www.rddl.org/. Previous Version: February 18, 2002. Edited by Jonathan Borden, The Open Healthcare Group and Tim Bray, Antarcti.ca Systems. See the posting by Jonathan Borden [openhealth.org] to the W3C public list 'www-tag@w3.org' on September 08, 2005 and on November 16, 2005. Note this internal markup: <head profile="http://www.w3.org/2003/g/data-view"> and <link rel="transformation" href="http://www.w3.org/2001/tag/2005/06/23-rddl/grddl-rddl1.xsl"/>. Dan Connolly had said, "I'd like to see an HTML anchor a la id="integer" and for the output from GRDDL to include the triple..." [Jonathan Borden] rddl:resource can be used as the anchor i.e., <rddl:resource id="int" xlink:role="http://www.w3.org/2001/XMLSchema-datatypes"...> ... alternatively in RDDL 2.0 <a id="int" rddl:nature="http://www.w3.org/2001/XMLSchema-datatypes"> and regarding http://www.w3.org/2001/tag/2005/06/23-rddl/, please have a look at http://www.rddl.org/20050704/, (not yet complete e.g., has errors etc...) which does the following: (1) merges the RDDL 1.0 and RDDL 2.0 vocabularies in a backwards compatible fashion ... that is all valid RDDL 1.0 documents are compatible with this, [and] (2) provides the GRDDL profile. This document
is for discussion." See also GRDDL Data Views: Getting Started, Learning More. 2005/08/25 or later. [cache][September 07, 2005] namespaceDocument-8. Minutes from August 30, 2005 TAG Weekly. NDW: "... we've considered alternatives to RDDL 1.0, but since then RDDL 1.0 deployment is becoming more and more substantial; e.g., microsoft... ... and we have GRDDL that can work either way... ... yes, 2005/06/23-rddl/rddl1.xml is written in the dialect with large deployment..[HT]well, it's valid modular XHTML, but that's not supported by validat.w3.org... [DanC]: I wonder about depending on other than text/html..., sv. the GRDDL namespace doc, which is XHTML 1.x ['GRDDL Data Views: Getting Started, Learning More' [GRDDL Data Views: RDF expressed in XHTML and XML], itself a RDDL 1.0 document... [HT]: if we have the GRDDL wildcard, do we need another RDDL dialect besides 1.0? (no)..."
[June 29, 2005] "namespaceDocument-8 Notes." By Norman Walsh, prepared for the W3C TAG. Updated 29 June 2005. See the associated posting of June 24, 2005, "Revisiting namespaceDocument-8." See http://www.w3.org/2001/tag/2005/06/23-rddl/ for possible subsequent update. "At the recent f2f, the TAG discussed namespaceDocument-8 again and considered how we might make progress. I've published an outline of our ideas ... with some examples. The central idea is to get past the roadblock of picking a single format by employing GRDDL..."
[March 07, 2005] "Use RDDL instead of XML Schema at the Namespace URI?" By Jonathan Marsh. Posted to the W3C Public discussion list of the Web Services Addressing Working Group. Thursday, March 07, 2005. This became Issue i055 in the Web Services Addressing Working Issues List (Namespace URI content). Proposal in the context of WS-Addressing spec design. "Proposal: Place a RDDL document at each of the namespace URIs defined by WS-A. Provide a 'latest schema' link as well as dated links to the schema. State in the document that the resources (schemas) at the dated links are immutable, the list of dated schemas may grow to incorporate fixes, and the latest schema link will always point to the latest." Justification: "One advantage of RDDL is that it would enable one to discover, through the namespace URI, a number of schemas for the namespace. This is especially interesting when errata are taken into account. The WS-I BP promulgated some fixes to the WSDL 1.1 schema, but since it is also desirable to have a stable document at the namespace URI, it published alternative dated versions with various fixes in them, and pointed to those dated versions from the spec. It might have been simpler and more discoverable to find all the related (dated) schemas through a RDDL document at the namespace URI..." There is an example WSA RDDL online. Background: In a previous message it was noted that three "namespace" documents (at 'http://www.w3.org/2005/03/addressing/reply', 'http://www.w3.org/2005/03/addressing/role/anonymous', 'http://www.w3.org/2005/03/addressing/feature') "all link back to dated versions of the core and soap binding specs... Unfortunately, the links are broken!" [they were fixed, but it served as an example of why a RDDL document may be useful for versioning. In the January 18, 2004 version of "Resource Directory Description Language (RDDL) 2.0" the editors stated: "It is the consensus of the TAG that RDDL is a suitable format for use as a "Namespace Document", that is to say as a representation yielded by dereferencing a URI in use as an XML Namespace Name. While this document has no official standing, it is the intention of the TAG to seek guidance from the W3C membership and the larger community on the question of whether and how to progress this document and the use of RDDL." Other (February 2005 TAG thread) references: Jonathan Borden [RDDL -> RDF], Stuart Williams, Dan Connolly.
[February 18, 2005] "My RDDL Vision." By Norman Walsh. Blog Volume 6, Issue 97. October 10, 2003, modified February 18, 2005. "Deploying RDDL is dead easy. There's a little work left to dot the i's and cross the t's on a spec we can all live with, but the concept is simple. If you've got a URI that might reasonably be used to indirectly identify several things, as a namespace name might indirectly identify several schema languages, a stylesheet, reference documentation, and an unbounded number of other things, you put a RDDL document there and that document provides the level of indirection necessary to get what you're really after. Unfortunately, there's a hole in our APIs. Methods that retreive URIs directly and the various entity and URI resolver APIs all provide a few bits of information about the resource (the URI and the base URI, for example, and perhaps even a relevant public identifier). But what they don't provide is any indication about why the resource is being requested... My vision is a future where a URI resolver looks like this: Source resolve (String uri , String base , String purpose , String publicId ); Where uri is the URI as it was found in context, base is the appropriate base URI from the context, and purpose identifies the purpose for which the URI is being requested. The publicId is an optional public identifier associated with the resource. Obviously, I'm still a fan of public identifiers..."
[February 14, 2005] "RDDL Me This, Batman!" By Christopher Ferris. Blog February 14, 2005. See the complete text (gotta see it).
[May 14, 2004] "Use RDDL with Your XML and Web Services Namespaces. Don't Just Leave Your Namespaces Dangling in the Ether." By Uche Ogbuji (Principal Consultant, Fourthought, Inc). From IBM developerWorks. May 14, 2004. "Namespaces are quite popular in XML usage and indeed almost ubiquitous in Web services use. They most often take the form of URLs, although they can be any form of Uniform Resource Identifier (URI). Using URLs is not bad in itself, but it can create confusion if the URLs lead to nowhere. Users might try to address their browsers to the URL corresponding to a namespace to gain more information about it; if they do access the namespace URL, it's a good idea to be sure they reach some useful information, rather than a 404 'Not Found' error... The question then is what sort of document to place at the location of a namespace URL. Some early discussion considered using a form of schema. Since namespace URLs are mostly accessed by people looking for information, many in the XML community decided that readable documentation would be friendlier. Ideally, the document could be augmented by machine-readable metadata so that automated systems could still use the namespace URL to locate such technical material for processing XML text in the namespace, including schemata. The result of this community discussion is Resource Directory Description Language (RDDL), a standard for packaging information on a namespace. A RDDL document is an XHTML document that contains prose descriptions of the namespace. Using XHTML makes it as compatible with current browsers as possible, and takes advantage of a popular and well-known format for rich documentation. The pointers to technical resources for the namespace are expressed using embedded XLinks. I like to call RDDL documents resource glosses, a name I recommended during the community discussions from which RDDL emerged. In this article I show how you might use a RDDL document to support namespaces in XML and Web services formats. The example uses popular conventions in SOAP, although the same lessons can be applied to other XML formats. I'll be sticking to RDDL 1.0. Some in the community have started working on RDDL 2.0, but early proposals are very controversial, so I suggest that you concentrate on RDDL 1.0 until the later versions are more settled... RDDL is very easy and inexpensive to use with namespaces, and indeed some users have even used RDDL as a format for expressing general resource repositories. If you already make an effort to place, say, a schema at the end of the namespace, then you just need to add one level of indirection in the form of the resource gloss... Even though I recommend sticking to RDDL 1.0 for now, the W3C's Technical Architecture Group (TAG) is working to evolve RDDL into a more formal standard for the Web. This is part of the mix of activity that has led to confusion about the development of RDDL 2.0. Proposals now in play range from expressing RDDL in RDF to suppressing the XLink trappings, relying more on re-purposed attributes from standard XHTML. The intended result is a document format that, as Tim Bray said in one of the relevant discussions on the TAG mailing list, 'SHOULD be used for the representations of resources which happen to be namespaces'..."
[March 26, 2004] "A RDDL Repository of Core Datatypes." By Eric van der Vlist (March 26, 2004). From XMLHACK.com. "The French National Institute of Statistics and Economic Studies (INSEE) has published a first release (in French) of their identification and classification XML datatypes as a RDDL repository. INSEE is in charge of several national repositories and this set of documentations and W3C XML Schema schemas provides normative references for the XML serialization of identification and classification information involved in these repositories. These schemas and documentation do not define the format of complete XML documents, but sets of elements, attributes and datatypes to be used by any application manipulating these information. The documentation is currently available only in French but INSEE should provide English versions of next releases. This first release includes the following modules: (1) A common module used by the functional modules; (2) SIRET defining an identification system for French enterprises; (3) NIR defining an identification system for French citizens and residents; (4) ISO defining the identification of countries - based on ISO 3166-1 A2 and A3; (5) COG defining the identification of French geographical entities from regions and departments to cities; (6) NAF defining the nomenclature of activities used to classify French companies. The last three modules are also available with enumerations (ISO-enumeration, COG-enumeration and NAF-enumeration). The enumerations include the title of each value as a W3C XML Schema foreign attribute and they can be used as lookup tables. They are generated through XSLT transformation of Excel spreadsheets saved as XML..."
[February 25, 2004] "Community Developments: Riddle Me This!" By Kendall Grant Clark. From XML.com (February 25, 2004). "RDDL provides a kind of XML document suitable to put at the end of an XML namespace URI, a document which describes, by means of typed links, a bundle — schemas, transformations, even bits and bobs of code — of related resources in both human and machine readable ways. In the middle of January, Jonathan Borden (who edits the RDDL specification, together with Tim Bray) informed the XML Developer community that a new (draft, it seems) version of RDDL, version 2.0, had been posted. Borden highlighted the major change, that the new version incorporated a new syntax, not indebted to XLink, cooked up by Tim Bray. The new syntax, Borden claimed, had been unopposed for six months, was simpler, and seemed motivated by XLink's failure to "achieve traction"... Eric van der Vlist responded to Borden's note... Tim Bray responded to this "grumbling", offering some background for RDDL 2.0's changes, including three problems with RDDL 1.0. First, the "nature" and "purpose" attributes were mislabeled. Second, it was "abusing" the "semantics of the XLink spec...pretty severely". Third, it duplicated some bits of its host specification, HTML. Bray conceded van der Vlist's objection that RDDL 2.0 is less expressive than the previous version..."
[January 19, 2004] "RDDL2 Background." By Tim Bray. Posting to the WWW-TAG list. January 19, 2004. "I've been seeing the grumbling about RDDL2, and in fact it's kind of unfair to ask people to react to it without a bit of the rationale behind it. So let me provide that. I'll post a pointer to this message to xml-dev too. Here's the original idea for RDDL: 'We want a namespace document that's human-readable (to explain what the namespace is all about) and contains a machine-readable directory of related resources, like schemas and stylesheets and renderers and so on. We'll identify the related resources by 'Nature' (mime type or namespace name) and 'Purpose' an extensible list of things you might use them for. The community, including everyone from solo hackers to the Microsoft Office group, reacted well to this premise, and Jonathan (mostly) and I cooked up RDDL. There were some problems with RDDL, though..."
[January 15, 2004] "grokRDDL.xsl mapping to RDF [Mapping RDDL to RDF]." By Dan Connolly. Posting to the WWW-TAG list. January 15, 2004. "My thoughts on mapping RDDL to RDF came together tonight in the form of an XSLT transformation..."
[June 20, 2003] "Resource Directory (RDDL) for Schematron 1.5." Edited by Rick Jelliffe (Academia Sinica Computing Centre). June 20, 2003. "This document is a RDDL Resource Directory Description for Schematron 1.5, which is an XHTML document with special XLinks that locate various resources useful for Schematron, including schemas (Schematron, DTD, XML Schema)... The Schematron is a language and toolkit for making assertions about patterns found in XML documents. It can be used as a friendly validation language and for automatically generating external annotation (links, RDF, perhaps Topic Maps). Because it uses paths rather than grammars, it can be used to assert many constraints that cannot be expressed by DTDs or XML Schemas. Schematron can be trivially implemented using XSLT in two stages... Schematron can be used in any language for which there is an XSLT implementation available (e.g. FourThought's Python version of XSLT, Java, C++, Perl) and it is also possible to create a native implementation without using XSLT. Early versions were prototyped using OmniMark..."
[December 18, 2002] "The RDDL Challenge." By Micah Dubinko. From XMLhack (December 17, 2002). "On behalf of the W3C TAG [Technical Architecture Group], Tim Bray asked the XML community for examples of what documentation at the end of a namespace should look like, using RDDL (Resource Directory Description Language) as a starting point. Several interesting alternatives have been proposed. The challenge was to describe a vocabulary based on XHTML that would be able to express a few basic pieces of information: 'I'm surprised at the lack of response to date. The amount of namespace-bearing XML in the world is increasing at a very high rate, and that rate will accelerate dramatically sometime next year with the release of MS Office 11. I think it's important that we get some consensus as to what those namespace canusefully point at, to provide some interoperability in the marketplace. So, here's my proposal. Give up on XLink because this is not an end-user-oriented browsing application, and because using "role" and "arcrole" for Nature and Purpose is a kludge. Give up on RDF because there is a poor match between RDDL's goals (dereference a URI and use the results to look up other URIs in based on nature & purpose) and RDF's goals (building an inference-capable network of assertions about everything). I propose...'" See also Examples of RDDL in RDF and the list archives.
[January 7, 2002] RDDL Tutorial. By Roger L. Costello (XML Technologies). Last updated January 7, 2002 [or later]. The tutorial is covered under the GNU Open Source License Agreement. See the xFront web site. "The purpose of RDDL is to answer the question, What's at the end of a namespace? When you create a namespace you may want to provide pointers to some information (resources) for the namespace. The resources may include such things as: a specification document that defines the namespace; a schema that defines the namespace; an application that may be used to process the namespace; a stylesheet for styling instance document using the namespace; a logo for the namespace; a DTD for the namespace; an RDF schema, a Schematron schema, etc. A RDDL document is a document containing pointers to resources for a namespace... Recommendation: "The namespace spec says that a namespace must be a URI. A URI can either be a URL or a URN. I recommend that when you create a namespace you make it a URL. I recommend that the namespace URL be a valid URL, which points to a RDDL document..." [cache; see the license agreement for usage terms]
[September 2001] "Namespaces and RDDL." By C. M. Sperberg-McQueen. W3C Technical paper. September 2001. "This document discusses the rationale and practical details of using RDDL documents as the retrievable resources at URIs which serve as the names of namespaces. The primary concern is namespaces defined by the W3C; some assumptions made here may not be applicable for other namespaces. The document begins by describing some goals I take as a given. It then describes how RDDL (the Resource Directory Description Language) works [as presented by Borden/Bray in 2001]; this necessitates some brief detours into discussions of the XML Linking Language [DeRose et al. 2001]. To illustrate, I describe two concrete examples: the document at the URI which names the XML Schema namespace, and a document which would describe important resources associated with the XHTML namespace... I assume some things without further discussion here. (1) The W3C Namespaces Rec [Bray et al. 1999] does not require that a namespace name be dereferenceable. (2) It is nevertheless good practice in general for namespace names to be dereferenceable URIs. (3) The resource retrieved by dereferencing the namespace name should provide authoritative information about the namespace. (4) Some software will dereference the namespace name while searching for a schema it can use to validate data in the namespace (an XML DTD, an SGML DTD, an RDF Schema document, an XML Schema document, a SQL schema, or a schema in any of the many other schema languages used for formal definition of XML document types or other data. (5) Some software will dereference the namespace name while searching for dynamically loadable software it can use to process data in the namespace. (6) Some software will dereference the namespace name for reasons we cannot predict in advance. (7) Some human beings will dereference the namespace name in an attempt to find human-readable information explaining what the human being wants to know..[continues...] RDDL is an attempt to make it possible for the namespace resources to fulfil the goals outlined [in the preceding sections], by making it possible to provide both human-readable and machine-processable information about the namespace in the same resource. Since software will dereference the namespace name looking for very different things, and we want to avoid long arguments about whether the namespace resource should be a DTD or an XML Schema document or any of the other candidates, RDDL effectively serves as a directory of where to find the particular form of resource being sought. The RDDL vocabulary is intended as an extension to XHTML (although it could in theory be used to extend any markup language for human-readable textual material)...
[January 14, 2001] Resource Directory Description Language (RDDL). Version 'January 14, 2001'. Edited by Jonathan Borden (The Open Healthcare Group) and Tim Bray (Antarcti.ca Systems). Jonathan Borden notes: "The most substantial changes [in RDDL draft 20010114] are in the specification of the xl:role and xl:arcrole attributes. I've also placed a preliminary RELAX schema (derived from MURATA Makoto's XHTML Basic RELAX schema) as a new resource in the document (see http://www.rddl.org/#RELAX and http://www.rddl.org/#ZIP )." "This document defines Resource Directory Description Language (RDDL). A Resource Directory provides a text description of some class of resources and of other resources related to that class. It also contains a directory of links to these related resources. An example of a class of resources is that defined by an XML Namespace. Examples of such related resources include schemas, stylesheets, and executable code. A Resource Directory Description is designed to be suitable for service as the body of a resource 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. This element serves as an XLink to the referenced resource. The Resource Directory Description 1.0 DTD has been defined according to Modularization for XHTML. This document defines the syntax and semantics of the Resource Directory Description Language, and also serves as a Resource Directory Description for the namespace http://www.rddl.org/." The RDDL spec, DTDs and other contents of the directory, zipped for download ('rddl-20010114.zip'), cache. [specification cache]
[January 06, 2001] Resource Directory Description Language (RDDL). Version January 6, 2001. Edited by Jonathan Borden (The Open Healthcare Group) and Tim Bray (Antarcti.ca Systems). Namespace URI is http://www.rddl.org/. SOCAT catalog entry and RDF schema added.
[January 03, 2001] Resource Directory Description Language (RDDL). Version January 3, 2001. Edited by Jonathan Borden (The Open Healthcare Group) and Tim Bray (Antarcti.ca Systems). A change from prior drafts is the introduction of a RDDL document describing a list well known URIs to be used as xlink:arcrole=s for common resource types such as CSS, XSD, RDFS." [cache]
XML DTD modules. "A DTD for RDDL, defined using Modularization for XHTML." [cache 2001-01-03]:
xlink:arcrole attribute - "The value of this attribute must be supplied and must a URI reference. It provides a machine-readable identifier for the type of the related resource. Software perfoming resource resolution may dispatch on the this value. It is anticipated that many related-resource types will be well known."
RDDL CSS stylesheet - "used to provide the 'look-and-feel' of this [spec] document, suitable in general for RDDL documents."
'socat' CATALOG - 'The OASIS Open Catalog Format catalog for RDDL. This catalog defines PUBLIC and SYSTEM identifiers related to the DTD.'
XSLT API - ""An example of an XSLT for RDDL, which accepts the params role and arcrole. The transform inserts the document referenced by xlink:href in the output. This code is shown as an example and is not-normative to the specification."
URIs For Commonly Defined Content Types. From version 2001-01-08: "(1) The URI http://www.rddl.org/content-type.htm#DTD can be used as a well-known URI for text/xml-dtd. (2) The URI http://www.rddl.org/content-type.htm#CSS can be used as a well-known URI for the MIME type text/css. (3) The URI http://www.rddl.org/content-type.htm#XSD can be used as a well-known URI for the MIME type text/xml. (4) The URI http://www.rddl.org/content-type.htm#RDFS can be used as a well-known URI for the MIME type text/rdf+xml. (5) The URI http://www.rddl.org/content-type.htm#SOCAT can be used as a well known URI for the MIME type text/sgml-open-catalog."
RDDL API. Note of 2001-01-06: "some code has been placed at: http://www.rddl.org/org/rddl which demonstates the beginnings of a RDDL API. I haven't tried to compile it yet but I wanted to let people know where this project is located, in particular several people are looking at RDDL APIs for other languages, and this way we can all see what is going on. In particular support is being developed for interoperability with URLs that don't resolve to RDDL. The only information we generally get about such resources is their content-type as told by the HTTP server, and what we can figure out by parsing the contents. Additional support will be developed for clients which don't support RDDL but who specifically ask for a particular content-type (e.g., a particular RDDL document can define content-type="application/xml" as identifing an XML Schema)."
[January 14, 2001] "I've implemented a simple RDDL 'parser' for use on Microsoft's .NET platform. The source archive, the API documentation, and a test web application that can extract the resources out of any online RDDL directory are available [online]. The API isn't quite usable enough for the type of processing that we're looking for yet but it's a start. I'd appreciate any and all comments that you might have..." From Jason Diamond, Sun, 14 Jan 2001.
Announcement 2001-01-03 from Jonathan Borden: "...A Resource Directory provides a text description of some class of resources and of other resources related to that class. It also contains a directory of links to these related resources. An example of a class of resources is that defined by an XML Namespace. Examples of such related resources include schemas, stylesheets, and executable code. A Resource Directory Description is designed to be suitable for service as the body of a resource returned by deferencing a URI serving as an XML Namespace name. The Resource Directory Description Language is an extension of XHTML Basic 1.0 with a new element named resource. This element serves as an XLink to the referenced resource."
[March 03, 2001] "Tutorial: Answering the Namespace Riddle. An Introduction to the Resource Directory Description Language." By Leigh Dodds. From XML.com. February 28, 2001. ['Dodds introduces RDDL, the Resource Directory Description Language, the result of a recent project conducted by the XML developer community to make XML namespaces easier to use.'] "This tutorial introduces the Resource Directory Description Language (RDDL), which is the result of a recent project conducted by the XML-DEV community. It provides an overview of RDDL's very simple vocabulary and the benefits it can bring to XML applications. Namespaces are now a common feature of any new XML vocabulary. While their use is spreading, there is still a great deal of controversy associated with them. The controversy has generally focused on the choice and use of URIs, or more commonly URLs, as Namespace identifiers. While the XML Namespaces specification notes that URIs were selected merely as a unique identification system, it is silent on the issue of what, if anything, those URIs should point to. The received wisdom, as documented in the Namespace FAQ, is that these URIs are not meant to point to anything. Paste one into your web browser, and you'll likely get '404 Not Found' error. URLs have become synonymous with web resources -- developers and Internet users alike expect to be able to point their browsers at these URLs and obtain something intelligible. In response to this expectation, many developers have begun placing useful resources at a namespace URL. For example, the RSS 1.0 specification is found at the RSS namespace URI. Other XML applications place XML schemas, of different varieties, at these URLs, giving a handy place for applications to retrieve schemas during processing. This unregulated practice, and more importantly the mixture of resources that might appear at these URLs, has lead to controversy in XML circles. Some believe that the practice should be deprecated, others that it must be regulated in some way. Following a recent resurgence of this debate on XML-DEV a consensus was finally reached. A namespace URL should point to a directory of resources rather than a single web page or schema. Thus RDDL was born... The real benefits of RDDL will be realized as namespace URIs are populated with RDDL documents; and as applications can routinely rely on them as a source of required resources. In the short term the lack of use can be encapsulated within RDDL APIs until the network effect takes hold. RDDL can also facilitate the development of new types of application. By traversing a number of RDDL documents, it's possible for an XML processor to piece together a pipeline of transformations that may be applied to a given document. If the processor needs to transform a document from language X into language Y, it may be able to find one or more intermediate transforms if no direct route is available -- a kind of simple inference which may be key to Semantic Web applications. The XML community has long desired a true XML browser, an application that can display and manipulate any kind of XML document. A key XML browser component is a way to download dynamically new behaviors to deal with unknown document types. With appropriate application code referenced from RDDL resource elements, this kind of dynamic adoption becomes much easier. In short, RDDL is a elegant little language that can resolve much of the confusion and debate over XML Namespaces, while providing the means to build some very interesting applications."
[February 27, 2001] "RDDL Me This: What Does a Namespace URL Locate?" By Elliotte Rusty Harold. ['Harold reports that the answer was nothing, until the Resource Directory Description Language, or RDDL, was conceived. This article introduces RDDL and namespace URIs. It includes resource information and downloadable code depicting an RDDL document.'] "No W3C specification has been as controversial as Namespaces in XML. It was the first specification the W3C (World Wide Web Consortium) recommended over significant (though far from unanimous) opposition from the affected community. At the time, there were numerous objections. Some developers didn't like the attribute-based syntax that replaced the processing instructions used in earlier working drafts. Others were concerned with the near incompatibility of DTDs (Document Type Definitions) and namespaces. However, since the recommendation was published in early 1999, one problem has grown to tower over all others: the question of what one finds at the end of a namespace URI (Uniform Resource Identifier). The W3C has an answer to this question: There is nothing at all at the end of a namespace URI, except perhaps a 404 Not Found error. One reason the W3C wanted to avoid putting anything at the end of a namespace URI is that it wasn't clear what to put there. Should it be a DTD? a schema? a Java-content handler for processing the document? a style sheet? something else? There are simply too many good choices to limit developers to any one of these. Unfortunately, this answer seems to be one that developers are unable or unwilling to hear. With few exceptions, namespace URIs are URLs, Uniform Resource Locators, and it's not unreasonable for users to expect a URL to locate a resource. However, namespace URLs are identifiers, not locators. Thus, the error logs of the W3C and other purveyors of XML specifications have been filling up with requests for nonexistent pages at the end of namespace URLs, and XML mailing lists are besieged with questions about whether one can run an XML parser on a machine that isn't connected to the Internet and is thus unable to resolve the namespace URL. After addressing this issue again and again on various mailing lists, Tim Bray and Jonathan Borden decided to do something about it. If they couldn't convince developers that there wasn't anything at the end of a namespace URL, then maybe it would be a good idea to invent something to put there. What they came up with was the Resource Directory Description Language, RDDL for short. RDDL is an extensible XML application for documents that live at namespace URLs. RDDL is designed to allow both human readers and software robots to find any sort of resource associated with a particular namespace. Instead of putting one thing at the end of a namespace URI, RDDL puts a document there that lists all the machine-processable documents that might be available, including, but not limited to: (1) DTDs; (2) Schemas in a variety of languages -- including RELAX, Schematron, the W3C Schema language, TREX, and others; (3) CSS, XSLT, and other style sheets; (4) Specification documents...
[January 21, 2002] "Registration of xmlns Media Feature Tag." IETF Network Working Group, Internet-Draft. January 20, 2002, expires: July 21, 2002. By Simon St.Laurent (O'Reilly & Associates). Reference: draft-stlaurent-feature-xmlns-00.txt. Abstract: "This document registers a media feature tag 'xmlns', per RFC 2506, intended for use in a Content-features features header to indicate the XML namespaces used in an XML document. This information augments MIME content-type information, providing a finer granularity of content description for XML documents." From the Introduction: "MIME Content-Type identifiers have proven very useful as tools for describing homogeneous information. They do not fare as well at describing content which is unpredictably heterogeneous. XML documents may be homogeneous, but are also frequently heterogeneous. It is not difficult to create, for instance, an XHTML document which also contains RDF metadata, MathML equations, hypertext using XLink, and SVG graphics. XSLT stylesheets routinely include information in both the XSLT namespace and in the namespace of the format resulting from proper execution of the stylesheet. This document specifies a Media Feature which identifies the URIs used as XML namespaces in a given XML document. While a list of namespaces cannot tell a recipient application everything about the use of those namespaces and there interactions in a given document, it can provide a baseline understanding. A program may be better able to choose among a set of XSLT stylesheets if it knows the namespaces of the results they generate, or a renderer may take advantage of foreknowledge to begin setting up components before content actually arrives. Processors working with SOAP envelopes may find it useful to know what they will be facing inside the envelope. Applications faced with 'unknown' XML namespaces may want to attempt to download RDDL documents to collect information on how to process them. Applications may also choose to reject documents containing unknown namespaces. This feature is designed primarily to be used with the XML Media Types defined in RFC 3023. By providing additional information about the content of the document beyond its overall type, it provides XML applications with a more comprehensive view of information they may (or may not) wish to process, potentially avoiding wasted parsing and processing..." XML-DEV note from S.S.L. 2002-01-21: "While I'm announcing this publication on XML-DEV because it seems relevant to (and was in part inspired by) the RDDL and namespace conversation here over the last week, ietf-xml-mime@imc.org is probably the most appropriate list for discussion..." [cache]
See also: "DrLove : Document Resource Locations." By Rick Jelliffe (Academia Sinica). Taipei, Taiwan 1999-03-25. This is a discussion draft for Document Resource Locations for the consideration of the W3C I18N IG and other interested W3C groups. It comes out of previous work known as XCS (Extensible Character Set). This paper, Document Resource Locations, proposes a mechanism to link XML and XHTML documents to arbitrary resources. The benefits of being able to attacth arbitrary resources to a document are well-known. The Macintosh was largely based on this idea: Macintosh files have a resource fork as well as a data fork. However, for efficiency on the WWW, bundling data and resources together is not practical; indeed linking can be regarded as the opposite of bundling. My proposal has three parts: (1) A processing instruction to link a document to a Document Resource Location Dictionary (DRLD); (2) DRLD, which uses RDF and XLink to associate with resources; (3) Specific examples of DRLD entries, which address several 'problem' areas: a) missing, non-standard characters: a problem experienced most in mathematics and internationalization; b) private dictionary information: spelling, hyphenation, pronunciation, glossaries, and word segmentation: problems which will become more acute when XML and XHTML move from being terminal formats to being used in serious cut-and-paste applications; c) custom icons for particular documents, for nicer user interface integration. A DRLD is an XML document which is a list of RDF assertions. A DRLD must conform to the following architecture..." [cache]
"Answering namespace conundrums with a RDDL." By Simon St.Laurent. From xmlhack.com. "Jonathan Borden released a new draft of the Resource Directory Description Language, providing one answer to the tricky question of what might live at the end of a namespace URI."
[January 16, 2001] "XML-Deviant: Old Ghosts: XML Namespaces." By Leigh Dodds. From XML.com. January 10, 2001. ['The XML Namespaces ghost returned to haunt the XML community this Christmas. However, developers on XML-DEV fought back with a new proposal to bring predictability to the use of URIs as namespace identifiers.'] "While some of us were enjoying holiday celebrations, XML-DEV was haunted once more by that ghostly question, 'what does a Namespace URI resolve to?' This time, however, the community was reluctant to descend into a two thousand message discussion. This article summarizes the promising progress made to date. To say that XML Namespaces have been hotly debated over the last two years is a major understatement. Much confusion has been the result of using URIs, or more commonly URLs, as the unique identifier for a Namespace. For many developers this naturally raises the question: 'What does this URL resolve to?' In the Namespace FAQ you'll find that the answer is undefined. It can be something or nothing. The Namespace Recommendation is not forthcoming on what could or should be placed at a URL used as a Namespace identifier. Much debate has resolved around whether the specification should have gone further and mandated some behavior, or whether its job is complete in simply defining a means of uniquely identifying XML elements... RDDL is an extension of XHTML Basic. It provides a simple way to document your namespaces and provide links to additional resources useful when processing documents containing those Namespaces. As an XHTML-based specification it is directly browseable, so human-oriented documentation can also be included. The resources referenceable from an RDDL document are not restricted in any way and could include schemas (of varying types), CSS documents, stylesheets, executable code, etc."
See also: OASIS Entity Resolution Technical Committee and discussion list archives.
See also: "Namespaces in XML."
See also: "Catalogs, Formal Public Identifiers, Formal System Identifiers."