NAME

XML::SAX::Writer - SAX2 XML Writer

SYNOPSIS

use XML::SAX::Writer;
use XML::SAX::SomeDriver;

my $w = XML::SAX::Writer->new;
my $d = XML::SAX::SomeDriver->new(Handler => $w);

$p->parse('some options...');

DESCRIPTION

Why yet another XML Writer ?

A new XML Writer was needed to match the SAX2 effort because quite naturally no existing writer understood SAX2. My first intention had been to start patching XML::Handler::YAWriter as it had previously been my favourite writer in the SAX1 world.

However the more I patched it the more I realised that what I thought was going to be a simple patch (mostly adding a few event handlers and changing the attribute syntax) was turning out to be a rewrite due to various ideas I'd been collecting along the way. Besides, I couldn't find a way to elegantly make it work with SAX2 without breaking the SAX1 compatibility which people are probably still using. There are of course ways to do that, but most require user interaction which is something I wanted to avoid.

So in the end there was a new writer. I think it's in fact better this way as it helps keep SAX1 and SAX2 separated.

METHODS

CREDITS

Michael Koehne (XML::Handler::YAWriter) for much inspiration and Barrie Slaymaker for the Consumer pattern idea. Of course the usual suspects (Kip Hampton and Matt Sergeant) helped in the usual ways.

AUTHOR

Robin Berjon, robin@knowscape.com

COPYRIGHT

Copyright (c) 2001 Robin Berjon. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

SEE ALSO

XML::SAX::*