WSDL2H(1)

πŸ“¦
version 2.8.142 Β· 2 versions
  • 2.8.142 Β· debian bookworm, debian trixie, epel 10, fedora 43, fedora 44, ubuntu noble, ubuntu questing, ubuntu resolute, ubuntu stonking (latest)
  • 2.8.117 Β· epel 9, ubuntu jammy
, in debian bookworm, debian trixie, epel 10, fedora 43, fedora 44, ubuntu noble, ubuntu questing, ubuntu resolute, ubuntu stonking

πŸ’– NAME πŸ’–

wsdl2h β€” the gSOAP WSDL/WADL/XSD processor for C and C++. bestie. it literally takes your WSDL/WADL/XSD and makes it into C/C++ that you can actually use. iconic behavior honestly.


πŸ¦‹ SYNOPSIS πŸ¦‹

wsdl2h [OPTIONS] SOURCE ...

🌸 DESCRIPTION 🌸

okay so here's the whole vibe: it converts a WSDL or XSD input file β€” or an HTTP address β€” that you pass as SOURCE, and turns it into a declaration file that soapcpp2(1) can then parse. that's the pipeline, that's the whole point, that's the main character arc. ✨

and if you're out here giving it zero SOURCE arguments? it just reads from standard input. no source, no problem. πŸ’…


✨ OPTIONS ✨

like. there are a LOT of these. all of them are real, all of them matter, so we're doing all of them. buckle up bestie πŸŽ€

  • -a β€” Generate indexed struct names for local elements with anonymous types.
  • -b β€” Bi-directional operations (duplex ops) added to serve one-way responses.
  • -c β€” Generate C source code.
  • -c++ β€” Generate C++ source code (this one's the default, fyi πŸ’œ).
  • -c++11 β€” Generate C++11 source code.
  • -c++14 β€” Generate C++14 source code.
  • -c++17 β€” Generate C++17 source code.
  • -D β€” Make attribute members with default/fixed values optional with pointers.
  • -d β€” Use DOM to populate xs:any, xs:anyType and xs:anyAttribute.
  • -e β€” Do not qualify enum names.
  • -F β€” Add transient members to structs to simulate struct-type derivation in C.
  • -f β€” Generate flat C++ class hierarchy by removing inheritance.
  • -g β€” Generate global top-level element and attribute declarations.
  • -h β€” Display help info and exit. (the classic escape hatch 🫢)
  • -Ipath β€” Use path to locate WSDL and XSD files.
  • -i β€” Do not import (advanced option, so like… respect the gatekeep πŸšͺ).
  • -j β€” Do not generate SOAP_ENV__Header and SOAP_ENV__Detail definitions.
  • -k β€” Do not generate SOAP_ENV__Header mustUnderstand qualifiers.
  • -L β€” Generate less documentation by removing generic @note comments.
  • -l β€” Display license information.
  • -M β€” Suppress error "must understand element with wsdl:required='true'".
  • -m β€” Use xsd.h module to import primitive types.
  • -Nname β€” Use name for service prefixes to produce a service for each binding.
  • -nname β€” Use name as the base namespace prefix instead of ns.
  • -O1 β€” Optimize by omitting duplicate choice/sequence members.
  • -O2 β€” Optimize -O1 and omit unused schema types (unreachable from roots).
  • -O3 β€” Optimize -O2 and omit unused schema root attributes.
  • -O4 β€” Optimize -O3 and omit unused schema root elements (use only with WSDLs, ok? not a drill πŸ”₯).
  • -Ow2 β€” Optimize -O2 while retaining all derived types of used base types.
  • -Ow3 β€” Optimize -O3 while retaining all derived types of used base types.
  • -Ow4 β€” Optimize -O4 while retaining all derived types of used base types.
  • -ofile β€” Output to file file.
  • -P β€” Do not create polymorphic types inherited from xsd__anyType.
  • -p β€” Create polymorphic types inherited from base xsd__anyType.
  • -Q β€” Make xsd__anySimpleType equal to xsd__anyType to use as the base type.
  • -qname β€” Use name for the C++ namespace of all declarations.
  • -R β€” Generate REST operations for REST bindings specified in a WSDL.
  • -rhost[:port[:uid:pwd]] β€” Connect via proxy host, port and proxy credentials uid and pwd.
  • -r:uid:pwd β€” Connect with authentication credentials uid and pwd.
  • -Sname β€” Use name instead of soap for the C++ class members with soap contexts.
  • -s β€” Do not generate STL code (no std::string and no std::vector). old school, love that for you 🧚
  • -tfile β€” Use type map file file instead of the default file typemap.dat.
  • -U β€” Allow UTF-8-encoded Unicode C/C++ identifiers when mapping XML tag names.
  • -u β€” Do not generate unions.
  • -V β€” Display the current version and exit.
  • -v β€” Verbose output. (say more, king πŸ—£οΈ)
  • -W β€” Suppress warnings.
  • -w β€” Always wrap response parameters in a response struct (<=1.1.4 behavior).
  • -X β€” Do not qualify part names to disambiguate doc/lit wrapped patterns.
  • -x β€” Do not generate _XML any/anyAttribute extensibility elements.
  • -y β€” Generate typedef synonyms for structs and enums.
  • -z1 β€” Compatibility with 2.7.6e: Generate pointer-based arrays.
  • -z2 β€” Compatibility with 2.7.7-2.7.15: (un)qualify element/attribute references.
  • -z3 β€” Compatibility with 2.7.16-2.8.7: (un)qualify element/attribute references.
  • -z4 β€” Compatibility up to 2.8.11: Do not generate union structs in std::vector.
  • -z5 β€” Compatibility up to 2.8.15: Do not include minor improvements.
  • -z6 β€” Compatibility up to 2.8.17: Do not include minor improvements.
  • -z7 β€” Compatibility up to 2.8.59: Do not generate std::vector of class of union.
  • -z8 β€” Compatibility up to 2.8.74: Do not generate qualifiers for doc/lit wrapped patterns.
  • -z9 β€” Compatibility up to 2.8.93: Always qualify element/attribute references.
  • -z10 β€” Compatibility up to 2.8.96: Generate qualifiers even when defined w/o namespace.
  • -_ β€” Do not generate _USCORE (replace with Unicode code point _x005f).
ngl the -z1 through -z10 lineup is literally a time machine πŸ•°οΈ β€” they're all "make it behave like this old version did" switches. if you don't need them, you don't need them. but they're all here and they're all real.

πŸ‘‘ SEE ALSO πŸ‘‘

  • soapcpp2(1) β€” the next stop on the pipeline, the one that actually parses what wsdl2h hands it. ✨

πŸ’Œ AUTHOR πŸ’Œ

This manual page was written by Thomas Wana <greuff@debian.org>, for the Debian project (but may be used by others). shoutout to the author fr fr 🫢


okay that's the whole page, bestie!! πŸ’… this one lives in the General Commands Manual, and it's dated December 23, 2004 β€” yes, that's a real date from way back, and it still ate. <rainbow>WSDL2H(1), out. πŸŽ€βœ¨πŸ¦‹</rainbow>

πŸ“¦ where this page comes from