XSLT

XSLT (Extensible Stylesheet Language Transformations) is a language for specifying transformations from XML-based formats to other XML-based formats. XSLT is itself XML-based. It is Turing-complete and probably qualifies as a programming language, especially if you're a Java programmer from the 00's.

Links

 * XSLT
 * W3C XSLT page