|
[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: how to save an n-ary tree of nodes to and from an xml file
Michael, Thanks for your reply.
Yes, I removed the parent link. However I think the
schema is not correct - XML Spy complains but I cant
see whats wrong:
---
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
attributeFormDefault="unqualified">
<xs:element name="Node">
<xs:annotation>
<xs:documentation>ACD nodes - 2. Copyright juwo LLC
2005</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="childNodes" type="ListOfNodes"/>
<xs:element name="data" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="ListOfNodes">
<xs:complexType>
<xs:sequence>
<xs:element ref="Node" minOccurs="0"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:element>
</xs:schema>
--- Michael Kay <mike@s...> wrote:
> > I am trying to find how to implement something in
> XML
> > and was disappointed and surprised to find not too
> > many in-depth tutorials or information; unlike in
> Java
> > where the Sun Java tutorial at java.sun.com is
> enough
> > to get one working productively...
> > [ok, rant over]
> >
> > ---
> > I am trying to represent a n-ary tree of nodes in
> xml.
> > More accurately, I am trying to save/instantiate a
> > tree of nodes to-from an xml file.
> > Am finding it difficult trying to represent the
> > parent-child relationships.
> >
> > Java: (simplified)
> > -----
> >
> > class Node {
> > Arraylist childNodes;
> > Node parent;
> > String data;
> > }
>
> The "parent" pointer here is redundant (you could
> reconstruct it from other
> information). In my experience, when designing XML
> data structures it's best
> to avoid such redundancy. All it achieves is to
> increase the burden on
> senders to make the document consistent and on
> recipients to check that it
> is indeed consistent.
>
> Once you eliminate the redundancy, you seem to have
> a pure hierarchy, with a
> very natural XML representation:
>
> <node>
> <node>
> <data>x</data>
> </node>
> <node/>
> <node>
> <node/>
> <node>
> <data>x</data>
> <node/>
> <node/>
> </node>
> </node>
> </node>
>
> Of course, you could flatten this if you prefer so
> all the nodes are on the
> same level, and the hierarchic relationship are
> represented by id/idref
> attributes. But it seems more natural to use the XML
> hierarchy to represent
> the information hierarchy when you can.
>
> Michael Kay
> http://www.saxonica.com/
>
>
>
>
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|
|||||||||

Cart








