In this chapter, I introduced XML Schema as the preferred language for describing the content model of XML documents. This chapter covered these topics:
A detailed overview of the XMLSPY Schema Design view, including navigating an XML Schema, understanding of the different windows, and configuring all the different user options
Building a modular XML Schema using XMLSPY consisting using a top-down design methodology and then using that XML Schema to edit and validate XML Schema files
Constraining the value space of simple types through the use of facets and other restrictions
An introduction to namespaces, the problems that they solve, and how to declare and reference namespaces inside your XML Schema and related XML instance document
A detailed technical overview of XML Schema syntax including a discussion on simple types, complex types, global elements, global types
Publishing a completed XML Schema to the Web using the XMLSPY documentation generator
In the next chapter, I cover some more advanced XML Schema design topics including a more in-depth discussion on using multiple namespaces, deriving complex types, and the use of XML Schema in conjunction with relational databases and hybrid relational native XML databases.