Dzielenie węzła podrzędnego z pliku XML na własne pliki XML

Mam plik XML (po lewej) i chcę utworzyć wiele plików (po prawej):

<ParentNode>                                  file1:
    <ChildNode>                               <ParentNode>
        <node></node>                             <ChildNode>
    </childNode>                                      <node></node>
    <ChildNode>                                   </childNode>
        <node></node>                         </ParentNode>
    </childNode>                              file2:
    <ChildNode>                               <ParentNode>
        <node></node>                             <ChildNode>
    </childNode>                                      <node></node>
</ParentNode>                                      </childNode>
                                              </ParentNode>

Próbuję pobrać pierwszy węzeł podrzędny z oryginalnego pliku XML i dodać go do nowego, ale wciąż pojawiają się błędy wokół zastępowania węzłów.

Chcę zrobić coś takiego jak poniżej

 DocumentBuilderFactory dbfac = DocumentBuilderFactory.newInstance();
 DocumentBuilder docBuilder = dbfac.newDocumentBuilder();
 Document newDocument;

 Node firstChild = document.getFirstChild();
 NodeList childNodes = firstChild.getChildNodes();

 Element parentNode;
 for (int i = 1; i < childNodes.getLength(); i++ ) {
     newDocument = docBuilder.newDocument();
     parentNode = newDocument.createElement("ParentNode");
     newDocument.appendChild(parentNode);
     newDocument.getFirstChild().appendChild(childNodes.item(i));
 }

ale dostaję błąd

org.w3c.dom.DOMException: WRONG_DOCUMENT_ERR: A node is used in a different document than the one that created it.

doceniona wszelka pomoc skierowana we właściwym kierunku!

questionAnswers(2)

yourAnswerToTheQuestion