Writing big XML files where beginning depends on end.
Gerard Flanagan
grflanagan at yahoo.co.uk
Sat Nov 26 00:33:17 EST 2005
Magnus Lycka wrote:
> We're using DOM to create XML files that describes fairly
> complex calculations. The XML is structured as a big tree,
> where elements in the beginning have values that depend on
> other values further down in the tree. Imagine something
> like below, but much bigger and much more complex:
>
> <node sum="15">
> <node sum="10">
> <leaf>7</leaf'>
> <node sum="3">
> <leaf>2</leaf'>
> <leaf>1</leaf>
> </node>
> </node>
> <node sum="5">
> <leaf>5</leaf>
> </node>
> </node>
>
> We have to stick with this XML structure for now.
>
> We've thought of writing a file that looks like this...
>
> <node sum="#1">
> <node sum="#1.1">
> <leaf>7</leaf'>
> <node sum="#1.1.1">
> <leaf>2</leaf'>
> <leaf>1</leaf>
> </node>
> </node>
> <node sum="#1.2">
> <leaf>5</leaf>
> </node>
> </node>
>
> ...and store {"#": "15", "#1.1", "10" ... } in a map
> and then read in a piece at a time and performs some
> simple change and replace to get the correct values in.
> Then we need something that allows parts of the XML file
> to be written to file and purged from RAM to avoid the
> memory problem.
>
> Suggestions for solutions are appreciated.
Magnus
what about multiple xml files? Then any given node could have a value
"2.3.xml" which is loaded on demand.
Or, IANA Computer Scientist, but isn't every tree a list? Then maybe
flatten/unflatten nodes to a string representation
eg. { "#1" : 15, "#1.1" : "[ 10 [7] [3 [2][1] ] ]", "#1.2" : "[ [5] ]"
}
Hope this isn't too naive.
Gerard
More information about the Python-list
mailing list