Presenting XML is a Java web application framework for presenting HTML, PDF, WML etc. in a device independent manner. The framework supports a flow of content (XML files, flat files, SQL, dynamic XML) through SAX pipelines and XSLT transforms to a device. It runs as a servlet in a web environment and also as a console app. It can be used, for example, to transform flat files into XML, to transform XML content into multi-part MIME mail message, to transform XML into PDF, to generate HTML web pages, etc.