|
|
| |
XML::Compile::Schema::NameSpaces(3) |
User Contributed Perl Documentation |
XML::Compile::Schema::NameSpaces(3) |
XML::Compile::Schema::NameSpaces - Connect name-spaces from schemas
# Used internally by XML::Compile::Schema
my $nss = XML::Compile::Schema::NameSpaces->new;
$nss->add($schema);
This module keeps overview on a set of namespaces, collected from various schema
files. Per XML namespace, it will collect a list of fragments which contain
definitions for the namespace, each fragment comes from a different source.
These fragments are searched in reverse order when an element or type is
looked up (the last definitions overrule the older definitions).
- $obj->add( $schema, [$schemas] )
- Add XML::Compile::Schema::Instance objects to the internal knowledge of
this object.
- $obj->allSchemas()
- Returns a list of all known schema instances.
- $obj->doesExtend($exttype, $basetype)
- Returns true when $exttype extends
$basetype.
- $obj->find($kind, $address|<$uri,$name>, %options)
- Lookup the definition for the specified $kind of
definition: the name of a global element, global attribute, attributeGroup
or model group. The $address is constructed as
" {uri}name " or as separate
$uri and $name.
-Option --Default
include_used <true>
- $obj->findID( $address|<$uri,$id> )
- Lookup the definition for the specified id, which is constructed as
" uri#id " or as separate
$uri and $id.
- $obj->findSgMembers($class, $type)
- Lookup the substitutionGroup alternatives for a specific element, which is
an $type (element full name) of form
" {uri}name " or as separate URI and
NAME. Returned is an ARRAY of HASHes, each describing one type (as
returned by find())
- $obj->findTypeExtensions($type)
- This method can be quite expensive, with large and nested schemas.
- $obj->importIndex(%options)
- [1.41] Returns a HASH with namespaces which are declared in all currently
known schema's, pointing to ARRAYs of the locations where the import
should come from.
In reality, the locations mentioned are often wrong. But when
you think you want to load all schema's dynamically at start-up (no, you
do not want it but it is a SOAP paradigma) then you get that info easily
with this method.
- $obj->list()
- Returns the list of name-space URIs defined.
- $obj->namespace($uri)
- Returns a list of XML::Compile::Schema::Instance objects which have the
$uri as target namespace.
- $obj->printIndex( [$fh], %options )
- Show all definitions from all namespaces, for debugging purposes, by
default the selected. Additional %options are
passed to XML::Compile::Schema::Instance::printIndex().
-Option --Default
include_used <true>
namespace <ALL>
- include_used => BOOLEAN
- Show also the index from all the schema objects which are defined to be
usable as well; which were included via use().
- namespace => URI|ARRAY-of-URI
- Show only information about the indicate namespaces.
example:
my $nss = $schema->namespaces;
$nss->printIndex(\*MYFILE);
$nss->printIndex(namespace => "my namespace");
# types defined in the wsdl schema
use XML::Compile::SOAP::Util qw/WSDL11/;
$nss->printIndex(\*STDERR, namespace => WSDL11);
- $obj->schemas($uri)
- We need the name-space; when it is lacking then import must help, but that
must be called explicitly.
- $obj->use($object)
- Use any other XML::Compile::Schema extension as fallback, if the
find() does not succeed for the current object. Searches for
definitions do not recurse into the used object.
Returns the list of all used OBJECTS. This method implements
XML::Compile::Schema::useSchema().
This module is part of XML-Compile distribution version 1.63, built on July 02,
2019. Website: http://perl.overmeer.net/xml-compile/
Copyrights 2006-2019 by [Mark Overmeer <markov@cpan.org>]. For other
contributors see ChangeLog.
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself. See
http://dev.perl.org/licenses/
Visit the GSP FreeBSD Man Page Interface. Output converted with ManDoc. |