A Formal and Unified Description of XML Manipulation Languages
We discuss three well-known languages for querying and manipulating XML documents: XQuery, XPath and XSLT. They are considered to be the standard languages for processing XML documents. However, specifying their complete semantics in a formal way seems almost impossible. Indeed, an attempt by the W3C XML Query Working Group to do so for XQuery was ultimately abandoned. We introduce three sublanguages, called MiXPath, MiXQuery and MiXSLT, and describe their syntax and formal semantics. The syntax and semantics of these languages are chosen such that they are consistent with the ones given in the related W3C recommendations. As such this provides a practical foundation for research and teaching of XML languages. For this purpose the sublanguages are chosen such that they contain the most crucial features, constructs and expressions of each of these three languages.
Jan Hidders, Jan Paredaens: A Formal and Unified Description of XML Manipulation Languages. Fundam. Inform. 145(4): 429-470 (2016)