An XML archive could easily be done by wrapping every output of a primitive type in tags, e.g. int could be wrapped in <int> 32434 </int>, et.c. Thus XML output is no problem at all. Of course that's not very useful. However the user can wrap all his saving and loading in appropriate tags. E.g. a vector could be serialized as
<vector type="int" size="3"> 4 7 2 </vector>
or into more elaborate structures such as:
<line>
<source>1 2</source>
<target>3 4</target>
</line>
On Monday, November 18, 2002, at 06:11 AM, Robert Ramey wrote:
That may be. But a serialization system has to be able to handle ALL (not just many) C++ data structures.
It can, as the examples show.
That's actually the key issue here: since the serialization library writes additional information the user cannot build a nice XML file since all his output will be intermixed with the output of the library. I would thus agree with Robert that XML serialization needs a separate library in order to produce/read real arbitrary XML files.That seems a rigid view of XML. Just think of it as a way to markup theSerialization files contain tables of objects, pointers, classes etc in such
output you are already producing to make it a bit easier for other tools to
work with. Some of the whitespace or other delimiters become tags. If the
output you are already producing captures various C++ data structures,
adding XML markup just enhances the already captured data. That's probably
a dumb way to use the power of XML, but it may be sufficient for
serialization needs.
a way that even text archives are effectively indeciferable. Of course they
are text files so the are readable, producible by any text reading/writing program.
But such processing would be useful only another program could exploit
the structure of the data. This would be hard to do without the whole
serialization code.
Matthias
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost