allowable permutations that other XML documents can adopt in order to be con-
sidered a member of the common family of XML documents. Think of an XML
Schema as metadata (essentially, data that describes data). As an analogy, think of
how, in any object-oriented programming language, a class definition defines a
family of objects or a relational database schema defines the data types and
constraints to which a dataset must adhere to exist in a particular table. In both
analogies, the class definition and relational database schema merely lay out some
basic ground rules for restricting structure and data ranges, which in turn can be
used in any application.
As previously mentioned, industry consortiums are joining together to develop
XML Schemas that define common file formats for describing mathematical formu-
las, research documents, news articles, credit card transactions, accounting audits,
medical prescriptions, and much more. Development of industry-standard XML
Schemas enhances software application interoperability through the use of com-
mon XML-based file formats to express data and content. Using a common XML
Schema, software applications can exchange information as an XML document that
conforms to a particular XML Schema.
An XML Schema is most commonly used by an XML processor to validate XML
documents. Validation is the process of verifying that an XML document conforms
to the rules defined within the XML Schema. An XML processor that can perform
XML Schema-based document validation (that is, an XML Schema validator)
enables a developer to offload the burden of code validation from the application to
the XML processor.
I discuss DTDs in Chapter 3. DTDs, however, have clearly been marked for
obsolescence by the W3C.
A complete discussion of applied XML Schema design is provided in
Chapters 4 and 5.
The Extensible Stylesheet Language (XSL) and the Extensible Stylesheet Language
Transformations (XSLT) are standardized XML-based vocabularies (markup
languages) for changing the content and data stored in an XML document into a
different output form. Using XSL, you can take content saved in an XML format
and transform it into any output media (HTML, WML, PDF, PostScript, plain text)
by applying a special XML stylesheet document written using XSL or XSLT. The
XSLT transformation process is illustrated in Figure 1-1.
Chapter 1: The XMLSPY Game