I’m sorry that you’ve been placed with a request which undermines any hint of good development practice.
I usually have a heavy-handed reply back to the requester which takes almost two hours and goes through all of computing history, starting from Turing (they usually never talk again to me). But my seniority and position (quality management) allows me that. You might not be so lucky.
So, what solutions do you have, which can still maintain any semblance of sanity?
Maybe you can design a WSDL where the payload can make use of the xsd:any element…
This way you can accept anything (eyes rolling).
Now, and this is the important, sanity-preserving bit: you should have some routing code which, depending on the contents of the payload, changes execution directly to the service specifically created to handled that.
Maybe you can create a content-handler service for that WSD, which enables you to capture the request’s XML before being decoded, which makes the routing logic much simpler (I suggest keeping a file with the pattern/handler service list, so you can easily find and make an invocation to the desired service).
Please check Vlad Turian’s excellent blog: Web Services - Headers and Handlers (Part I) - webMethods Explorer