The Perl and Raku Conference 2025: Greenville, South Carolina - June 27-29 Learn more

NAME

wsdl-parser - Parses a WSDL file to generate a SOAP client

VERSION

This documentation refers to wsdl-parser version 0.14.

SYNOPSIS

wsdl-parser [options] [--module-base|-b Pkg WSDL
wsdl-parser [options] Pkg::Name WSDL [--namespace-map|-n] 'xsd-namespace=perl-namespace' ...
wsdl-parser [options] Pkg::Name WSDL [--map-file|-f] file
wsdl-parser [options] [--show|-s] WSDL
OPTIONS:
WSDL The WSDL file or URL to get the WSDL from
Pkg::Name The Perl package namespace you want the WSDLs operations accessible from
-s --show Show some info about the passed WSDL file eg it's operations
-b --module-base[=]str
Let the W3C::SOAP auto generate package names for any WSDLs or
XSDs found while processing. (Note packages will be valid
but not pretty)
-n --namespace-map ns=package
A mapping of XSD namespaces (ns) to perl package names
(package), it is required when writing XSD files if --module-base
is not specified. (This results in controlled namespaces but can
be a lot of work to setup)
-f --map-file[=]file
File that contains namespace mappings instead of having to
write all the mappings on the command line and can be used
again for other WSDLs or regenerating the current one.
-l --lib[=]dir
Directory where generated modules should be writted, the
default is ./lib
-p --path[=]str
Extra template toolkit directories if you want to override
default templates.
-S --save Save all downloaded WSDLs & XSDs
-v --verbose Show more detailed option
--version Prints the version information
--help Prints this help information
--man Prints the full documentation for wsdl-parser

DESCRIPTION

There are three basic modes of operation of wsdl-parser:

show

When using the --show option wsdl-parser dumps a human readable version of what the WSDL can do.

basic

In basic mode occurs when using the --module-base option W3C::SOAP will generate all of the module names for the WSDL and XSDs processed. The names are based on the target namespaces of each WSDL or XSD so they might end up being rather long and unwieldy.

advanced

In the advanced mode all namespaces must be specified either by --namespace-map on the command line or by specifying a --map-file. The easiest way to do this is to run wsdl-parser and look at the thrown errors (which should include the unmapped XSD namespace and append that namespace to the end of the command and run again. This may take several iterations to get all of the namespaces specified.

map-file

The file format is = or tab separated rows of 2 elements with the first being the XSD namespace and the second being the perl package namespace. Lines with nothing on them are ignored as are lines starting with a hash (#).

An example map file:

SUBROUTINES/METHODS

CONFIGURATION AND ENVIRONMENT

DEPENDENCIES

INCOMPATIBILITIES

BUGS AND LIMITATIONS

There are no known bugs in this module.

Please report problems to Ivan Wills (ivan.wills@gmail.com).

Patches are welcome.

AUTHOR

Ivan Wills - (ivan.wills@gmail.com)

LICENSE AND COPYRIGHT

Copyright (c) 2012 Ivan Wills (14 Mullion Close, Hornsby Heights, NSW Australia 2077). All rights reserved.

This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See perlartistic. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.