> > As for file truncation, having to wait for the last XML tag to arrive can > > be a showstopper too. > > On which planet do you have to do that? >
Planets where your module needs to build the whole XML tree in RAM (if it fits) before you can start processing it - XML::Simple, XML::TreeBuilder, XML::DOM (?) etc. But you're right, there are also stream based/event parsers which means you can do incremental parsing (e.g., XML::Parser etc). But there are planets where the expedient of a quick: my @fields = split("\t", $nextrecord); is not such a bad thing. I know it's simple, but that was what XML was supposed to be. > > > not to mention all the bytes saved by having no <tags>. > > Size matters? Yes. Just ask Andy. ;-) For example, a bank I previously worked at has trashed a lot of its SOAP transaction system because it was too slow. The reason? The byte size of the XML wrappers dwarfed the actual payload of data. Too much time was being spent stuffing the XML 'envelope', posting it, and opening it up on the other side. Their fix? Pipe-delimited. ;-) Nige -- Nigel Hamilton Turbo10 Metasearch Engine email: [EMAIL PROTECTED] tel: +44 (0) 207 987 5460 fax: +44 (0) 207 987 5468 ________________________________________________________________________________ http://turbo10.com Search Deeper. Browse Faster.