The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Catmandu::XML::Transformer - Utility module for XML/XSLT processing

SYNOPISIS

    $transformer = Catamandu::XML::Transformer->new( stylesheet => 'file.xsl' );

    $xml_string = $transformer->transform( $xml_string ); # SCALAR
    $xml_dom    = $transformer->transform( $xml_dom );    # XML::LibXML::Document
    $xml_struct = $transformer->transform( $xml_struct ); # ARRAY reference
    $xml_simple = $transformer->transform( $xml_simple ); # HASH reference

    $transformer = Catamandu::XML::Transformer->new( output_format => 'string' );
    $xml_string  = $transformer->transform( $xml );       # any XML to SCALAR

CONFIGURATION

stylesheet

Zero or more XSLT files given as comma-separated list of files or array reference with multiple files to apply as transformation pipeline. Files are parsed once on instantiation of the Catmandu::XML::Transformer object.

output_format

Expected output format dom, string, struct, simple. By default the input format triggers the output format. If the last stylesheet has text output (<xsl:output method="text"/>) then output format is automatically set to string.

METHODS

stylesheet()

Returns an array reference of XSLT filenames used as transformation pipeline.

output_format()

Returns the output format or undef.

SEE ALSO

XML::Struct