SXML and SXML tools are S-expression-based implementations of W3C XML Recommendations, the embedding of XML data and XML query and manipulation tools into Scheme. The S-expression-based data format and query and transformation tools are conformant with W3C Recommendations: XML, XPath, XSLT, and XPointer. The core of our technique is SXML: an abstract syntax tree of an XML document. SXML is also a concrete representation of the XML Infoset in the form of S-expressions. SXML fully supports XML Namespaces, processing instructions, parsed and unparsed entities.

All SXML query and manipulation tools are implemented in a pure functional subset of Scheme. XPath expressions, XSLT patterns and XPointer notation are translated into Scheme data structures and functions. SXML tree is a data structure, but it can be directly evaluated as if it were an expression. These features make XML data and XML processing a part of Scheme and eliminate a lexical barrier for XML processing. A combination of W3C conformance with seamless integration into a programming language is a distinctive feature of our tools.

Also see the SXML home page.