Catmandu::XML::Transformer - Utility module for XML/XSLT processing
$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
- 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".
- stylesheet()
- Returns an array reference of XSLT filenames used as
transformation pipeline.
- output_format()
- Returns the output format or "undef".
XML::Struct