Hi Luca I'm just wondering if a 'set of elements' could be implemented as just a List of Element objects? i.e. just using regular Java 2 Collections. Is there something else that a DocumentFragment could offer other than being a collection of Elements?
James ----- Original Message ----- From: <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Monday, November 26, 2001 11:34 AM Subject: [dom4j-user] org.dom4j.DocumentFragment ??? > Hi All, > > I am a new user of DOM4J. > Formerly I was using strictly DOM-Level 2 to manipulate XML object tree. > Decided to switch to DOM4J because DOM-level 2 offers no support for > managing external entities. > But now I am missing a DOM feature missing in DOM4J, namely the > DocumentFragment class. > Why is there no org.dom4j.DocumentFragment ? Is it because some other DOM4J > class offers equivalent functionality? > > What I need is a class that represents the same thing as > org.w3c.dom.DocumentFragment, basicaly a set of nodes. > This is is very usefull when you work with external entities. Let me > explain with an example: > > Consider the following XML document, stored in a file called company.xml : > > <?xml version="1.0" encoding="UTF-8"?> > <!DOCTYPE company SYSTEM Company.dtd> > <company> > <departmentSet> > <department> > <departmentId>123</departmentId> > <name>Accounting</name> > </department> > <department> > <departmentId>456</departmentId> > <name>Personnel</name> > </department> > </departmentSet> > </company> > > Now lets say I want to store the list of departments in a seperate file > called departments.xml that looks like this : > > <department> > <departmentId>123</departmentId> > <name>Accounting</name> > </department> > <department> > <departmentId>456</departmentId> > <name>Personnel</name> > </department> > > To make this transparent to users of company.xml, I define an external > entity in company.xml : > > <?xml version="1.0" encoding="UTF-8"?> > <!DOCTYPE company SYSTEM Company.dtd [<!ENTITY departments SYSTEM > "departments.xml" >] > > <company> > <departmentSet>&departments;</departmentSet> > </company> > > The parser that will parse company.xml will replace the entity reference > &departments; with the contents of document departments.xml > > Now, what I need to achieve this programatically is a DOM4J object that > will represent my set of departments (set of Elements), but which is not in > itself an Element. This is what is it would look like: > > Company.xml :: Document > | > +--- company :: Element > | > +--- departmentSet :: Element > | > +-- departments :: Entity > > departments.xml :: DocumentFragment > | > +--- department :: Element > | | > | +--- departmentId :: Element > | | | > | | +--- 123 :: Text > | +--- name :: Element > | | > | +--- Accounting :: Text > | > +--- department :: Element > | > +--- departmentId :: Element > | | > | +--- 456 :: Text > +--- name :: Element > | > +--- Personnel :: Text > > I am looking into implementing a org.dom4j.DocumentFragment interface that > would extend org.dom4j.Branch. > But maybe some of you experimented DOM4J users out there have a better idea > ? > > Thanx, > > Luca > > > > -- > DISCLAIMER: > This e-mail contains proprietary information some or all of which may be > legally privileged. It is for the intended recipient only. If an addressing > or transmission error has misdirected this e-mail, please notify the author > by replying to this e-mail. If you are not the intended recipient you must > not use, disclose, distribute, copy, print, or rely on this e-mail. > > > _______________________________________________ > dom4j-user mailing list > [EMAIL PROTECTED] > https://lists.sourceforge.net/lists/listinfo/dom4j-user > _________________________________________________________ Do You Yahoo!? Get your free @yahoo.com address at http://mail.yahoo.com _______________________________________________ dom4j-user mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/dom4j-user
