Java tutorial
import java.io.StringReader; import java.io.StringWriter; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.transform.Transformer; import javax.xml.transform.TransformerException; import javax.xml.transform.TransformerFactory; import javax.xml.transform.dom.DOMSource; import javax.xml.transform.stream.StreamResult; import org.w3c.dom.Document; import org.w3c.dom.DocumentFragment; import org.w3c.dom.Element; import org.w3c.dom.Text; import org.xml.sax.InputSource; public class Main { public static String getXMLData() { return "<a><person number='' dept=''><name>myName</name></person></a>"; } public static void main(String[] argv) throws Exception { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); Document doc = factory.newDocumentBuilder().parse(new InputSource(new StringReader(getXMLData()))); addFragment(doc); System.out.println(documentToString(doc)); } public static void addFragment(Document doc) { Element person; Element root = doc.getDocumentElement(); DocumentFragment fragment = doc.createDocumentFragment(); person = makePersonNode(doc, "Name 1", "555-4444"); fragment.appendChild(person); person = makePersonNode(doc, "Name 2", "555-9999"); fragment.appendChild(person); root.appendChild(fragment); } private static Element makePersonNode(Document doc, String name, String phone) { Element nameNode = doc.createElement("name"); Text nametextNode = doc.createTextNode(name); nameNode.appendChild(nametextNode); Element phoneNode = doc.createElement("phone"); Text phonetextNode = doc.createTextNode(phone); phoneNode.appendChild(phonetextNode); Element personNode = doc.createElement("person"); personNode.appendChild(nameNode); personNode.appendChild(phoneNode); return (personNode); } public static String documentToString(Document document) { try { TransformerFactory tf = TransformerFactory.newInstance(); Transformer trans = tf.newTransformer(); StringWriter sw = new StringWriter(); trans.transform(new DOMSource(document), new StreamResult(sw)); return sw.toString(); } catch (TransformerException tEx) { tEx.printStackTrace(); } return null; } }