Mark -- Your macros are done either with something like M4 or with an early-on XML-to-XML. (I would say SGML-to-SGML.) -- Bill