Provided by: libxml-compile-perl_1.61-1_all bug


       XML::Compile::Schema::Instance - Represents one schema


        # Used internally by XML::Compile::Schema
        my $schema = XML::Compile::Schema::Instance->new($xml);


       This module collect information from one schema, and helps to process it.


       $obj->new($top, %options)
           Get's the top of an XML::LibXML tree, which must be a schema element.  The tree is
           parsed: the information collected.

            -Option                --Default
             attribute_form_default  <undef>
             element_form_default    <undef>
             filename                undef
             source                  undef
             target_namespace        <undef>

           attribute_form_default => 'qualified'|'unqualified'
           element_form_default => 'qualified'|'unqualified'
             Overrule the default as found in the schema.  Many old schemas (like WSDL11 and
             SOAP11) do not specify the default in the schema but only in the text.

           filename => FILENAME
             When the source is some file, this is its name.

           source => STRING
             An indication where this information came from.

           target_namespace => NAMESPACE
             Overrule or set the target namespace.

           Returns a list of all defined attribute groups.

           Returns a lost of all globally defined attribute names.

           Returns a list with all complexType names.

           Returns one global element definition.

           Returns a list of all globally defined element names.

           Returns a list of all defined model groups.

           Returns a HASH with the base-type as key and an ARRAY of types which extend it.

           Returns a list with all simpleType names.

           A schema can defined more than one target namespace, where recent schema spec changes
           provide a targetNamespace attribute.

           Returns the type definition with the specified name.

           Returns a list of all simpleTypes and complexTypes

       $obj->find($kind, $fullname)
           Returns the definition for the object of $kind, with $fullname.

           example: of find

             my $attr = $instance->find(attribute => '{myns}my_global_attr');

           Returns a list of all schemaLocations specified with the import $ns (one of the values
           returned by imports()).

           Returns a list with all namespaces which need to be imported.

           Returns a list of all schemaLocations which where specified with include statements.

       $obj->printIndex( [$fh], %options )
           Prints an overview over the defined objects within this schema to the selected $fh.

            -Option       --Default
             kinds          <all>
             list_abstract  <true>

           kinds => KIND|ARRAY-of-KIND
             Which KIND of definitions would you like to see.  Pick from "element", "attribute",
             "simpleType", "complexType", "attributeGroup", and "group".

           list_abstract => BOOLEAN
             Show abstract elements, or skip them (because they cannot be instantiated anyway).


       This module is part of XML-Compile distribution version 1.61, built on November 09, 2018.


       Copyrights 2006-2018 by [Mark Overmeer <>]. For other contributors see

       This program is free software; you can redistribute it and/or modify it under the same
       terms as Perl itself.  See