Actually I've tried it a few ways:
- Explicitly including in the source document
- Manually appending it as the data is read
- Using the options in XML::Parser to force an encoding
The file did initially come without declarations. The structure itself is a single file with a header and footer lines where each line in between is a distinct XML document (newline delimited obviously).
The program reads through one line at a time and feeds these lines individually to XML::Simple, where it parses them and outputs the relevant values before discarding the data and reading the next. e.g.
<?xml .. ?><document><colour>red</colour><cost>£10</cost></document>
<?xml .. ?><document><colour>blue</colour><cost>£14</cost></document>
All code is untested unless otherwise stated.
All opinions expressed are my own and are intended as guidance, not gospel; please treat what I say as such and as Abigail said Think for yourself.
If in doubt ask.