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

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   Re: [xml-dev] Underwhelmed (WAS: [xml-dev] XOM micro tutorial)

[ Lists Home | Date Index | Thread Index ]

(Porting discussion from xml-dev)

Elliotte Rusty Harold scripsit:

> >In any case, this stuff is trivial under XOM.   You invoke a Builder
> >from a StringReader, get the document element, detach it, and insert
> >it into the main document where you want it to go.  This works because
> >XOM nodes, unlike DOM nodes, can freely be ported from one document
> >to another without doing anything magic and expensive to them.
> 
> Hmm, you know now that you mention it, this isn't so trivial. The one 
> element you can't detach is the root element because that would make 
> its document malformed. If this is a common use-case, I'll need to 
> figure out how to support that.

I finally see how to do this:

	Document main = new Builder().build("main.xml");
	Document aux = new Builder().build("aux.xml");
	Element holder = main.getChild(1).getChild(3).getChild(5);  // whatever
	Element auxroot = aux.getRootElement();
	aux.setRootElement(new Element("bogus"));
	holder.appendChild(auxroot);

This should work nicely, though I have not tested it: get the root element
of the auxiliary document, then change its root to a newly created element,
and then append the now Document-less tree.  The aux document is still sound,
though semantically meaningless: it can be allowed to become garbage.

-- 
Her he asked if O'Hare Doctor tidings sent from far     John Cowan
coast and she with grameful sigh him answered that      www.ccil.org/~cowan
O'Hare Doctor in heaven was. Sad was the man that word  www.reutershealth.com
to hear that him so heavied in bowels ruthful. All      jcowan@reutershealth.com
she there told him, ruing death for friend so young,
algate sore unwilling God's rightwiseness to withsay.   _Ulysses_, "Oxen"




 

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

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