XML::Writer is a simple Perl module for writing XML documents: it takes care of constructing markup and escaping data correctly, and by default, it also performs a significant amount of well-formedness checking on the output, to make certain (for example) that start and end tags match, that there is exactly one document element, and that there are not duplicate attribute names. Here is an example: my $writer = new XML::Writer(); $writer->startTag('greeting', 'type' => 'simple'); $writer->characters("Hello, world!"); $writer->endTag('greeting'); $writer->end(); If necessary, error-checking can be turned off for production use. This release 0.4.2 adds the raw() method to write unescaped text (sometimes useful), and the cdata() and cdataElement() methods to write character data in a CDATA section (thanks srinithan). Copyright (c) 1999 by David Megginson, copyright 2003 Ed Avis, and others. This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.