Eliot has mentioned DITA, so can i toss in a mention for NVDL the ISO DSDL Namespace Validation Despatching Language, which gives a mechanism for specifying rules by which branches of documents can be validated against schemas, being neutral to which schema languages are used, and allowing parallel validation.
Also on Eliots point that dtds etc have limitations in their power: one limitation is how to capture (without resorting to ad hoc comments) some constraints that are beyond the expressive power of the grammar or are contingent in some way. I believe Schematron is still the only system to take this seriously. See http://archive.oreilly.com/pub/post/expressing_untested_and_untest.html.
Hoping you are all well,
Rick