The Haskell XML Toolbox bases on the ideas of HaXml and HXML, but introduces a more general approach
for processing XML with Haskell. The Haskell XML Toolbox uses a generic data model for representing
XML documents, including the DTD subset and the document subset, in Haskell. It contains a
validating XML parser, a HTML parser, namespace support, an XPath expression evaluator, an XSLT
library, a RelaxNG schema validator and funtions for serialization and deserialization of user
defined data. The libraray make extensive use of the arrow approach for processing XML.