The Extensible Markup Language is one of the most controversial technologies to come into vogue in recent years. Starting with humble roots with the desire to create a simple subset of SGML, XML burst onto the scene to a fantastic fanfare from developers and hype from the press. As more people have started to adopt XML, more features have been added to address practical implementations, and as a result, the complete families that make up XML today are far more complicated than SGML!
XML is no longer simply one Recommendation from the W3C. Instead, XML is really a collection of technologies, including XML Namespaces, XSL and XSLT, XPath, XPointer, XML Base, XML Encryption, XML Query, XML Signature… and of course, XML Schema.
The XML Schema Recommendation itself has been riddled with controversy. Political in-fighting with regard to features, backward compatibility, and complexity have led to many heated debates, and more than a few suggested alternative technologies (such as RELAX NG and Schematron).
Most users will never know the painstaking give and take that goes into the development of a set of standards such as the XML Recommendations, but they will certainly know the results, and that is the goal of this title: to familiarize you with the contents of the XML Schema Recommendation, so that you can put it to practical use in your XML development projects.