RELAX NG now an ISO standard
RELAX NG is the sane alternative to XML Schema. It’s a schema language which allows you to define the “shape” of a class of XML documents—a bit like a DTD but far more flexible. The reason I like it is the compact syntax, which lets you define schemas using a non-XML syntax similar in some ways to CSS. This makes defining new types of XML document far less unpleasant.