James Clark (OASIS RELAX NG Technical Committee Chair) has posted an announcement for the release of the RELAX NG Version 0.9 specification. The technical committee has "allocated a period of two months for public comment and implementation. At the end of this period, the team plans to resolve all comments received and release RELAX NG version 1.0." A RELAX NG Tutorial has also been published as an OASIS Committee Specification. Appendices in this tutorial document provide summary comparisons of RELAX NG with XML DTDs, RELAX Core, and TREX. RELAX NG is "a simple schema language for XML, based on RELAX and TREX. A RELAX NG schema specifies a pattern for the structure and content of an XML document; a RELAX NG schema thus identifies a class of XML documents consisting of those documents that match the pattern... The key features of RELAX NG are that it is simple, easy to learn, uses XML syntax, does not change the information set of an XML document, supports XML namespaces, treats attributes uniformly with elements so far as possible, has unrestricted support for unordered content, has unrestricted support for mixed content, has a solid theoretical basis, and can partner with a separate datatyping language. RELAX NG itself performs only validation: it does not change the infoset of an XML document. Most of the features of XML 1.0 DTDs that are not supported by RELAX NG involve modification to the infoset. In XML 1.0, validation and infoset modification are combined in a monolithic XML processor. It is a goal of the [RELAX NG] specification to provide a clean separation between validation and infoset modification, so that a wide variety of implementation scenarios are possible."
The companion working draft specification "RELAX NG DTD Compatibility Annotations" [2001-08-10] defines elements and attributes that can be used as annotations in [RELAX NG] schemas. The purpose of these annotations is to support some of the features of XML 1.0 DTDs that are not supported by RELAX NG."
Principal references:
- OASIS RELAX NG Technical Committee
- RELAX NG Specification. Committee Specification 11-August-2001.
- RELAX NG Tutorial
- RELAX NG DTD Compatibility Annotations
- RELAX NG Issues List
- RELAX NG Project on SourceForge
- Mailing list archives for 'relax-ng'
- Comments: send email to relax-ng-comment@lists.oasis-open.org
- "RELAX NG" - Main reference page.
- "XML Schemas" - Main reference page.