
I believe that the minOccurs is fine. Notice that the real issue is that the first one does not use an xml reference, while the two problem elements do. In addition to giving the two problem elements a name, I additionally vote that we change the first one to match the latter two, or vice-versa. -Mark -- Mark Morgan Research Scientist Department of Computer Science University of Virginia http://www.cs.virginia.edu mmm2a@virginia.edu (434) 982-2047
-----Original Message----- From: Christopher Smith [mailto:csmith@platform.com] Sent: Friday, October 20, 2006 3:50 PM To: Mark Morgan; ogsa-hpcp-wg@ggf.org Subject: Re: [ogsa-hpcp-wg] Another Problem (maybe?) in the WSDL
My tooling seems to cope with this fine, generating the same code in all three cases. Odd.
I have no problem with making all three complexTypes look the same in terms of how they are defined (makes me wonder if we should get rid of the minOccurs="0" for GetActivityDocumentsType and TerminateActivitiesType as well).
Just curious ... what happens if you get rid of the minOccurs in the two problem types?
-- Chris
On 20/10/06 12:38, "Mark Morgan" <mmm2a@cs.virginia.edu> wrote:
In trying to interop with Glenn's endpoint, I have found another potential problem with the BES-Factory's WSDL. However, the problem is at a level of WSDL that is slightly beyond my experience. In particular, the problem is with two message types; the GetActivityDocuments message type, and the TerminateActivitiesType message. Both problems are identical. In brief, here are three elements from the WSDL (the first of which is an example of a type declaration which works for me, and the latter two being the problem declarations).
<xsd:complexType name="GetActivityStatusesType"> <xsd:sequence> <xsd:element name="ActivityIdentifier" type="wsa:EndpointReferenceType" maxOccurs="unbounded"/> </xsd:sequence> </xsd:complexType>
<xsd:complexType name="GetActivityDocumentsType"> <xsd:sequence> <xsd:element ref="bes-factory:ActivityIdentifier" minOccurs="0" maxOccurs="unbounded"/> </xsd:sequence> </xsd:complexType>
<xsd:complexType name="TerminateActivitiesType"> <xsd:sequence> <xsd:element ref="bes-factory:ActivityIdentifier" minOccurs="0" maxOccurs="unbounded"/> </xsd:sequence> </xsd:complexType>
The first one works for me, and the last two do not. The problem with the second and third ones is that my tooling doesn't know what name to give the element for the EPRs inside of the message elements.. In otherwords, it generates messages which look like the following:
<GetActivityDocuments xmlns="http://schemas.ggf.org/bes/2006/08/bes-factory"> <item xmlns="" xmlns:ns3="http://www.w3.org/2005/08/addressing" xsi:type="ns3:EndpointReferenceType">
<ns3:Address>https://wincluster1.cs.virginia.edu/HPCP/HPCPServ ice.asmx</ns3:
Address> <ns3:ReferenceParameters> <jobID xmlns="http://schemas.ggf.org/hpcp/2006/07/hpcp-app">113</jobID> </ns3:ReferenceParameters> </item> </GetActivityDocuments>
<TerminateActivities xmlns="http://schemas.ggf.org/bes/2006/08/bes-factory"> <item xmlns="" xmlns:ns3="http://www.w3.org/2005/08/addressing" xsi:type="ns3:EndpointReferenceType">
<ns3:Address>https://wincluster1.cs.virginia.edu/HPCP/HPCPServ ice.asmx</ns3:
Address> <ns3:ReferenceParameters> <jobID xmlns="http://schemas.ggf.org/hpcp/2006/07/hpcp-app">113</jobID> </ns3:ReferenceParameters> </item> </TerminateActivities>
Notice the child element called "item" in each message.
The simple (and obvious to me) fix was to change the GetActivityDocuemntsType and TerminateActivitiesType type definitions to specify the name of the inner element, i.e. to change them to:
<xsd:complexType name="GetActivityDocumentsType"> <xsd:sequence> <xsd:element name="ActivityIdentifier" ref="bes-factory:ActivityIdentifier" minOccurs="0" maxOccurs="unbounded"/> </xsd:sequence> </xsd:complexType>
<xsd:complexType name="TerminateActivitiesType"> <xsd:sequence> <xsd:element name="ActivityIdentifier" ref="bes-factory:ActivityIdentifier" minOccurs="0" maxOccurs="unbounded"/> </xsd:sequence> </xsd:complexType>
I know that these are legitimate fixs, the questions are, A) are these in fact real errors that my tooling is finding and thus the WSDL is in error, and B) can we make these changes permanent in the BES-Factory WSDL to fix these problem?
-Mark
-- Mark Morgan Research Scientist Department of Computer Science University of Virginia http://www.cs.virginia.edu mmm2a@virginia.edu (434) 982-2047
-- ogsa-hpcp-wg mailing list ogsa-hpcp-wg@ogf.org http://www.ogf.org/mailman/listinfo/ogsa-hpcp-wg