Matt Sergeant

NAME

XML::Filter::XInclude - XInclude as a SAX Filter

SYNOPSIS

  use XML::SAX;
  use XML::SAX::Writer;
  use XML::Filter::XInclude;

  my $parser = XML::SAX::ParserFactory->parser(
      Handler => XML::Filter::XInclude->new(
          Handler => XML::SAX::Writer->new()
      )
  );
  $parser->parse_uri("foo.xml");

DESCRIPTION

This module implements a simple SAX filter that provides XInclude support. It does NOT support XPointer.

XInclude is very simple, just include something like this in your XML document:

  <xi:include href="foo.xml" 
    xmlns:xi="http://www.w3.org/2001/XInclude"/>

And it will load foo.xml and parse it in the current SAX stream.

If you specify the attribute parse="text", it will be treated as a plain text file, and inserted into the stream as a series of calls to the characters() method.

URI's are supported via LWP.

Currently encoding is not supported.

AUTHOR

Matt Sergeant, matt@sergeant.org

LICENSE

This is free software, you may use it and distribute it under the same terms as Perl itself.