VoltXMLElement second = first.duplicate();
second.attributes.remove("deleted");
second.attributes.put("added", "addedval");
second.attributes.put("changes", "newvalue");
second.children.add(makeNamedElement("child", "addedchild"));
second.children.remove(second.findChild("child", "deletedchild"));
second.findChild("child", "changedchild1").attributes.remove("deleteme");
VoltXMLElement temp = second.findChild("child", "changedchild2").findChild("child", "changedgrandchild");
temp.children.remove(temp.findChild("child", "doomeddescendent"));