Don't use XML: build a DSL instead

Knowing about computer languages and language technology such as ANTLR will make your coding life much easier. Don’t be afraid to build a human-readable configuration file (I implore everyone to please stop using XML as a human interface!) or to build domain specific languages to make yourself more efficient. Designing new languages, when appropriate, is the hallmark of a sophisticated developer.

Terence Parr, in his ANTLR book.

To develop an external DSL can be fun if you have a great tool like ANTLR in hands.