In the following wsdl fragments. message named "InputMsg" and "OutputMsg" both have a part called "Common" but the Common part in InputMsg is typed string while the onter is int. as part name only needs to unique accross the the enclosing message. Message declaraion looks fine for me.
My question is for the TestOP operation. As part named "Common" appears both in operattion TestOP's input and output message. Will "Common" part become and in/out parameter?. Logically the anwser should be no. Not for java, you would say. But I cannot find a definitive answer for this situation.
"When the <input> and <output> elements in a <portType> declare a part with the same name, it's an INOUT parameter, and the type must be the same in the <input> and <output> elements"
posted 16 years ago
Thank you guys, I found it in the book too. However, It's not very clear if the claim in the book also logically implies the following statment: If two message definitions each contains parts with different type but the same name, then these two messages cannot be used in the soap perarion such that one of the message is used in input and the other is used as output.
I was trying to find out if above statment is implyed by BP and wsdl spec. However, I would guess that above statemnet is false and in the case the messages is used in a soap peration it is more logical for me that they corresponds to one IN parameter and one OUT paremeter separately. I am studying the wsdl note and BP1.0 file to figure it out.
Yeah I agree with u that it should be an IN and OUT and not INOUT becuase the wire signature s are not the same so its not the same part . If the types were the same then its an INOUT I think that is what RMH implies for it to qualify as INOUT the types have to be the same. (pg 144 quoted)
Any thoughts . I think Richard can is the best person to clarify this for us though. Dhiren
If an input and output message have a part with the same name, but a different type, than they would be interpreted as different paramters (IN and OUT). That said, the WS-I BP clearly prohibits this so if an input and output have a part with the same name, they must be the same type and therefor it represents an INOUT parameter.
Hi Richard, I am unable to find out relevant discussions in Basic Profile Version 1.0 that can support the following claim in your post:
the WS-I BP clearly prohibits this so if an input and output have a part with the same name, they must be the same type
Could you possibly give me a clue either as form of the requirement statement number or cut and paste some text from Basic Profile Version 1.0? Am I looking at wrong document? I appreicate your help very much.