xmlHelpline Blog
Xml, Xslt, data standards, and anything else...









new WSDLFlattener free tool added to the SchemaLightener/Flattener

I'm pleased to announce I've added a WSDLFlattener to the already existing SchemaLightener and SchemaFlattener.  This is another XSLT-based solution that does for WSDL what the SchemaFlattener does for Xml Schemas.  It takes a modularly developed set of WSDL files - with modularly develop schemas - and merges them all into a single, stand alone WSDL.

What does it actually do?  WSDL's which are connected via < wsdl:include > are merged into a result WSDL file.  And the Xml Schemas within them (in the < wsdl:types > section) are also merged together.  Regardless of whether they are explicitly in the WSDL or simply brought in via < xsd:include > or < xsd:import > they are all flattened into one file.

Even more!
The WSDLFlattener goes another step further.  Because some tools do not support multiple < xsd:schema > elements with the same @targetNamespace in the same WSDL, the Flattener will ensure that no matter how modular they are developed, the result is a single < xsd:schema > element for each @targetNamespace.

Take for example this file structure:
wsdl
   |----wsdl
   |          |----xsd
   |                   |----xsd
   |
   |----wsdl
   |          |----xsd
   |                   |----xsd
   |----xsd

And more specifically with this file pattern:
root.wsdl
      |----ws1.wsdl    (via < wsdl:include >)
      |                   |----xsdA.xsd   (via < xsd:include >)
      |                   |----xsdB.xsd   (via < xsd:import >)
      |
      |----ws2.wsdl   (via < wsdl:include >)
      |                   |----xsdC.xsd    (via < xsd:import >)
      |                                      |----xsdD.xsd    (via < xsd:include >)
      |----xsdE.xsd   (via < xsd:include >)

The result will be a single WSDL file, root.wsdl, with all wsdl and xsd components in it.  Sweet!

This tool is an ongoing effort to support "develop modular, deploy stand alone" architecture and design.  Enable reuse during modeling and then publish tool-friendly single files to your trading partners.

The WSDLFlattener comes bundled together with the Lightener/Flattener tools in one download.  It also uses the same GUI.

I've tested it with OAGIS, HR-XML, and other proprietary wsdl/schemas.

Hope you enjoy it and give me feedback.  And if you like it, you can buy me some coffee to help support the effort.  If you are interested in getting it, send me an email and I'll give you the download link.
© Copyright Paul Kiel.

Older posts