RELAX NG (REgular LAnguage description for XML Next Generation).
The "next generation" part was the work of
OasisOrganization.
RelaxNg has been adopted by ISO as a standard for DSDL (Document Schema Definition Language). See earlier draft at
http://www.y12.doe.gov/sgml/sc34/document/0362_files/relaxng-is.pdf
- Note there is a "compact syntax" version but it is not an ISO standard. The notation is non XML, but can be converted to RelaxNg without information loss.
- There was a concern registered about the acceptability of RelaxNg in a government environment. That was before the ISO adoption and I am unsure what is the situation and outlook at end 2004.
From the charter at
http://www.oasis-open.org/committees/relax-ng/ :
The purpose of this committee is to create a specification for a schema language for the
ExtensibleMarkupLanguage based on TREX and RELAX. 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 (such W3C
XmlSchema Datatypes).
--
AndrewJoyner
Links for
RelaxNg ancestors:
RelaxNg is reported in XmlEurope2004 to have superseded XmlSchema in market adoption due to its simplicity over the latter. (see http://www.xml.com/pub/a/2004/04/21/state.html)
Resources
Relax NG tutorial from Oasis http://www.oasis-open.org/committees/relax-ng/tutorial.html
Technology report from Oasis http://xml.coverpages.org/relax-ng.html
Compact Syntax tutorial http://relaxng.org/compact-tutorial-20030326.html
A simpler schema Language for XML http://personalweb.about.com/b/a/2004_01_16.htm
RelaxNg online book http://books.xmlschemata.org/relaxng/page2.html
Comparison with XmlSchema http://webreference.com/xml/column59/
More comparisons, with code examples http://www.xml.com/lpt/a/2002/01/23/relaxng.html
Free Xml tools http://www.garshol.priv.no/download/xmltools/std_ix.html#S_RELAX-NG
Schema tutorial XmlSchema and RelaxNg http://www.zvon.org/xxl/XMLSchemaTutorial/Output/series.html
RelaxNg QuickQuestions
Q What is the extent of support of
RelaxNg by tools as at end 2004? Are there free and commonly used tools available for the
MicrosoftWindows environment before
DotNet came out?
A
see
http://gnosis.cx/publish/programming/xml_matters_26.html for editors (e.g. XML Operator) and converters (e.g. trang & DTDinst)
Q What is RELAX, and what is the NG in the
RelaxNg stand for? And why should someone who need to do a bit of Xml care about
RelaxNg?
A RELAX NG (pronounced "relaxing") is a grammar-based schema language. The NG stands for New Generation. See ISBN 0596004214
See also
SchemaLanguagesForXml
CategoryXml