METHODS

Constructors

$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.

Accessors

$obj->attributeGroups

Returns a list of all defined attribute groups.

$obj->attributes

Returns a lost of all globally defined attribute names.

$obj->complexTypes

Returns a list with all complexType names.

$obj->element( $uri )

Returns one global element definition.

$obj->elements

Returns a list of all globally defined element names.

$obj->filename
$obj->groups

Returns a list of all defined model groups.

$obj->schema
$obj->schemaInstance
$obj->schemaNamespace
$obj->sgs

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

$obj->simpleTypes

Returns a list with all simpleType names.

$obj->source
$obj->targetNamespace
$obj->tnses

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

$obj->type( $uri )

Returns the type definition with the specified name.

$obj->types

Returns a list of all simpleTypes and complexTypes

Index

$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');
$obj->importLocations( $ns )

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

$obj->imports

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

$obj->includeLocations

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).