Relax NG is the friendly schema validation standard for XML with clean namespace support, data types, and uniform treatment of attributes. It is closed under union (allows ambiguity). And it offers a compact non-XML syntax.
Released today, cxml-rng is my implementation of Relax NG in Common Lisp, as an extension to Closure XML.
Learn Relax NG through van der Vlist's book, read The Design of Relax NG by James Clark, pump subtrees, or try cxml-rng yourself.