NAME
SOAP::WSDL::Definitions - model a WSDL >definitions< element
DESCRIPTION
METHODS
first_service get_service set_service push_service
Accessors/Mutators for accessing / setting the >service< child element(s).
find_service
Returns the service matching the namespace/localname pair passed as arguments.
my $service = $wsdl->find_service($namespace, $localname);
first_binding get_binding set_binding push_binding
Accessors/Mutators for accessing / setting the >binding< child element(s).
find_service
Returns the binding matching the namespace/localname pair passed as arguments.
my $binding = $wsdl->find_binding($namespace, $localname);
first_portType get_portType set_portType push_portType
Accessors/Mutators for accessing / setting the >portType< child element(s).
find_portType
Returns the portType matching the namespace/localname pair passed as arguments.
my $portType = $wsdl->find_portType($namespace, $localname);
first_message get_message set_message push_message
Accessors/Mutators for accessing / setting the >message< child element(s).
find_service
Returns the message matching the namespace/localname pair passed as arguments.
my $message = $wsdl->find_message($namespace, $localname);
first_types get_types set_types push_types
Accessors/Mutators for accessing / setting the >types< child element(s).
explain
Returns a POD string describing how to call the methods of the service(s) described in the WSDL.
to_typemap
Creates a typemap for use with a generated type class library.
Options:
NAME DESCRIPTION
-------------------------------------------------------------------------
prefix Prefix to use for all classes
type_prefix Prefix to use for all (Complex/Simple)Type classes
element_prefix Prefix to use for all Element classes (with atomic types)
As some webservices tend to use globally unique type definitions, but locally unique elements with atomic types, type and element classes may be separated by specifying type_prefix and element_prefix instead of prefix.
The typemap is plain text which can be used as snipped for building a SOAP::WSDL class_resolver perl class.
Try something like this for creating typemap classes:
my $parser = XML::LibXML->new();
my $handler = SOAP::WSDL::SAX::WSDLHandler->new()
$parser->set_handler( $handler );
$parser->parse_url('file:///path/to/wsdl');
my $wsdl = $handler->get_data();
my $typemap = $wsdl->to_typemap();
print <<"EOT"
package MyTypemap;
my \%typemap = (
$typemap
);
sub get_class { return \$typemap{\$_[1] } };
1;
"EOT"
LICENSE
Copyright 2004-2007 Martin Kutter.
This file is part of SOAP-WSDL. You may distribute/modify it under the same terms as perl itself
AUTHOR
Martin Kutter <martin.kutter fen-net.de>