Have you taken a look at ANTXR, my XML parser using (slightly modified) ANTLR grammars? See http://javadude.com/tools/antxr Sounds like it's kinda along the lines of what you're thinking of... -- Scott