The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

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:

# this is ignored
http://example.com/=XSD::Example

http://example.com/data=XSD::Example::Data

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.