This is just my insight and may not really related to your problem.
Some objects of webMethods which actually look like documents or string variables in Developer are not actually IData objects or strings. Even though you can loop through or map in the design time the runtime can not capture these values. One example is Service Signature object which looks like an IS document but you can’t get any value from it using mapping. For many of such objects the sequence documentToXmlString → xmlStringToXmlNode → xmlNodeToDocument saved the day for me (the result will have a slightly different structure for some elements) or I use a java service to access the object (in the above case a NSSignature object).