OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   Re: Simple DOM question

[ Lists Home | Date Index | Thread Index ]
  • From: Warren Hedley <w.hedley@auckland.ac.nz>
  • To: Warren Hedley <w.hedley@auckland.ac.nz>, "Nathaniel W. Turner" <nturner@wpi.edu>
  • Date: Thu, 19 Aug 1999 14:43:34 +1200

"Nathaniel W. Turner" wrote:
> 
> I'm under the impression that one can't insert nodes into document A if they
> are part of document B, unless one removes the node from document B using
> the removeChild(Node) method.
> 
> That's how I do it using Perl (XML::DOM), but I would hope that the DOM API
> would be the same in Java.  That's the point, right?

Thanks for your help, but ...

I haven't been able to get that to work - that is, even though I remove a
node from its parent, I still cannot insert it into a document other than
the one in which it was created. Can you post a PERL example where this
works? And, more importantly, is it legal?

My Java test code is included below - note I'm using the dcxjp parser to read
it in, but otherwise using only DOM API calls.


--- BEGIN JAVA CODE ---

import com.datachannel.xml.om.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;

public class NodeInsertion
{

  public static void main(String argv[])
  {
    Document doc1=new Document(), doc2=new Document();
    Element rootElementDoc1, rootElementDoc2;
    Node childDoc1, childDoc2;

    try
    {
      doc1.loadXML("<?xml version=\"1.0\"?>" +
        "<rootElement1><childElement1 /></rootElement1>");
      doc2.loadXML("<?xml version=\"1.0\"?>" +
        "<rootElement2><childElement2 /></rootElement2>");

      rootElementDoc1 = doc1.getDocumentElement();
      rootElementDoc2 = doc2.getDocumentElement();

      childDoc1 = rootElementDoc1.getFirstChild();
      childDoc2 = rootElementDoc2.getFirstChild();

      rootElementDoc2.removeChild(childDoc2);
      rootElementDoc1.replaceChild(childDoc2, childDoc1);
    }
    catch (Exception e)
    {
      System.err.println("An error occurred : " + e.getMessage());
      e.printStackTrace();
    }
  }

} /* class NodeInsertion */

--- END JAVA CODE ---

-- 
Warren Hedley
Department of Engineering Science
Auckland University
New Zealand

xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ and on CD-ROM/ISBN 981-02-3594-1
To (un)subscribe, mailto:majordomo@ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo@ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa@ic.ac.uk)






 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS