Steve,
I once had a similar situation in which I need the consuming
web page to pass into my web service what would become a CF
structure. If the consuming web page were itself a CF page, no
problem. They would simply pass a CF structure (nothing more but an
entire FORM scope in this case) and the web service method could
work with it fine. However, if the consuming web page were not CF,
it obviously can't pass in a CF structure. In these cases, it would
be acceptable for the consumer to parse over the FORM scope and
create a simple data object--a text string. That text string would
be marked up as valid XML. This text string would be passed in
where the CF structure normally would be passed and the web service
would sense the data type. In other words, it it were a CF
structure, it would process normally, if it weren't a CF structure,
it would sense if it were a string, and if yes, is it also a string
marked up with valid XML? If yes, it would convert the string to a
true XML document object type and parse over that to create guess
what--a CF structure exactly like what would have been passed by a
CF client.
Describing it makes it sound more complex than it really is,
and in fact, it really doesn't take that much code and it performs
beautifully. I investigated extensively other possibilities before
deciding on the one above and I know now in retrospect I made the
right decision. It's so easy to provide the required XML structure
to any type of client (.NET, PHP, etc.) and have them pass in plain
text.
I don't know if that gives you the specific answer you were
looking for, but thought I'd share the experience in the hopes it
offers some insight into how I handled a similar conundrum.
David