Today I’m writing an autogenerator for a pile of WSDL. It’s a program that writes another program. Nothing new there. I’ve been writing programs to create scripts for a while now. The new part is that this autogenerated code defines a set of generic interfaces, which will themselves be used to autogenerate code.
So it’s code that writes code that allows other code to write its code.
But wait, there’s more.
The autogenerated interface code that my WSDL enables will be accessing perl modules which are themselves autogenerated by another pile of scripts. This is the reason I’m making my WSDL dynamically rather than writing it once and being done with it. So this is a dynamic interface to a dynamically generated set of modules, all of which are specified (under the hood) in XML. WSDL is also XML, but don’t be fooled into thinking that they’ll play nicely just because of that. These are two very distinct document types within XML.
It goes something like this:
Me: XML --> WSDL <---> HTTP <----------> WSDL-parser
| |
+----> Perl <---> SOAP <---> HTTP <---> SOAP <----> Client, in the language of your choice : User
Yes, was there a question in the back?
Leave a Reply