The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

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.