XmlBuilder
is a tool for declarative construction of XML.
It was originally created to generate XML for unit tests, but is useful
wherever you want to construct XML documents with minimal code and a
low memory footprint.
The two classes of interest are {@link net.sf.practicalxml.builder.ElementNode} and {@link net.sf.practicalxml.builder.XmlBuilder}: the former contains public methods for transforming a tree into various representations, while the latter contains static methods for building such a tree:
import static net.sf.practicalxml.builder.XmlBuilder.*; // ... ElementNode root = element("root", element("child1", text("this is some <text>")), element("child2", attribute("foo", "bar"), attribute("baz", "biff")), element("http::www.example.com/foo", "ns:child3")); Document dom = root.toDOM(); String out = root.toString();