[ogsa-hpcp-wg] Another Problem (maybe?) in the WSDL

Mark Morgan mmm2a at cs.virginia.edu
Fri Oct 20 14:38:34 CDT 2006


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/HPCPService.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/HPCPService.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 at virginia.edu
(434) 982-2047



More information about the ogsa-hpcp-wg mailing list