Provided by: libcatmandu-xml-perl_0.17-1_all bug

NAME

       Catmandu::Importer::XML - Import serialized XML documents

DESCRIPTION

       This Catmandu::Importer reads XML and transforms it into a data structure.

       See Catmandu::Importer, Catmandu::Iterable, Catmandu::Logger and Catmandu::Fixable for
       methods and options derived from these modules.

       The importer can also be used internally for custom importers that need to parse XML data.

CONFIGURATION

       type
           By default (type ""simple""), elements and attributes and converted to keys in a key-
           value structure. For instance this document:

               <doc attr="value">
                 <field1>foo</field1>
                 <field1>bar</field1>
                 <bar>
                   <doz>baz</doz>
                 </bar>
               </doc>

           is imported as

               {
                   attr => 'value',
                   field1 => [ 'foo', 'bar' ],
                   field2 => { 'doz' => 'baz' },
               }

           With type ""ordered"" elements are preserved in the order of their appereance.  For
           instance the sample document above is imported as:

               [
                   doc => { attr => "value" }, [
                       [ field1 => { }, ["foo"] ],
                       [ field1 => { },  ["bar"] ],
                       [ field2 => { }, [ [ doz => { }, ["baz"] ] ] ]
                   ]
               ]

       depth
           Maximum depth for type ""simple"". For instance with depth 1, the sample document
           above would be imported as:

               {
                   attr => 'value',
                   field1 => [ 'foo', 'bar' ],
                   field2 => {
                       doz => [ [ doz => { }, ["baz"] ] ]
                   }
               }

       attributes
           Include XML attributes. Enabled by default.

       path
           Path expression to select XML elements. If not set the root element is selected.

       root
           Include root element name for type "simple". Disabled by default.  The option is
           ignored if type is not "simple" or if a "path" has explicitly been set.

       ns  Set to "strip" for stripping namespace prefixes and xmlns-attributes.

       whitespace
           Include ignoreable whitespace. Disabled by default.

       xslt
           Optional (list of) XSLT stylesheets to process records with
           Catmandu::XML::Transformer.

       transform
           Deprecated alias for option "xslt".

SEE ALSO

       This module is just a thin layer on top of XML::Struct::Reader. Have a look at XML::Struct
       to implement Importers and Exporters for more specific XML-based data formats.