Certainly not a book for learning about XML schemas
Certainly not a book for learning about XML schemas, may be used as a reference. Very theoretical, particularly the first few chapters, and strikingly similar to W3 recommendations. If you are just starting with XML schemas, pick a different book.
Use this book all the time
I've been doing a whole bunch of schema development work lately and I find that I've been referring to this book frequently. My only criticism is that the some of the early chapters are a little too theoretical for a plain old programmer like myself--but the extensive reference material provides me with all the information that I've needed to build a complex set of interlocking schemas.
Need Help Writing Your Own Schemas? Try this.
If you are already using XML, it is probably with DTDs, as this was the first implementation of XML. Both came out of SGML, in which the role of DTDs was defined in the early 1990s. Unfortunately, the drawbacks of DTDs were not fully appreciated until they began to be widely used in XML. A DTD cannot easily constrain an integer variable to a range of values from 5 to 10, say. It has no conception of common primitive types like float or double found in many programming languages. Also, the structure of a DTD is quite unlike that of the XML document it supports. From the point of view of writing parsers, you end up effectively needing two parsing algorithms to read a DTD and an XML document. XML Schemas answer all these issues. Plus namespaces are built into them, to handle collisions in tag names when you use multiple Schemas in a document. With DTDs, namespaces came into being after DTDs were first defined, and had to be bolted on in a most awkward fashion. XML Schema notation for namespaces is much more natural. The problem right now with XML Schema is that it is new. Most XML books use DTDs, in part because when they were written, the Schema specification was not finished by W3C (in May 2001). Some XML books since then do describe Schema. They usually give a good overview and provide examples that work for the XML document examples they describe. So if you have an application that you want to write a Schema for, you can get started. But chances are, you soon run into problems if your application is not a carbon copy of a text's example. You soon need some Schema component or attribute whose usage or even existence was not disclosed in that book.
This book addresses that shortfall. It provides at least one example of how to use every attribute of EVERY Schema element. A formidably comprehensive task. Which accounts for the near thousand page size. But this is far more than just some dictionary-style exposition. They describe important closely related issues, like how to use the DOM and Xerces SAX parsers, and the different outlooks these take. Also, from your viewpoint of how to write a Schema for YOUR application, they offer a top-down approach. Schemas can be result-oriented or data-oriented. You get enough details to help decide which case yours fits. This can greatly aid developing a facile "natural" Schema. One where once you have it and an example XML document that uses it, the layout taxonomy seems axiomatic. Which should be your goal. It is not enough to define a Schema that can hold all the information you have. The skill is in making a Schema that does that and has a clear, obvious logic. Because in many cases others, probably not as technically adept as you, get to fill in documents based on it. So the logic should be clear to them. Even if they do not directly write into an XML document, but build it from a GUI, the clearer the Schema, the easier it is for someone to build a GUI to populate a document based on it.
The authors also provide a website (XMLSchemaReference.com) that has the code described in the book, and many more examples. Worth bookmarking.
So try this book and its website if you need an authoritative guide to writing Schemas.