Imagine a technology that offered you all the power of a DTD without the associated unpleasantness of those strange symbols and arcane commands. Sounds too good to be true? Say hello to XML Schema.
If you're like most XML developers, you probably treat DTDs like bitter medicine - you have to use them, but you don't necessarily have to enjoy the process.
It's not hard to understand this attitude - the tangled syntactical constructs and difficult-to-remember symbols of a DTD are enough to give most developers a splitting headache (not to mention a lifelong aversion to the technology). Even more frustrating is the fact that when it comes to validating XML, DTDs are the only game in town - if you plan on using XML seriously, you need to know how to create and maintain a DTD, together with its associated !ELEMENTs and !ATTLISTs.
Or do you?
Taking note of the murderous feelings keeping XML developers up at night, the W3C has recently come up with a kinder, gentler way of validating XML data. It goes by the name XML Schema, offers all the capabilities of current DTDs, adds a bunch of powerful new features, and is a lot easier on the eye.