1. | The Book |
Eric is (unless you know differently) the only author to have tackled relax-ng. Here it is in both forms, online, and in dead tree form from O'Reilly. It comes highly recommended. Its been widely reviewed prior to publication, which has its advantages. | |
2. | Online content |
A couple of user-oriented documents on nxml and RNC for our university. They are slightly customized for our site and users, but they may be useful to you. Feel free to link or download them. XML document authoring with emacs nxml-mode in Html in PDF Relax NG Compact Syntax (RNC) in HTML in PDF An article on RELAX NG's Compact Syntax, Michael Fitzgerald xml.com NxmlMode wiki, emacswiki.org and XHTML mode usage emacswiki.org | |
3. | DTD to schema article |
See snee.com, where it will live from now on. I did the presentation version of it at XML 2003 in Philadelphia last week, and it went very well. Attendance at the talk was quite good considering that it was the last slot of the last day of the conference. At the end of the talk, Peter Flynn said from his chair "well, I'm converted"; I'm confident that others felt similarly.
| |
4. | Using RELAX NG, a tutorial |
My tutorials on RELAX NG and XHTML 2 are now available from: sxi format powerpoint PDF These presentations are licensed under the GNU GPL, available at opensource.org and many other places. Here's the write-up from XML 2003. Title: RELAX NG: DTDs on Warp Drive Abstract: In this tutorial you will learn how to use the RELAX NG schema language, an alternative schema language for XML. RELAX NG allows easy and intuitive descriptions of just what is and what is not allowed in an XML document. It is simple enough to learn in a few hours, and rich and flexible enough to support the design and validation of every kind of document from the very simple to the very complex. Once RELAX NG's concepts have crossed the blood-brain barrier, you will never be able to take any other schema language quite seriously again. RELAX NG is an evolution and generalization of XML DTDs, and it shares the same basic paradigm. Based on experience with SGML and XML, RELAX NG both adds and subtracts features from DTDs. XML DTDs can be automatically converted into RELAX NG. Experts in designing SGML and XML DTDs will find their skills transfer easily to designing RELAX NG. Design patterns that are used in XML DTDs can be used in RELAX NG. Overall, RELAX NG is much more mature (and it is possible to have a higher degree of confidence in its design) than it would be if it were based on a completely new and different paradigm. A major goal of RELAX NG is that it be easy to learn and easy to use. Schemas can be patterned after the structure of the documents they describe, but need not be: definitions to be composed from other definitions in a variety of ways. Attributes and elements are treated uniformly as much as possible. RELAX NG supports pluggable simple datatype libraries, from a trivial one that describes only strings and tokens to the full XML Schema Part 2; new ones can be readily designed and built as needed. RELAX NG provides full support for namespaces. RELAX NG provides two interconvertible syntaxes, an XML one for processing, and a compact non-XML one for human authoring. RELAX NG has been standardized in OASIS by the RELAX NG Technical Committee, and is Part 2 of ISO DSDL, the Document Schema Definition Languages umbrella. As a bonus, attendees will learn something about XLink and something about XML Schema Part 2: Datatypes. Prerequisites: Understanding of XML; basic understanding of XML DTDs. Knowledge of XML Schema or SGML DTDs is helpful, but not required.
| |
5. | Embedding Schematron Rules in RELAX NG |
This article explains how to integrate two powerful XML schema languages, RELAX NG and Schematron. xml.com |