You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@taverna.apache.org by re...@apache.org on 2015/03/19 14:43:42 UTC

[14/35] incubator-taverna-common-activities git commit: package names changed to org.apache.taverna.*

http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/blob/433612be/taverna-wsdl-activity/src/test/resources/org/apache/taverna/activities/wsdl/wsrf/counterService/WS-ResourceProperties.xsd
----------------------------------------------------------------------
diff --git a/taverna-wsdl-activity/src/test/resources/org/apache/taverna/activities/wsdl/wsrf/counterService/WS-ResourceProperties.xsd b/taverna-wsdl-activity/src/test/resources/org/apache/taverna/activities/wsdl/wsrf/counterService/WS-ResourceProperties.xsd
new file mode 100644
index 0000000..1527149
--- /dev/null
+++ b/taverna-wsdl-activity/src/test/resources/org/apache/taverna/activities/wsdl/wsrf/counterService/WS-ResourceProperties.xsd
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--OASIS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on OASIS's procedures with respect to rights in OASIS specifications can be found at the OASIS website. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementors or users of this specification, can be obtained from the OASIS Executive Director.
+
+OASIS invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to implement this specification. Please address the information to the OASIS Executive Director.
+
+Copyright (C) OASIS Open (2004). All Rights Reserved.
+
+This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document must be followed, or as required to translate it into languages other than English. 
+
+The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns. 
+
+This document and the information contained herein is provided on an "AS IS" basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.--><xsd:schema elementFormDefault="qualified" attributeFormDefault="unqualified" targetNamespace="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties-1.2-draft-01.xsd" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsrp="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties-1.2-draft-01.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+  <!--======= Global Attribute Declaration for WSDL 1.1 portType====-->
+  <xsd:attribute name="ResourceProperties" type="xsd:QName"/>
+  <!--= Notification Message for ResourceProperties value change ===-->
+  <xsd:complexType name="ResourcePropertyValueChangeNotificationType">
+    <xsd:sequence>
+      <xsd:element name="OldValue" nillable="true" minOccurs="0" maxOccurs="1">
+        <xsd:complexType>
+          <xsd:sequence>
+            <xsd:any minOccurs="1" maxOccurs="1"/>
+          </xsd:sequence>
+        </xsd:complexType>
+      </xsd:element>
+      <xsd:element name="NewValue" nillable="true" minOccurs="1" maxOccurs="1">
+        <xsd:complexType>
+          <xsd:sequence>
+            <xsd:any minOccurs="1" maxOccurs="1"/>
+          </xsd:sequence>
+        </xsd:complexType>
+      </xsd:element>
+    </xsd:sequence>
+  </xsd:complexType>
+  <xsd:element name="ResourcePropertyValueChangeNotification" type="wsrp:ResourcePropertyValueChangeNotificationType"/>
+  <xsd:complexType name="QueryExpressionType" mixed="true">
+    <xsd:sequence>
+      <xsd:any minOccurs="0" maxOccurs="1" processContents="lax"/>
+    </xsd:sequence>
+    <xsd:attribute name="Dialect" type="xsd:anyURI"/>
+  </xsd:complexType>
+  <xsd:element name="QueryExpression" type="wsrp:QueryExpressionType"/>
+</xsd:schema>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/blob/433612be/taverna-wsdl-activity/src/test/resources/org/apache/taverna/activities/wsdl/wsrf/counterService/counter_bindings.wsdl
----------------------------------------------------------------------
diff --git a/taverna-wsdl-activity/src/test/resources/org/apache/taverna/activities/wsdl/wsrf/counterService/counter_bindings.wsdl b/taverna-wsdl-activity/src/test/resources/org/apache/taverna/activities/wsdl/wsrf/counterService/counter_bindings.wsdl
new file mode 100644
index 0000000..8acf07f
--- /dev/null
+++ b/taverna-wsdl-activity/src/test/resources/org/apache/taverna/activities/wsdl/wsrf/counterService/counter_bindings.wsdl
@@ -0,0 +1,157 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<wsdl:definitions name="Counter" targetNamespace="http://counter.com/bindings" xmlns:porttype="http://counter.com" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
+  <wsdl:import namespace="http://counter.com" location="counter_flattened.wsdl"/>
+  <wsdl:binding name="CounterPortTypeSOAPBinding" type="porttype:CounterPortType">
+    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+    <wsdl:operation name="createCounter">
+      <soap:operation soapAction="http://counter.com/CounterPortType/createCounterRequest"/>
+      <wsdl:input>
+        <soap:body use="literal"/>
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal"/>
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="add">
+      <soap:operation soapAction="http://counter.com/CounterPortType/addRequest"/>
+      <wsdl:input>
+        <soap:body use="literal"/>
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal"/>
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="SetTerminationTime">
+      <soap:operation soapAction="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceLifetime/SetTerminationTime"/>
+      <wsdl:input>
+        <soap:body use="literal"/>
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal"/>
+      </wsdl:output>
+      <wsdl:fault name="UnableToSetTerminationTimeFault">
+        <soap:fault name="UnableToSetTerminationTimeFault" use="literal"/>
+      </wsdl:fault>
+      <wsdl:fault name="ResourceUnknownFault">
+        <soap:fault name="ResourceUnknownFault" use="literal"/>
+      </wsdl:fault>
+      <wsdl:fault name="TerminationTimeChangeRejectedFault">
+        <soap:fault name="TerminationTimeChangeRejectedFault" use="literal"/>
+      </wsdl:fault>
+    </wsdl:operation>
+    <wsdl:operation name="Destroy">
+      <soap:operation soapAction="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceLifetime/Destroy"/>
+      <wsdl:input>
+        <soap:body use="literal"/>
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal"/>
+      </wsdl:output>
+      <wsdl:fault name="ResourceNotDestroyedFault">
+        <soap:fault name="ResourceNotDestroyedFault" use="literal"/>
+      </wsdl:fault>
+      <wsdl:fault name="ResourceUnknownFault">
+        <soap:fault name="ResourceUnknownFault" use="literal"/>
+      </wsdl:fault>
+    </wsdl:operation>
+    <wsdl:operation name="QueryResourceProperties">
+      <soap:operation soapAction="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties/QueryResourceProperties"/>
+      <wsdl:input>
+        <soap:body use="literal"/>
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal"/>
+      </wsdl:output>
+      <wsdl:fault name="InvalidResourcePropertyQNameFault">
+        <soap:fault name="InvalidResourcePropertyQNameFault" use="literal"/>
+      </wsdl:fault>
+      <wsdl:fault name="InvalidQueryExpressionFault">
+        <soap:fault name="InvalidQueryExpressionFault" use="literal"/>
+      </wsdl:fault>
+      <wsdl:fault name="QueryEvaluationErrorFault">
+        <soap:fault name="QueryEvaluationErrorFault" use="literal"/>
+      </wsdl:fault>
+      <wsdl:fault name="ResourceUnknownFault">
+        <soap:fault name="ResourceUnknownFault" use="literal"/>
+      </wsdl:fault>
+      <wsdl:fault name="UnknownQueryExpressionDialectFault">
+        <soap:fault name="UnknownQueryExpressionDialectFault" use="literal"/>
+      </wsdl:fault>
+    </wsdl:operation>
+    <wsdl:operation name="GetMultipleResourceProperties">
+      <soap:operation soapAction="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties/GetMultipleResourceProperties"/>
+      <wsdl:input>
+        <soap:body use="literal"/>
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal"/>
+      </wsdl:output>
+      <wsdl:fault name="InvalidResourcePropertyQNameFault">
+        <soap:fault name="InvalidResourcePropertyQNameFault" use="literal"/>
+      </wsdl:fault>
+      <wsdl:fault name="ResourceUnknownFault">
+        <soap:fault name="ResourceUnknownFault" use="literal"/>
+      </wsdl:fault>
+    </wsdl:operation>
+    <wsdl:operation name="GetResourceProperty">
+      <soap:operation soapAction="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties/GetResourceProperty"/>
+      <wsdl:input>
+        <soap:body use="literal"/>
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal"/>
+      </wsdl:output>
+      <wsdl:fault name="InvalidResourcePropertyQNameFault">
+        <soap:fault name="InvalidResourcePropertyQNameFault" use="literal"/>
+      </wsdl:fault>
+      <wsdl:fault name="ResourceUnknownFault">
+        <soap:fault name="ResourceUnknownFault" use="literal"/>
+      </wsdl:fault>
+    </wsdl:operation>
+    <wsdl:operation name="Subscribe">
+      <soap:operation soapAction="http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification/Subscribe"/>
+      <wsdl:input>
+        <soap:body use="literal"/>
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal"/>
+      </wsdl:output>
+      <wsdl:fault name="TopicNotSupportedFault">
+        <soap:fault name="TopicNotSupportedFault" use="literal"/>
+      </wsdl:fault>
+      <wsdl:fault name="InvalidTopicExpressionFault">
+        <soap:fault name="InvalidTopicExpressionFault" use="literal"/>
+      </wsdl:fault>
+      <wsdl:fault name="SubscribeCreationFailedFault">
+        <soap:fault name="SubscribeCreationFailedFault" use="literal"/>
+      </wsdl:fault>
+      <wsdl:fault name="ResourceUnknownFault">
+        <soap:fault name="ResourceUnknownFault" use="literal"/>
+      </wsdl:fault>
+      <wsdl:fault name="TopicPathDialectUnknownFault">
+        <soap:fault name="TopicPathDialectUnknownFault" use="literal"/>
+      </wsdl:fault>
+    </wsdl:operation>
+    <wsdl:operation name="GetCurrentMessage">
+      <soap:operation soapAction="http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification/GetCurrentMessage"/>
+      <wsdl:input>
+        <soap:body use="literal"/>
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal"/>
+      </wsdl:output>
+      <wsdl:fault name="TopicNotSupportedFault">
+        <soap:fault name="TopicNotSupportedFault" use="literal"/>
+      </wsdl:fault>
+      <wsdl:fault name="InvalidTopicExpressionFault">
+        <soap:fault name="InvalidTopicExpressionFault" use="literal"/>
+      </wsdl:fault>
+      <wsdl:fault name="NoCurrentMessageOnTopicFault">
+        <soap:fault name="NoCurrentMessageOnTopicFault" use="literal"/>
+      </wsdl:fault>
+      <wsdl:fault name="ResourceUnknownFault">
+        <soap:fault name="ResourceUnknownFault" use="literal"/>
+      </wsdl:fault>
+    </wsdl:operation>
+  </wsdl:binding>
+</wsdl:definitions>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/blob/433612be/taverna-wsdl-activity/src/test/resources/org/apache/taverna/activities/wsdl/wsrf/counterService/counter_flattened.wsdl
----------------------------------------------------------------------
diff --git a/taverna-wsdl-activity/src/test/resources/org/apache/taverna/activities/wsdl/wsrf/counterService/counter_flattened.wsdl b/taverna-wsdl-activity/src/test/resources/org/apache/taverna/activities/wsdl/wsrf/counterService/counter_flattened.wsdl
new file mode 100644
index 0000000..cd5de52
--- /dev/null
+++ b/taverna-wsdl-activity/src/test/resources/org/apache/taverna/activities/wsdl/wsrf/counterService/counter_flattened.wsdl
@@ -0,0 +1,111 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<wsdl:definitions name="Counter" targetNamespace="http://counter.com" xmlns:wsrp="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties-1.2-draft-01.xsd" xmlns:tns="http://counter.com" xmlns:wsrpw="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties-1.2-draft-01.wsdl" xmlns:wsrlw="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceLifetime-1.2-draft-01.wsdl" xmlns:wsdlpp="http://www.globus.org/namespaces/2004/10/WSDLPreprocessor" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/03/addressing" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsntw="http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification-1.2-draft-01.wsdl" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns="http://schemas.xmlsoap.org/wsdl/">
+  <wsdl:import namespace="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceLifetime-1.2-draft-01.wsdl" location="WS-ResourceLifetime.wsdl"/>
+  <wsdl:import namespace="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties-1.2-draft-01.wsdl" location="WS-ResourceProperties.wsdl"/>
+  <wsdl:import namespace="http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification-1.2-draft-01.wsdl" location="WS-BaseN.wsdl"/>
+  <wsdl:types>
+    <xsd:schema elementFormDefault="qualified" targetNamespace="http://counter.com" xmlns:rpns0="http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification-1.2-draft-01.xsd" xmlns:rpns1="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceLifetime-1.2-draft-01.xsd">
+      <xsd:import namespace="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceLifetime-1.2-draft-01.xsd" schemaLocation="WS-ResourceLifetime.xsd"/>
+      <xsd:import namespace="http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification-1.2-draft-01.xsd" schemaLocation="WS-BaseN.xsd"/>
+      <xsd:import namespace="http://schemas.xmlsoap.org/ws/2004/03/addressing" schemaLocation="WS-Addressing.xsd"/>
+      <xsd:element name="createCounter">
+        <xsd:complexType/>
+      </xsd:element>
+      <xsd:element name="createCounterResponse">
+        <xsd:complexType>
+          <xsd:sequence>
+            <xsd:element ref="wsa:EndpointReference"/>
+          </xsd:sequence>
+        </xsd:complexType>
+      </xsd:element>
+      <xsd:element name="add" type="xsd:int"/>
+      <xsd:element name="addResponse" type="xsd:int"/>
+      <xsd:element name="Value" type="xsd:int"/>
+      <xsd:element name="CounterRP">
+        <xsd:complexType>
+          <xsd:sequence>
+            <xsd:element maxOccurs="1" minOccurs="1" ref="tns:Value"/>
+            <xsd:element maxOccurs="unbounded" minOccurs="1" ref="rpns0:Topic"/>
+            <xsd:element maxOccurs="unbounded" minOccurs="1" ref="rpns0:TopicExpressionDialects"/>
+            <xsd:element maxOccurs="1" minOccurs="1" ref="rpns1:TerminationTime"/>
+            <xsd:element maxOccurs="1" minOccurs="1" ref="rpns1:CurrentTime"/>
+            <xsd:element maxOccurs="1" minOccurs="1" ref="rpns0:FixedTopicSet"/>
+          </xsd:sequence>
+        </xsd:complexType>
+      </xsd:element>
+    </xsd:schema>
+  </wsdl:types>
+  <wsdl:message name="AddInputMessage">
+    <wsdl:part name="parameters" element="tns:add"/>
+  </wsdl:message>
+  <wsdl:message name="AddOutputMessage">
+    <wsdl:part name="parameters" element="tns:addResponse"/>
+  </wsdl:message>
+  <wsdl:message name="CreateCounterResponse">
+    <wsdl:part name="response" element="tns:createCounterResponse"/>
+  </wsdl:message>
+  <wsdl:message name="CreateCounterRequest">
+    <wsdl:part name="request" element="tns:createCounter"/>
+  </wsdl:message>
+  <wsdl:portType name="CounterPortType" wsrp:ResourceProperties="tns:CounterRP">
+    <wsdl:operation name="createCounter">
+      <wsdl:input message="tns:CreateCounterRequest"/>
+      <wsdl:output message="tns:CreateCounterResponse"/>
+    </wsdl:operation>
+    <wsdl:operation name="add">
+      <wsdl:input message="tns:AddInputMessage"/>
+      <wsdl:output message="tns:AddOutputMessage"/>
+    </wsdl:operation>
+    <wsdl:operation name="SetTerminationTime">
+      <wsdl:input message="wsrlw:SetTerminationTimeRequest" wsa:Action="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceLifetime/SetTerminationTime"/>
+      <wsdl:output message="wsrlw:SetTerminationTimeResponse" wsa:Action="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceLifetime/SetTerminationTimeResponse"/>
+      <wsdl:fault name="UnableToSetTerminationTimeFault" message="wsrlw:UnableToSetTerminationTimeFault"/>
+      <wsdl:fault name="ResourceUnknownFault" message="wsrlw:ResourceUnknownFault"/>
+      <wsdl:fault name="TerminationTimeChangeRejectedFault" message="wsrlw:TerminationTimeChangeRejectedFault"/>
+    </wsdl:operation>
+    <wsdl:operation name="Destroy">
+      <wsdl:input message="wsrlw:DestroyRequest" wsa:Action="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceLifetime/Destroy"/>
+      <wsdl:output message="wsrlw:DestroyResponse" wsa:Action="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceLifetime/DestroyResponse"/>
+      <wsdl:fault name="ResourceNotDestroyedFault" message="wsrlw:ResourceNotDestroyedFault"/>
+      <wsdl:fault name="ResourceUnknownFault" message="wsrlw:ResourceUnknownFault"/>
+    </wsdl:operation>
+    <wsdl:operation name="QueryResourceProperties">
+      <wsdl:input name="QueryResourcePropertiesRequest" message="wsrpw:QueryResourcePropertiesRequest" wsa:Action="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties/QueryResourceProperties"/>
+      <wsdl:output name="QueryResourcePropertiesResponse" message="wsrpw:QueryResourcePropertiesResponse" wsa:Action="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties/QueryResourcePropertiesResponse"/>
+      <wsdl:fault name="InvalidResourcePropertyQNameFault" message="wsrpw:InvalidResourcePropertyQNameFault"/>
+      <wsdl:fault name="InvalidQueryExpressionFault" message="wsrpw:InvalidQueryExpressionFault"/>
+      <wsdl:fault name="QueryEvaluationErrorFault" message="wsrpw:QueryEvaluationErrorFault"/>
+      <wsdl:fault name="ResourceUnknownFault" message="wsrpw:ResourceUnknownFault"/>
+      <wsdl:fault name="UnknownQueryExpressionDialectFault" message="wsrpw:UnknownQueryExpressionDialectFault"/>
+    </wsdl:operation>
+    <wsdl:operation name="GetMultipleResourceProperties">
+      <wsdl:input name="GetMultipleResourcePropertiesRequest" message="wsrpw:GetMultipleResourcePropertiesRequest" wsa:Action="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties/GetMultipleResourceProperties"/>
+      <wsdl:output name="GetMultipleResourcePropertiesResponse" message="wsrpw:GetMultipleResourcePropertiesResponse" wsa:Action="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties/GetMultipleResourcePropertiesResponse"/>
+      <wsdl:fault name="InvalidResourcePropertyQNameFault" message="wsrpw:InvalidResourcePropertyQNameFault"/>
+      <wsdl:fault name="ResourceUnknownFault" message="wsrpw:ResourceUnknownFault"/>
+    </wsdl:operation>
+    <wsdl:operation name="GetResourceProperty">
+      <wsdl:input name="GetResourcePropertyRequest" message="wsrpw:GetResourcePropertyRequest" wsa:Action="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties/GetResourceProperty"/>
+      <wsdl:output name="GetResourcePropertyResponse" message="wsrpw:GetResourcePropertyResponse" wsa:Action="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties/GetResourcePropertyResponse"/>
+      <wsdl:fault name="InvalidResourcePropertyQNameFault" message="wsrpw:InvalidResourcePropertyQNameFault"/>
+      <wsdl:fault name="ResourceUnknownFault" message="wsrpw:ResourceUnknownFault"/>
+    </wsdl:operation>
+    <wsdl:operation name="Subscribe">
+      <wsdl:input message="wsntw:SubscribeRequest" wsa:Action="http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification/Subscribe"/>
+      <wsdl:output message="wsntw:SubscribeResponse" wsa:Action="http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification/SubscribeResponse"/>
+      <wsdl:fault name="TopicNotSupportedFault" message="wsntw:TopicNotSupportedFault"/>
+      <wsdl:fault name="InvalidTopicExpressionFault" message="wsntw:InvalidTopicExpressionFault"/>
+      <wsdl:fault name="SubscribeCreationFailedFault" message="wsntw:SubscribeCreationFailedFault"/>
+      <wsdl:fault name="ResourceUnknownFault" message="wsntw:ResourceUnknownFault"/>
+      <wsdl:fault name="TopicPathDialectUnknownFault" message="wsntw:TopicPathDialectUnknownFault"/>
+    </wsdl:operation>
+    <wsdl:operation name="GetCurrentMessage">
+      <wsdl:input message="wsntw:GetCurrentMessageRequest" wsa:Action="http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification/GetCurrentMessage"/>
+      <wsdl:output message="wsntw:GetCurrentMessageResponse" wsa:Action="http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification/GetCurrentMessageResponse"/>
+      <wsdl:fault name="TopicNotSupportedFault" message="wsntw:TopicNotSupportedFault"/>
+      <wsdl:fault name="InvalidTopicExpressionFault" message="wsntw:InvalidTopicExpressionFault"/>
+      <wsdl:fault name="NoCurrentMessageOnTopicFault" message="wsntw:NoCurrentMessageOnTopicFault"/>
+      <wsdl:fault name="ResourceUnknownFault" message="wsntw:ResourceUnknownFault"/>
+    </wsdl:operation>
+  </wsdl:portType>
+</wsdl:definitions>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/blob/433612be/taverna-wsdl-activity/src/test/resources/org/apache/taverna/activities/wsdl/wsrf/counterService/xml.xsd
----------------------------------------------------------------------
diff --git a/taverna-wsdl-activity/src/test/resources/org/apache/taverna/activities/wsdl/wsrf/counterService/xml.xsd b/taverna-wsdl-activity/src/test/resources/org/apache/taverna/activities/wsdl/wsrf/counterService/xml.xsd
new file mode 100644
index 0000000..730b4c9
--- /dev/null
+++ b/taverna-wsdl-activity/src/test/resources/org/apache/taverna/activities/wsdl/wsrf/counterService/xml.xsd
@@ -0,0 +1,105 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema targetNamespace="http://www.w3.org/XML/1998/namespace" xml:lang="en" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+  <xs:annotation>
+    <xs:documentation>See http://www.w3.org/XML/1998/namespace.html and
+   http://www.w3.org/TR/REC-xml for information about this namespace.
+
+    This schema document describes the XML namespace, in a form
+    suitable for import by other schema documents.  
+
+    Note that local names in this namespace are intended to be defined
+    only by the World Wide Web Consortium or its subgroups.  The
+    following names are currently defined in this namespace and should
+    not be used with conflicting semantics by any Working Group,
+    specification, or document instance:
+
+    base (as an attribute name): denotes an attribute whose value
+         provides a URI to be used as the base for interpreting any
+         relative URIs in the scope of the element on which it
+         appears; its value is inherited.  This name is reserved
+         by virtue of its definition in the XML Base specification.
+
+    lang (as an attribute name): denotes an attribute whose value
+         is a language code for the natural language of the content of
+         any element; its value is inherited.  This name is reserved
+         by virtue of its definition in the XML specification.
+  
+    space (as an attribute name): denotes an attribute whose
+         value is a keyword indicating what whitespace processing
+         discipline is intended for the content of the element; its
+         value is inherited.  This name is reserved by virtue of its
+         definition in the XML specification.
+
+    Father (in any context at all): denotes Jon Bosak, the chair of 
+         the original XML Working Group.  This name is reserved by 
+         the following decision of the W3C XML Plenary and 
+         XML Coordination groups:
+
+             In appreciation for his vision, leadership and dedication
+             the W3C XML Plenary on this 10th day of February, 2000
+             reserves for Jon Bosak in perpetuity the XML name
+             xml:Father</xs:documentation>
+  </xs:annotation>
+  <xs:annotation>
+    <xs:documentation>This schema defines attributes and an attribute group
+        suitable for use by
+        schemas wishing to allow xml:base, xml:lang or xml:space attributes
+        on elements they define.
+
+        To enable this, such a schema must import this schema
+        for the XML namespace, e.g. as follows:
+        &lt;schema . . .>
+         . . .
+         &lt;import namespace="http://www.w3.org/XML/1998/namespace"
+                    schemaLocation="http://www.w3.org/2001/03/xml.xsd"/>
+
+        Subsequently, qualified reference to any of the attributes
+        or the group defined below will have the desired effect, e.g.
+
+        &lt;type . . .>
+         . . .
+         &lt;attributeGroup ref="xml:specialAttrs"/>
+ 
+         will define a type which will schema-validate an instance
+         element with any of those attributes</xs:documentation>
+  </xs:annotation>
+  <xs:annotation>
+    <xs:documentation>In keeping with the XML Schema WG's standard versioning
+   policy, this schema document will persist at
+   http://www.w3.org/2001/03/xml.xsd.
+   At the date of issue it can also be found at
+   http://www.w3.org/2001/xml.xsd.
+   The schema document at that URI may however change in the future,
+   in order to remain compatible with the latest version of XML Schema
+   itself.  In other words, if the XML Schema namespace changes, the version
+   of this document at
+   http://www.w3.org/2001/xml.xsd will change
+   accordingly; the version at
+   http://www.w3.org/2001/03/xml.xsd will not change.</xs:documentation>
+  </xs:annotation>
+  <xs:attribute name="lang" type="xs:language">
+    <xs:annotation>
+      <xs:documentation>In due course, we should install the relevant ISO 2- and 3-letter
+         codes as the enumerated possible values . . .</xs:documentation>
+    </xs:annotation>
+  </xs:attribute>
+  <xs:attribute name="space" default="preserve">
+    <xs:simpleType>
+      <xs:restriction base="xs:NCName">
+        <xs:enumeration value="default"/>
+        <xs:enumeration value="preserve"/>
+      </xs:restriction>
+    </xs:simpleType>
+  </xs:attribute>
+  <xs:attribute name="base" type="xs:anyURI">
+    <xs:annotation>
+      <xs:documentation>See http://www.w3.org/TR/xmlbase/ for
+                     information about this attribute.</xs:documentation>
+    </xs:annotation>
+  </xs:attribute>
+  <xs:attributeGroup name="specialAttrs">
+    <xs:attribute ref="xml:base"/>
+    <xs:attribute ref="xml:lang"/>
+    <xs:attribute ref="xml:space"/>
+  </xs:attributeGroup>
+</xs:schema>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/blob/433612be/taverna-wsdl-generic/pom.xml
----------------------------------------------------------------------
diff --git a/taverna-wsdl-generic/pom.xml b/taverna-wsdl-generic/pom.xml
index 0b7644f..3301670 100644
--- a/taverna-wsdl-generic/pom.xml
+++ b/taverna-wsdl-generic/pom.xml
@@ -7,12 +7,14 @@
 		<artifactId>taverna-common-activities</artifactId>
 		<version>2.1.0-incubating-SNAPSHOT</version>
 	</parent>
+        
 	<artifactId>taverna-wsdl-generic</artifactId>
+        <!--
+        <version>2.1.1-incubating-SNAPSHOT</version>
+        -->
 	<packaging>bundle</packaging>
 	<name>Apache Taverna WSDL-generic Library</name>
-	<description>
-        Generic WSDL SOAP handling (parsing, calling)
-    </description>
+	<description>WSDL 1.1/2.0 generic parsing library</description>
 
 	<build>
 		<plugins>
@@ -52,11 +54,7 @@
 	</build>
 
 	<dependencies>
-		<dependency>
-			<groupId>org.apache.axis</groupId>
-			<artifactId>com.springsource.org.apache.axis</artifactId>
-			<version>${axis.version}</version>
-		</dependency>
+
 		<dependency>
 			<groupId>log4j</groupId>
 			<artifactId>log4j</artifactId>
@@ -77,11 +75,21 @@
 			<artifactId>com.springsource.javax.wsdl</artifactId>
 			<version>${javax.wsdl.version}</version>
 		</dependency>
-		<dependency>
-			<groupId>javax.xml.rpc</groupId>
-			<artifactId>com.springsource.javax.xml.rpc</artifactId>
-			<version>${xml.rpc.version}</version>
-		</dependency>
+                <dependency>
+                    <groupId>org.apache.woden</groupId>
+                    <artifactId>woden</artifactId>
+                    <version>1.0M9</version>
+                </dependency>
+                <dependency>
+                        <groupId>org.apache.ws.xmlschema</groupId>
+                        <artifactId>xmlschema-core</artifactId>
+                        <version>2.1.0</version>
+                </dependency>
+                <dependency>
+                        <groupId>org.apache.ws.security</groupId>
+                        <artifactId>wss4j</artifactId>
+                        <version>1.6.18</version>
+                </dependency>
 		<dependency>
 			<groupId>junit</groupId>
 			<artifactId>junit</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/blob/433612be/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/ArrayTypeDescriptor.java
----------------------------------------------------------------------
diff --git a/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/ArrayTypeDescriptor.java b/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/ArrayTypeDescriptor.java
deleted file mode 100644
index f94d5b8..0000000
--- a/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/ArrayTypeDescriptor.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2007 The University of Manchester   
- * 
- *  Modifications to the initial code base are copyright of their
- *  respective authors, or their employers as appropriate.
- * 
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU Lesser General Public License
- *  as published by the Free Software Foundation; either version 2.1 of
- *  the License, or (at your option) any later version.
- *    
- *  This program is distributed in the hope that it will be useful, but
- *  WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- *  Lesser General Public License for more details.
- *    
- *  You should have received a copy of the GNU Lesser General Public
- *  License along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- ******************************************************************************/
-package net.sf.taverna.wsdl.parser;
-
-
-/**
- * A TypeDescriptor that specifically describes an array type
- * 
- */
-public class ArrayTypeDescriptor extends TypeDescriptor {
-	private TypeDescriptor elementType;
-	private boolean wrapped;
-	
-	public boolean isWrapped() {
-		return wrapped;		
-	}
-
-	public void setWrapped(boolean wrapped) {
-		this.wrapped = wrapped;
-	}
-
-	public TypeDescriptor getElementType() {
-		return elementType;
-	}
-
-	public void setElementType(TypeDescriptor elementType) {
-		this.elementType = elementType;
-	}
-
-	@Override
-	public String getName() {
-		String name = super.getName();
-		if (name == null) {
-			return "ArrayOf" + getElementType().getType();
-		}
-		return name;
-	}
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/blob/433612be/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/AttributeTypeDescriptor.java
----------------------------------------------------------------------
diff --git a/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/AttributeTypeDescriptor.java b/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/AttributeTypeDescriptor.java
deleted file mode 100644
index a8d0c37..0000000
--- a/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/AttributeTypeDescriptor.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2011 The University of Manchester   
- * 
- *  Modifications to the initial code base are copyright of their
- *  respective authors, or their employers as appropriate.
- * 
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU Lesser General Public License
- *  as published by the Free Software Foundation; either version 2.1 of
- *  the License, or (at your option) any later version.
- *    
- *  This program is distributed in the hope that it will be useful, but
- *  WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- *  Lesser General Public License for more details.
- *    
- *  You should have received a copy of the GNU Lesser General Public
- *  License along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- ******************************************************************************/
-package net.sf.taverna.wsdl.parser;
-
-/**
- * A TypeDescriptor specifically for attributes.
- * 
- * @author David Withers
- */
-public class AttributeTypeDescriptor extends TypeDescriptor {
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/blob/433612be/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/BaseTypeDescriptor.java
----------------------------------------------------------------------
diff --git a/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/BaseTypeDescriptor.java b/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/BaseTypeDescriptor.java
deleted file mode 100644
index d911c43..0000000
--- a/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/BaseTypeDescriptor.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2007 The University of Manchester   
- * 
- *  Modifications to the initial code base are copyright of their
- *  respective authors, or their employers as appropriate.
- * 
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU Lesser General Public License
- *  as published by the Free Software Foundation; either version 2.1 of
- *  the License, or (at your option) any later version.
- *    
- *  This program is distributed in the hope that it will be useful, but
- *  WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- *  Lesser General Public License for more details.
- *    
- *  You should have received a copy of the GNU Lesser General Public
- *  License along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- ******************************************************************************/
-package net.sf.taverna.wsdl.parser;
-
-
-/**
- * A TypeDescriptor specifically for basic types (e.g. string, float, int,
- * base64binary)
- * 
- */
-public class BaseTypeDescriptor extends TypeDescriptor {
-
-	
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/blob/433612be/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/ComplexTypeDescriptor.java
----------------------------------------------------------------------
diff --git a/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/ComplexTypeDescriptor.java b/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/ComplexTypeDescriptor.java
deleted file mode 100644
index 766c913..0000000
--- a/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/ComplexTypeDescriptor.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2007 The University of Manchester   
- * 
- *  Modifications to the initial code base are copyright of their
- *  respective authors, or their employers as appropriate.
- * 
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU Lesser General Public License
- *  as published by the Free Software Foundation; either version 2.1 of
- *  the License, or (at your option) any later version.
- *    
- *  This program is distributed in the hope that it will be useful, but
- *  WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- *  Lesser General Public License for more details.
- *    
- *  You should have received a copy of the GNU Lesser General Public
- *  License along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- ******************************************************************************/
-package net.sf.taverna.wsdl.parser;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * A TypeDescriptor that specifically describes a complex type
- * 
- */
-public class ComplexTypeDescriptor extends TypeDescriptor {
-	private List<TypeDescriptor> elements = new ArrayList<TypeDescriptor>();
-	private List<TypeDescriptor> attributes = new ArrayList<TypeDescriptor>();
-
-	public List<TypeDescriptor> getElements() {
-		return elements;
-	}
-
-	public void setElements(List<TypeDescriptor> elements) {
-		this.elements = elements;
-	}
-	
-	public TypeDescriptor elementForName(String name) {
-		TypeDescriptor result=null;
-		for (TypeDescriptor desc : getElements()) {
-			if (desc.getName().equals(name)) {
-				result=desc;
-				break;
-			}
-		}
-		return result;
-	}
-
-	public List<TypeDescriptor> getAttributes() {
-		return attributes;
-	}
-
-	public void setAttributes(List<TypeDescriptor> attributes) {
-		this.attributes = attributes;
-	}
-
-	public TypeDescriptor attributeForName(String name) {
-		TypeDescriptor result=null;
-		for (TypeDescriptor desc : getAttributes()) {
-			if (desc.getName().equals(name)) {
-				result=desc;
-				break;
-			}
-		}
-		return result;
-	}
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/blob/433612be/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/TypeDescriptor.java
----------------------------------------------------------------------
diff --git a/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/TypeDescriptor.java b/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/TypeDescriptor.java
deleted file mode 100644
index 69344f8..0000000
--- a/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/TypeDescriptor.java
+++ /dev/null
@@ -1,297 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2007 The University of Manchester   
- * 
- *  Modifications to the initial code base are copyright of their
- *  respective authors, or their employers as appropriate.
- * 
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU Lesser General Public License
- *  as published by the Free Software Foundation; either version 2.1 of
- *  the License, or (at your option) any later version.
- *    
- *  This program is distributed in the hope that it will be useful, but
- *  WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- *  Lesser General Public License for more details.
- *    
- *  You should have received a copy of the GNU Lesser General Public
- *  License along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- ******************************************************************************/
-package net.sf.taverna.wsdl.parser;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import javax.xml.namespace.QName;
-
-
-/**
- * Base class for all descriptors for type
- * 
- */
-public class TypeDescriptor {
-	private String name;
-
-	private String type;
-
-	private boolean optional;
-
-	private boolean unbounded;
-
-	private QName qname;
-
-	private boolean nillable = false;
-	
-	private String documentation;
-
-	public boolean isNillable() {
-		return nillable;
-	}
-
-	public QName getQname() {
-		if (qname != null)
-			return qname;
-		else {
-			return new QName("", type);
-		}
-	}
-
-	public void setQnameFromString(String qname) {
-		String[] split = qname.split("}");
-		if (split.length == 1) {
-			this.qname = new QName("", qname);
-		} else {
-			String uri = split[0];
-			uri = uri.replaceAll("\\{", "");
-			uri = uri.replaceAll("\\}", "");
-			this.qname = new QName(uri, split[1]);
-		}
-	}
-
-	public String getMimeType() {
-		return translateJavaType(determineClassType(this));
-	}
-	
-	public void setQname(QName qname) {
-		this.qname = qname;
-	}
-
-	public String getNamespaceURI() {
-		return getQname().getNamespaceURI();
-	}
-
-	public String getName() {
-		return name;
-	}
-
-	public void setName(String name) {
-		int i;
-		if ((i = name.lastIndexOf('>')) != -1) {
-			this.name = name.substring(i + 1);
-		} else {
-			this.name = name;
-		}
-	}
-	
-	/**
-     * @return the depth determined from the syntactic mime type of the original
-     *         port. i.e text/plain = 0, l('text/plain') = 1, l(l('text/plain')) =
-     *         2, ... etc.
-     */
-    public int getDepth() {
-    	String syntacticType=getMimeType();
-        if (syntacticType == null) {
-                return 0;
-        } else {
-                return syntacticType.split("l\\(").length - 1;
-        }
-    }
-
-	public boolean isOptional() {
-		return optional;
-	}
-
-	public void setOptional(boolean optional) {
-		this.optional = optional;
-	}
-
-	public String getType() {
-		return type;
-	}
-
-	public void setType(String type) {
-		this.type = type;
-	}
-
-	public boolean isUnbounded() {
-		return unbounded;
-	}
-
-	public void setUnbounded(boolean unbounded) {
-		this.unbounded = unbounded;
-	}
-
-	@Override
-	public String toString() {
-		return name + ":" + type;
-	}
-
-	/**
-	 * Translate a java type into a taverna type string
-	 */
-	public static String translateJavaType(Class<?> type) {
-		if (type.equals(String[].class)) {
-			return "l('text/plain')";
-		} else if (type.equals(org.w3c.dom.Element.class)) {
-			return "'text/xml'";
-		}
-
-		else if (type.equals(org.w3c.dom.Element[].class)) {
-			return "l('text/xml')";
-		} else if (type.equals(byte[].class)) {
-			return "'application/octet-stream'";
-		} else {
-			return "'text/plain'";
-		}
-	}
-
-	public static void retrieveSignature(List<TypeDescriptor> params, String[] names,
-			Class<?>[] types) {
-		for (int i = 0; i < names.length; i++) {
-			TypeDescriptor descriptor = params.get(i);
-			names[i] = descriptor.getName();
-			
-			types[i]=determineClassType(descriptor);
-		}
-	}
-
-	private static Class<?> determineClassType(TypeDescriptor descriptor) {
-		String s = descriptor.getType().toLowerCase();
-		Class<?> type;
-		if (descriptor instanceof ArrayTypeDescriptor) {
-			if (((ArrayTypeDescriptor) descriptor).getElementType() instanceof BaseTypeDescriptor) {
-				type = String[].class;
-			} else if (((ArrayTypeDescriptor) descriptor).isUnbounded()) {
-				type = org.w3c.dom.Element[].class;
-			}
-			else {
-				type = org.w3c.dom.Element.class;
-			}
-		} else {
-			if ("string".equals(s)) {
-				type = String.class;
-			} else if ("double".equals(s) || "decimal".equals(s)) {
-				type = Double.TYPE;
-			} else if ("float".equals(s)) {
-				type = Float.TYPE;
-			} else if ("int".equals(s) || "integer".equals(s)) {
-				type = Integer.TYPE;
-			} else if ("boolean".equals(s)) {
-				type = Boolean.TYPE;
-			} else if ("base64binary".equals(s)) {
-				type = byte[].class;
-			} else {
-				//treat any other basetype as a String.
-				if (descriptor instanceof BaseTypeDescriptor) {
-					type=String.class;
-				}
-				else {
-					type = org.w3c.dom.Element.class;
-				}
-			}
-		}
-		return type;
-	}
-
-	/**
-	 * Determines whether the descriptor describes a data structure that is
-	 * cyclic, i.e. contains inner elements that contain references to outer
-	 * elements, leading to a state of infinate recursion.
-	 * 
-	 * @param descriptor
-	 * @return
-	 */
-	public static boolean isCyclic(TypeDescriptor descriptor) {
-		boolean result = false;
-		if (!(descriptor instanceof BaseTypeDescriptor)) {
-			if (descriptor instanceof ComplexTypeDescriptor) {
-				result = testForCyclic((ComplexTypeDescriptor) descriptor,
-						new ArrayList<String>());
-			} else {
-				result = testForCyclic((ArrayTypeDescriptor) descriptor,
-						new ArrayList<String>());
-			}
-		}
-		return result;
-	}
-
-	@SuppressWarnings("unchecked")
-	private static boolean testForCyclic(ComplexTypeDescriptor descriptor,
-			List<String> parents) {
-		boolean result = false;
-		String descKey = descriptor.getQname().toString();
-		if (parents.contains(descKey))
-			result = true;
-		else {
-			parents.add(descKey);
-			List elements = descriptor.getElements();
-			for (Iterator iterator = elements.iterator(); iterator.hasNext();) {
-				TypeDescriptor elementDescriptor = (TypeDescriptor) iterator
-						.next();
-				if (elementDescriptor instanceof ComplexTypeDescriptor) {
-					result = testForCyclic(
-							(ComplexTypeDescriptor) elementDescriptor, parents);
-				} else if (elementDescriptor instanceof ArrayTypeDescriptor) {
-					result = testForCyclic(
-							(ArrayTypeDescriptor) elementDescriptor, parents);
-				}
-
-				if (result)
-					break;
-			}
-
-			parents.remove(descKey);
-		}
-		return result;
-	}
-
-	private static boolean testForCyclic(ArrayTypeDescriptor descriptor,
-			List<String> parents) {
-		boolean result = false;
-		String descKey = descriptor.getQname().toString();
-		if (parents.contains(descKey))
-			result = true;
-		else {
-			parents.add(descKey);
-
-			TypeDescriptor elementDescriptor = descriptor
-					.getElementType();
-			if (elementDescriptor instanceof ComplexTypeDescriptor) {
-				result = testForCyclic(
-						(ComplexTypeDescriptor) elementDescriptor, parents);
-			} else if (elementDescriptor instanceof ArrayTypeDescriptor) {
-				result = testForCyclic((ArrayTypeDescriptor) elementDescriptor,
-						parents);
-			}
-
-			parents.remove(descKey);
-		}
-		return result;
-	}
-
-	public void setNillable(boolean nillable) {
-		this.nillable  = nillable;
-		
-		
-	}
-
-	public String getDocumentation() {
-		return documentation;
-	}
-
-	public void setDocumentation(String documentation) {
-		this.documentation = documentation;
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/blob/433612be/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/UnknownOperationException.java
----------------------------------------------------------------------
diff --git a/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/UnknownOperationException.java b/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/UnknownOperationException.java
deleted file mode 100644
index 049a7a1..0000000
--- a/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/UnknownOperationException.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2007 The University of Manchester   
- * 
- *  Modifications to the initial code base are copyright of their
- *  respective authors, or their employers as appropriate.
- * 
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU Lesser General Public License
- *  as published by the Free Software Foundation; either version 2.1 of
- *  the License, or (at your option) any later version.
- *    
- *  This program is distributed in the hope that it will be useful, but
- *  WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- *  Lesser General Public License for more details.
- *    
- *  You should have received a copy of the GNU Lesser General Public
- *  License along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- ******************************************************************************/
-package net.sf.taverna.wsdl.parser;
-
-/**
- * Exception thrown when a given service operation name cannot be found for that
- * WSDL
- * 
- * @author Stuart Owen
- * 
- */
-
-public class UnknownOperationException extends Exception {
-	private static final long serialVersionUID = -9119188266154359132L;
-
-	UnknownOperationException(String val) {
-		super(val);
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/blob/433612be/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/WSDLParser.java
----------------------------------------------------------------------
diff --git a/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/WSDLParser.java b/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/WSDLParser.java
deleted file mode 100644
index b5b028c..0000000
--- a/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/WSDLParser.java
+++ /dev/null
@@ -1,936 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2007 The University of Manchester   
- * 
- *  Modifications to the initial code base are copyright of their
- *  respective authors, or their employers as appropriate.
- * 
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU Lesser General Public License
- *  as published by the Free Software Foundation; either version 2.1 of
- *  the License, or (at your option) any later version.
- *    
- *  This program is distributed in the hope that it will be useful, but
- *  WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- *  Lesser General Public License for more details.
- *    
- *  You should have received a copy of the GNU Lesser General Public
- *  License along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- ******************************************************************************/
-package net.sf.taverna.wsdl.parser;
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.Map.Entry;
-
-import javax.wsdl.Binding;
-import javax.wsdl.BindingOperation;
-import javax.wsdl.Definition;
-import javax.wsdl.Import;
-import javax.wsdl.Operation;
-import javax.wsdl.Part;
-import javax.wsdl.Port;
-import javax.wsdl.PortType;
-import javax.wsdl.Service;
-import javax.wsdl.WSDLException;
-import javax.wsdl.extensions.ExtensibilityElement;
-import javax.wsdl.extensions.soap.SOAPAddress;
-import javax.wsdl.extensions.soap.SOAPBinding;
-import javax.wsdl.extensions.soap.SOAPBody;
-import javax.xml.namespace.QName;
-import javax.xml.parsers.ParserConfigurationException;
-
-import org.apache.axis.wsdl.gen.NoopFactory;
-import org.apache.axis.wsdl.symbolTable.BindingEntry;
-import org.apache.axis.wsdl.symbolTable.CollectionElement;
-import org.apache.axis.wsdl.symbolTable.CollectionType;
-import org.apache.axis.wsdl.symbolTable.ContainedAttribute;
-import org.apache.axis.wsdl.symbolTable.DefinedElement;
-import org.apache.axis.wsdl.symbolTable.DefinedType;
-import org.apache.axis.wsdl.symbolTable.ElementDecl;
-import org.apache.axis.wsdl.symbolTable.Parameter;
-import org.apache.axis.wsdl.symbolTable.Parameters;
-import org.apache.axis.wsdl.symbolTable.SymbolTable;
-import org.apache.axis.wsdl.symbolTable.TypeEntry;
-import org.apache.log4j.Logger; //import org.apache.wsif.providers.soap.apacheaxis.WSIFDynamicProvider_ApacheAxis;
-//import org.apache.wsif.util.WSIFPluggableProviders;
-import org.xml.sax.SAXException;
-
-import com.ibm.wsdl.extensions.soap.SOAPBindingImpl;
-import com.ibm.wsdl.extensions.soap.SOAPOperationImpl;
-import org.apache.axis.wsdl.symbolTable.SchemaUtils;
-
-/**
- * A Parser for processing WSDL files to determine information about available
- * services and the required types needed to invoke that particular service.
- * Handles Complex Types and wsdl imports.
- * 
- * @author Stuart Owen
- * @author Stian Soiland-Reyes
- * @author Asger Askov-Bleking
- * 
- */
-
-@SuppressWarnings("unchecked")
-public class WSDLParser {
-
-	private static final String GET_SERVICE_SECURITY_METADATA_REQUEST = "GetServiceSecurityMetadataRequest";
-
-	private static final String GET_SERVICE_SECURITY_METADATA = "getServiceSecurityMetadata";
-
-	private static final String SET_TERMINATION_TIME = "SetTerminationTime";
-
-	private static final String GET_RESOURCE_PROPERTY = "GetResourceProperty";
-
-	private static final String DESTROY = "Destroy";
-
-	private static final String SERVICE_SECURITY_URI = "http://security.introduce.cagrid.nci.nih.gov/ServiceSecurity/";
-
-	private static final String RESOURCE_LIFETIME_URI = "http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceLifetime/";
-
-	private static final String RESOURCE_PROPERTIES_URI = "http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties/";
-
-	private static Logger logger = Logger.getLogger(WSDLParser.class);
-
-	private String wsdlLocation;
-
-	/**
-	 * Cache for SymbolTable to remove the need for reprocessing each time.
-	 */
-	private static Map<String, SymbolTable> symbolTableMap = Collections
-			.synchronizedMap(new HashMap<String, SymbolTable>());
-
-	/**
-	 * Cache for operations, to remove the need for reprocessing each time.
-	 */
-	private static Map<String, List<Operation>> operationMap = Collections
-			.synchronizedMap(new HashMap<String, List<Operation>>());
-
-	private static Map<String, Map<String, Binding>> bindingMap = Collections
-			.synchronizedMap(new HashMap<String, Map<String, Binding>>());
-
-	private static Map<String, String> styleMap = Collections
-			.synchronizedMap(new HashMap<String, String>());
-
-	private static Map<String, Map<String, PortType>> portTypeMap = Collections
-			.synchronizedMap(new HashMap<String, Map<String, PortType>>());
-
-	private Map<String, ComplexTypeDescriptor> cachedComplexTypes = Collections
-			.synchronizedMap(new HashMap<String, ComplexTypeDescriptor>());
-
-	private Map<String, BindingOperation> bindingOperations = Collections
-			.synchronizedMap(new HashMap<String, BindingOperation>());
-
-	private boolean isWsrfService;
-
-	public boolean isWsrfService() {
-		return isWsrfService;
-	}
-
-	/**
-	 * Constructor which takes the location of the base wsdl file, and begins to
-	 * process it
-	 * 
-	 * @param wsdlLocation
-	 *            - the location of the wsdl file
-	 * @throws ParserConfigurationException
-	 * @throws WSDLException
-	 * @throws IOException
-	 * @throws SAXException
-	 */
-	public WSDLParser(String wsdlLocation) throws ParserConfigurationException,
-			WSDLException, IOException, SAXException {
-
-		this.wsdlLocation = wsdlLocation;
-
-		// WSIFPluggableProviders.overrideDefaultProvider(
-		// "http://schemas.xmlsoap.org/wsdl/soap/",
-		// new WSIFDynamicProvider_ApacheAxis());
-
-		if (!symbolTableMap.containsKey(wsdlLocation)) {
-			SymbolTable symbolTable = new SymbolTable(new NoopFactory()
-					.getBaseTypeMapping(), true, false, false);
-
-			// Avoid printouts like
-			// {http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties-1.2-draft-01.wsdl}GetMultipleResourcePropertiesResponse
-			// already exists
-			symbolTable.setQuiet(true);
-
-			symbolTable.populate(wsdlLocation);
-			symbolTableMap.put(wsdlLocation, symbolTable);
-			operationMap.put(wsdlLocation, determineOperations());
-		}
-		checkWSRF();
-	}
-
-	/**
-	 * flushes all the caches of entries associated with provided wsdl location
-	 * 
-	 * @param wsdlLocation
-	 */
-	public synchronized static void flushCache(String wsdlLocation) {
-		operationMap.remove(wsdlLocation);
-		bindingMap.remove(wsdlLocation);
-		styleMap.remove(wsdlLocation);
-		portTypeMap.remove(wsdlLocation);
-		symbolTableMap.remove(wsdlLocation);
-	}
-
-	/**
-	 * @return a list of WSDLOperations for all operations for this service,
-	 */
-	public List<Operation> getOperations() {
-		return operationMap.get(getWSDLLocation());
-	}
-
-	/**
-	 * @return the wsdl location for which this parser was constructed
-	 */
-	public String getWSDLLocation() {
-		return wsdlLocation;
-	}
-
-	/**
-	 * @return the Definition for this service
-	 */
-	public Definition getDefinition() {
-		return getSymbolTable().getDefinition();
-	}
-
-	public List<String> getOperationEndpointLocations(String operationName) {
-		List<String> result = new ArrayList<String>();
-		Collection<Service> services = getDefinition().getServices().values();
-		Binding binding = getBinding(operationName);
-		for (Service service : services) {
-			Collection<Port> ports = service.getPorts().values();
-			for (Port port : ports) {
-				if (port.getBinding().equals(binding)) {
-					for (Object obj : port.getExtensibilityElements()) {
-						if (obj instanceof SOAPAddress) {
-							SOAPAddress address = (SOAPAddress) obj;
-							String endpoint = address.getLocationURI();
-							result.add(endpoint);
-						}
-					}
-				}
-			}
-		}
-		return result;
-	}
-
-	private Binding getBinding(String operationName) {
-		Binding result = null;
-		Map<String, Binding> bindingToOpMap = bindingMap.get(getWSDLLocation());
-		if (bindingToOpMap != null) {
-			result = bindingToOpMap.get(operationName);
-		}
-		return result;
-	}
-
-	/**
-	 * 
-	 * @return the style, i.e. document or rpc
-	 */
-	public String getStyle() {
-		return styleMap.get(getWSDLLocation());
-	}
-
-	/**
-	 * Provides the PortType for a given operation.
-	 * 
-	 * @param operationName
-	 *            the name of the operation the PortType is required for.
-	 * @return the PortType
-	 */
-	public PortType getPortType(String operationName) {
-		PortType result = null;
-		Map<String, PortType> portToOpMap = portTypeMap.get(getWSDLLocation());
-		if (portToOpMap != null) {
-			result = portToOpMap.get(operationName);
-		}
-		return result;
-	}
-
-	/**
-	 * Returns a List of the TypeDescriptors representing the parameters for the
-	 * inputs to the service
-	 * 
-	 * @param operationName
-	 * @return List of TypeDescriptor
-	 * @throws UnknownOperationException
-	 *             if no operation matches the name
-	 * @throws IOException
-	 * 
-	 */
-	public List<TypeDescriptor> getOperationInputParameters(String operationName)
-			throws UnknownOperationException, IOException {
-		Operation operation = getOperation(operationName);
-		List<TypeDescriptor> result = new ArrayList<TypeDescriptor>();
-		if (operation == null) {
-			throw new UnknownOperationException("operation called "
-					+ operationName + " does not exist for this wsdl");
-		}
-
-		Parameters parameters = getSymbolTable().getOperationParameters(
-				operation, "", new BindingEntry(getBinding(operationName)));
-
-		for (Iterator iterator = parameters.list.iterator(); iterator.hasNext();) {
-			Parameter param = (Parameter) iterator.next();
-			if (param.getMode() == Parameter.IN) {
-				TypeDescriptor typeDescriptor = processParameter(param);
-				if (typeDescriptor instanceof ComplexTypeDescriptor
-						&& getStyle().equals("document")) {
-					// for document based, if operation requires no parameters
-					// the param still exists (representing the operation) but
-					// with empty inner elements
-					if (((ComplexTypeDescriptor) typeDescriptor).getElements()
-							.size() > 0) {
-						result.add(typeDescriptor);
-					}
-				} else {
-					result.add(typeDescriptor);
-				}
-			} else if (param.getMode() == Parameter.INOUT) {
-				result.add(processParameter(param));
-			}
-
-		}
-
-		cachedComplexTypes.clear();
-		return result;
-	}
-
-	/**
-	 * Returns a List of the TypeDescriptors representing the parameters for the
-	 * outputs of the service
-	 * 
-	 * @param operationName
-	 * @return List of TypeDescriptor
-	 * @throws UnknownOperationException
-	 *             if no operation matches the name
-	 * @throws IOException
-	 */
-	public List<TypeDescriptor> getOperationOutputParameters(
-			String operationName) throws UnknownOperationException, IOException {
-		Operation operation = getOperation(operationName);
-		List<TypeDescriptor> result = new ArrayList<TypeDescriptor>();
-		if (operation == null) {
-			throw new UnknownOperationException("operation called "
-					+ operationName + " does not exist for this wsdl");
-		}
-
-		Parameters parameters = getSymbolTable().getOperationParameters(
-				operation, "", new BindingEntry(getBinding(operationName)));
-
-		for (Iterator iterator = parameters.list.iterator(); iterator.hasNext();) {
-			Parameter param = (Parameter) iterator.next();
-			if (param.getMode() == Parameter.OUT)
-				result.add(processParameter(param));
-			else if (param.getMode() == Parameter.INOUT) {
-				result.add(processParameter(param));
-			}
-
-		}
-		if (parameters.returnParam != null) {
-			result.add(processParameter(parameters.returnParam));
-		}
-
-		cachedComplexTypes.clear();
-		return result;
-	}
-
-	/**
-	 * returns the namespace uri for the given operation name, throws
-	 * UnknownOperationException if the operationName is not matched to one
-	 * described by the WSDL.
-	 * <p>
-	 * Note that if you need the namespace for constructing the fully qualified
-	 * element name of the operation, you might want to use
-	 * {@link #getOperationQname(String)} instead.
-	 * 
-	 * @see #getOperationQname(String)
-	 * @param operationName
-	 * @return
-	 * @throws UnknownOperationException
-	 */
-	public String getOperationNamespaceURI(String operationName)
-			throws UnknownOperationException {
-
-		String result = null;
-		if (getStyle().equals("document")) {
-			try {
-				// this lovely line of code gets the correct namespace ....
-				result = ((Part) getBindingOperation(operationName)
-						.getOperation().getInput().getMessage()
-						.getOrderedParts(null).get(0)).getElementName()
-						.getNamespaceURI();
-			} catch (Exception e) {
-				// .... but this gets a good approximation if the above fails
-				result = getDefinition().getTargetNamespace();
-			}
-		} else {
-			BindingOperation binding = getBindingOperation(operationName);
-			List extElements = binding.getBindingInput()
-					.getExtensibilityElements();
-			if (extElements != null && extElements.size() > 0) {
-				SOAPBody body = (SOAPBody) extElements.get(0);
-				result = body.getNamespaceURI();
-			} else {
-				extElements = binding.getBindingOutput()
-						.getExtensibilityElements();
-				if (extElements != null && extElements.size() > 0) {
-					SOAPBody body = (SOAPBody) extElements.get(0);
-					result = body.getNamespaceURI();
-				}
-			}
-
-			if (result == null) {
-				// as a fall back, this almost always gives the right namespace
-				result = getDefinition().getTargetNamespace();
-			}
-		}
-
-		return result;
-	}
-
-	public QName getOperationQname(String operationName)
-			throws UnknownOperationException {
-		if (getStyle().equals("document")) {
-			try {
-				// Get the QName of the first element of the input message
-				return ((Part) getBindingOperation(operationName)
-						.getOperation().getInput().getMessage()
-						.getOrderedParts(null).get(0)).getElementName();
-			} catch (RuntimeException e) {
-				logger.warn("Could not find qname of message for operation "
-						+ operationName, e);
-				String ns = getDefinition().getTargetNamespace();
-				return new QName(ns, operationName);
-			}
-		} else {
-			String ns = getOperationNamespaceURI(operationName);
-			return new QName(ns, operationName);
-		}
-	}
-
-	/**
-	 * Returns either literal or encoded, describing the 'use' for this
-	 * operation
-	 * 
-	 * @param operationName
-	 * @return
-	 * @throws UnknownOperationException
-	 */
-	public String getUse(String operationName) throws UnknownOperationException {
-		String result = null;
-
-		BindingOperation binding = getBindingOperation(operationName);
-		List extElements = binding.getBindingInput().getExtensibilityElements();
-		if (extElements != null && extElements.size() > 0) {
-			SOAPBody body = (SOAPBody) extElements.get(0);
-			result = body.getUse();
-		} else {
-			extElements = binding.getBindingOutput().getExtensibilityElements();
-			if (extElements != null && extElements.size() > 0) {
-				SOAPBody body = (SOAPBody) extElements.get(0);
-				result = body.getUse();
-			}
-		}
-
-		return result;
-	}
-
-	/**
-	 * Returns the actionURI for the given operation
-	 * 
-	 * @param operationName
-	 * @return
-	 * @throws UnknownOperationException
-	 */
-	public String getSOAPActionURI(String operationName)
-			throws UnknownOperationException {
-		String result = null;
-		BindingOperation op = getBindingOperation(operationName);
-		List elements = op.getExtensibilityElements();
-		for (Iterator elIterator = elements.iterator(); elIterator.hasNext();) {
-			SOAPOperationImpl extension = (SOAPOperationImpl) elIterator.next();
-			result = extension.getSoapActionURI();
-			break;
-		}
-		return result;
-	}
-
-	/**
-	 * Provides the documentation for the given operation name, or returns an
-	 * empty string if no documentation is provided by the WSDL.
-	 * 
-	 * @param operationName
-	 * @return
-	 * @throws UnknownOperationException
-	 */
-	public String getOperationDocumentation(String operationName)
-			throws UnknownOperationException {
-		String result = "";
-
-		Operation operation = getOperation(operationName);
-		if (operation.getDocumentationElement() != null) {
-			if (operation.getDocumentationElement().getFirstChild() != null) {
-				result = operation.getDocumentationElement().getFirstChild()
-						.getNodeValue();
-			}
-		}
-
-		return result;
-	}
-
-	/**
-	 * Returns a WSDLOperation descriptor for an operation that matches the
-	 * operationName.
-	 * 
-	 * @param operationName
-	 * @return a matching WSDLOperation descriptor
-	 * @throws UnknownOperationException
-	 *             if no operation matches the name
-	 */
-	public Operation getOperation(String operationName)
-			throws UnknownOperationException {
-		Operation result = null;
-
-		for (Iterator iterator = getOperations().iterator(); iterator.hasNext();) {
-			Operation op = (Operation) iterator.next();
-			if (op.getName().equals(operationName)) {
-				result = op;
-				break;
-			}
-		}
-		if (result == null)
-			throw new UnknownOperationException("No operation named: "
-					+ operationName + " exists");
-		return result;
-	}
-
-	/**
-	 * SOAP actions/operations that if present indicates a WSRF service.
-	 * <p>
-	 * Used by {@link #checkWSRF()}
-	 * 
-	 * @return A {@link Map} mapping SOAP operation name to SOAP action URI.
-	 */
-	protected Map<String, String> getWSRFPredictorOperations() {
-		Map<String, String> operations = new HashMap<String, String>();
-
-		operations.put(GET_RESOURCE_PROPERTY, RESOURCE_PROPERTIES_URI
-				+ GET_RESOURCE_PROPERTY);
-		
-		operations.put(DESTROY, RESOURCE_LIFETIME_URI + DESTROY);
-		
-		operations.put(SET_TERMINATION_TIME, RESOURCE_LIFETIME_URI
-				+ SET_TERMINATION_TIME);
-		
-		operations.put(GET_SERVICE_SECURITY_METADATA, SERVICE_SECURITY_URI
-				+ GET_SERVICE_SECURITY_METADATA_REQUEST);
-
-		return operations;
-	}
-
-	/**
-	 * Check if this is a WSRF-resource property supporting binding.
-	 * <p>
-	 * The service is determined to be WSRF-supporting if the WSDL contains at
-	 * least one of the operations specified by
-	 * {@link #getWSRFPredictorOperations()}.
-	 * 
-	 */
-	protected void checkWSRF() {
-		isWsrfService = false;
-		for (Entry<String, String> resourceEntry : getWSRFPredictorOperations()
-				.entrySet()) {
-			String actionURI;
-			try {
-				actionURI = getSOAPActionURI(resourceEntry.getKey());
-			} catch (UnknownOperationException e) {
-				continue;
-			}
-			isWsrfService = resourceEntry.getValue().equals(actionURI);
-			if (isWsrfService) {
-				// Just need to match one of the predictors
-				break;
-			}
-		}
-	}
-
-	private SymbolTable getSymbolTable() {
-		return symbolTableMap.get(getWSDLLocation());
-	}
-
-	private List<Operation> determineOperations() {
-		List<Operation> result = new ArrayList<Operation>();
-
-		Map<String, PortType> portToOperationMap = portTypeToOperationMap();
-		Map<String, Binding> bindingToOperationMap = bindingToOperationMap();
-
-		Map bindings = getSymbolTable().getDefinition().getBindings();
-		for (Iterator iterator = bindings.values().iterator(); iterator
-				.hasNext();) {
-			Binding binding = (Binding) iterator.next();
-			List extensibilityElementList = binding.getExtensibilityElements();
-			for (Iterator k = extensibilityElementList.iterator(); k.hasNext();) {
-				ExtensibilityElement ee = (ExtensibilityElement) k.next();
-				if (ee instanceof SOAPBindingImpl) {
-					SOAPBinding soapBinding = (SOAPBinding) ee;
-					PortType portType = binding.getPortType();
-
-					setStyleForBinding(soapBinding);
-
-					for (Iterator opIterator = portType.getOperations()
-							.iterator(); opIterator.hasNext();) {
-						Operation op = (Operation) opIterator.next();
-						result.add(op);
-						portToOperationMap.put(op.getName(), portType);
-						bindingToOperationMap.put(op.getName(), binding);
-					}
-				}
-			}
-		}
-
-		Map imports = getSymbolTable().getDefinition().getImports();
-		if (imports != null && imports.size() > 0) {
-			result.addAll(processImports(imports));
-		}
-
-		return result;
-	}
-
-	private void setStyleForBinding(SOAPBinding soapBinding) {
-		String style = soapBinding.getStyle();
-		if (style == null)
-			style = "document"; // soap spec specifies to default to document if
-								// missing.
-		styleMap.put(getWSDLLocation(), style);
-	}
-
-	private Map<String, PortType> portTypeToOperationMap() {
-		Map<String, PortType> portToOperationMap = portTypeMap
-				.get(getWSDLLocation());
-		if (portToOperationMap == null) {
-			portToOperationMap = new HashMap<String, PortType>();
-			portTypeMap.put(getWSDLLocation(), portToOperationMap);
-		}
-		return portToOperationMap;
-	}
-
-	private List<Operation> processImports(Map imports) {
-		List<Operation> result = new ArrayList<Operation>();
-
-		Map<String, PortType> portToOperationMap = portTypeToOperationMap();
-		Map<String, Binding> bindingToOperationMap = bindingToOperationMap();
-
-		for (Iterator iterator = imports.values().iterator(); iterator
-				.hasNext();) {
-			List list = (List) iterator.next();
-			for (Iterator importIterator = list.iterator(); importIterator
-					.hasNext();) {
-				Import imp = (Import) importIterator.next();
-				Map bindings = imp.getDefinition().getBindings();
-				for (Iterator bindingsIterator = bindings.values().iterator(); bindingsIterator
-						.hasNext();) {
-					Binding binding = (Binding) bindingsIterator.next();
-					List extensibilityElementList = binding
-							.getExtensibilityElements();
-					for (Iterator k = extensibilityElementList.iterator(); k
-							.hasNext();) {
-						ExtensibilityElement ee = (ExtensibilityElement) k
-								.next();
-						if (ee instanceof SOAPBindingImpl) {
-							SOAPBinding soapBinding = (SOAPBinding) ee;
-							PortType portType = binding.getPortType();
-
-							setStyleForBinding(soapBinding);
-
-							for (Iterator opIterator = portType.getOperations()
-									.iterator(); opIterator.hasNext();) {
-								Operation op = (Operation) opIterator.next();
-								result.add(op);
-								portToOperationMap.put(op.getName(), portType);
-								bindingToOperationMap
-										.put(op.getName(), binding);
-							}
-						}
-					}
-				}
-
-			}
-		}
-
-		return result;
-	}
-
-	private Map<String, Binding> bindingToOperationMap() {
-		Map<String, Binding> bindingToOperationMap = bindingMap
-				.get(getWSDLLocation());
-		if (bindingToOperationMap == null) {
-			bindingToOperationMap = new HashMap<String, Binding>();
-			bindingMap.put(getWSDLLocation(), bindingToOperationMap);
-		}
-		return bindingToOperationMap;
-	}
-
-	private BindingOperation getBindingOperation(String operationName)
-			throws UnknownOperationException {
-		BindingOperation result = bindingOperations.get(operationName);
-		if (result == null) {
-			Binding binding = getBinding(operationName);
-			if (binding != null) {
-				List bindings = binding.getBindingOperations();
-				for (Iterator iterator = bindings.iterator(); iterator
-						.hasNext();) {
-					BindingOperation bindingOperation = (BindingOperation) iterator
-							.next();
-					if (bindingOperation.getOperation().getName().equals(
-							operationName)) {
-						result = bindingOperation;
-						bindingOperations.put(operationName, result);
-						break;
-					}
-				}
-			}
-		}
-		if (result == null)
-			throw new UnknownOperationException(
-					"Can't find binding operation for '" + operationName + "'");
-		return result;
-	}
-
-	private TypeDescriptor processParameter(Parameter param) {
-		TypeDescriptor typeDesc = constructType(param.getType());
-
-		typeDesc.setName(param.getName());
-
-		return typeDesc;
-	}
-
-	private TypeDescriptor constructType(TypeEntry type) {
-		TypeDescriptor result = null;
-		if (type instanceof CollectionType || type instanceof CollectionElement) {
-			result = constructArrayType(type);
-			result.setType(type.getRefType().getQName().getLocalPart());
-		} else if (type instanceof DefinedType
-				|| type instanceof DefinedElement) {
-			if (type.getComponentType() == null) {
-				if (type instanceof DefinedElement) {
-					if (type.isBaseType()) {
-						result = constructBaseType((DefinedElement) type);
-					} else {
-						result = constructComplexType((DefinedElement) type);
-					}
-				} else {
-					if (type.isSimpleType()) {
-						result = constructForSimpleType(type);
-					} else {
-						result = constructComplexType((DefinedType) type);
-					}
-				}
-			} else {
-				result = constructArrayType(type);
-			}
-		} else {
-			if (type.getQName().getLocalPart().equals("Map")) {
-				// axis treats Map as a base type, Taverna doesn't.
-				result = constructMapType(type);
-			} else {
-				result = constructBaseType(type);
-			}
-		}
-
-		return result;
-	}
-
-	private TypeDescriptor constructForSimpleType(TypeEntry type) {
-		Set nested = type.getNestedTypes(getSymbolTable(), true);
-
-		TypeDescriptor result = constructType((TypeEntry) nested.toArray()[0]);
-		result.setQname(type.getQName());
-		result.setName(type.getQName().getLocalPart());
-		return result;
-	}
-
-	private ArrayTypeDescriptor constructMapType(TypeEntry type) {
-		ArrayTypeDescriptor result = new ArrayTypeDescriptor();
-		TypeEntry mapItem = getSymbolTable().getType(type.getItemQName());
-		if (mapItem == null) {
-			mapItem = getSymbolTable().getType(
-					new QName(type.getQName().getNamespaceURI(), "mapItem"));
-		}
-
-		result.setElementType(constructType(mapItem));
-
-		result.setQname(type.getQName());
-		result.setType(type.getQName().getLocalPart());
-
-		return result;
-	}
-
-	private ComplexTypeDescriptor constructComplexType(DefinedElement type) {
-
-		ComplexTypeDescriptor result = new ComplexTypeDescriptor();
-
-		if (cachedComplexTypes.get(type.getQName().toString()) != null) {
-			result = copyFromCache(type.getQName().toString());
-		} else {
-			// caching the type is not really to improve performance, but is
-			// to handle types that contain elements that reference
-			// itself or another parent. Without the caching, this could lead to
-			// infinate
-			// recursion.
-			cachedComplexTypes.put(type.getQName().toString(), result);
-
-			result.setType(type.getQName().getLocalPart());
-			result.setQname(type.getQName());
-			
-			DefinedType refType = (DefinedType) type.getRefType();
-
-			do {
-				List containedElements = refType.getContainedElements();
-				if (containedElements != null) {
-					result.getElements().addAll(
-							constructElements(containedElements));
-				}
-				List containedAttributes = refType.getContainedAttributes();
-				if (containedAttributes != null) {
-					result.getAttributes().addAll(
-							constructAttributes(containedAttributes));
-				}
-			} while ((refType = (DefinedType) refType
-					.getComplexTypeExtensionBase(getSymbolTable())) != null);
-
-		}
-
-		return result;
-	}
-
-	private ComplexTypeDescriptor constructComplexType(DefinedType type) {
-		ComplexTypeDescriptor result = new ComplexTypeDescriptor();
-
-		if (cachedComplexTypes.get(type.getQName().toString()) != null) {
-			result = copyFromCache(type.getQName().toString());
-		} else {
-			TypeEntry baseTypeEntry = type
-					.getComplexTypeExtensionBase(getSymbolTable());
-			if (baseTypeEntry != null) {
-				ComplexTypeDescriptor baseTypeDescriptor = constructComplexType((DefinedType) baseTypeEntry);
-				result.getElements().addAll(baseTypeDescriptor.getElements());
-				result.getAttributes().addAll(
-						baseTypeDescriptor.getAttributes());
-			}
-			result.setType(type.getQName().getLocalPart());
-			cachedComplexTypes.put(type.getQName().toString(), result);
-			List containedElements = type.getContainedElements();
-			if (containedElements != null) {
-				result.getElements().addAll(
-						constructElements(containedElements));
-			}
-			List containedAttributes = type.getContainedAttributes();
-			if (containedAttributes != null) {
-				result.getAttributes().addAll(
-						constructAttributes(containedAttributes));				
-			}
-			result.setQname(type.getQName());
-		}
-		return result;
-	}
-
-	private List constructElements(List elements) {
-		List result = new ArrayList();
-
-		for (Iterator iterator = elements.iterator(); iterator.hasNext();) {
-			ElementDecl el = (ElementDecl) iterator.next();
-			TypeDescriptor elType = constructType(el.getType());
-			elType.setOptional(el.getOptional() || el.getMinOccursIs0());
-			elType.setNillable(el.getNillable());
-			elType.setUnbounded(el.getMaxOccursIsUnbounded());
-			elType.setName(el.getQName().getLocalPart());
-			elType.setQname(el.getQName());
-			if (el.getDocumentation() != null && !el.getDocumentation().isEmpty()) {
-               elType.setDocumentation(el.getDocumentation());
-           }
-
-			result.add(elType);
-		}
-
-		return result;
-	}
-
-	private List constructAttributes(List elements) {
-		List result = new ArrayList();
-
-		for (Iterator iterator = elements.iterator(); iterator.hasNext();) {
-			ContainedAttribute attribute = (ContainedAttribute) iterator.next();
-			AttributeTypeDescriptor attributeType = new AttributeTypeDescriptor();
-			attributeType.setType(attribute.getQName().getLocalPart());
-			attributeType.setOptional(attribute.getOptional());
-			attributeType.setName(attribute.getQName().getLocalPart());
-			attributeType.setQname(attribute.getQName());
-			result.add(attributeType);
-		}
-
-		return result;
-	}
-
-	private ArrayTypeDescriptor constructArrayType(TypeEntry type) {
-		ArrayTypeDescriptor result = new ArrayTypeDescriptor();
-		result.setElementType(constructType(type.getRefType()));
-		result.setType(type.getQName().getLocalPart());
-		result.setQname(type.getQName());
-
-        //this checks for 2 cases to determine for wrapped -
-        // first whether the axis SchemaUtils identifies it as being wrapped by being defined using the xsd:sequence compositor and containing only elements declarations. (see http://cmedia.glos.ac.uk/software/axis/docs/apiDocs/org/apache/axis/wsdl/symbolTable/SchemaUtils.html#getComplexElementRestrictionBase(org.w3c.dom.Node,%20org.apache.axis.wsdl.symbolTable.SymbolTable)
-        // the second case, for which isWrapped will always return false, is for array definitions that restrict the soapenc:Array type.
-        //    - the second case is not WS-I compliant: http://www.ws-i.org/Profiles/BasicProfile-1.1.html
-        //    - but can be treated equivalent to the first case, so also therefore assumed as being wrapped. IBM recommends manuall editing the WSDL to replace the restricted array definition with one defined using xsd:sequence - see http://www.ibm.com/developerworks/lotus/library/domino8-WS-I/
-        boolean wrapped=SchemaUtils.isWrappedType(type.getNode()) || SchemaUtils.getComplexElementRestrictionBase(type.getNode(), getSymbolTable())!=null;
-        
-		result.setWrapped(wrapped);
-        
-		return result;
-	}
-
-	private BaseTypeDescriptor constructBaseType(TypeEntry type) {
-		BaseTypeDescriptor result = new BaseTypeDescriptor();
-		result.setType(type.getQName().getLocalPart());
-		result.setQname(type.getQName());
-		return result;
-	}
-
-	private BaseTypeDescriptor constructBaseType(DefinedElement type) {
-
-		BaseTypeDescriptor result = null;
-		if (type.getRefType() == null) {
-			result = constructBaseType((TypeEntry) type);
-		} else {
-			result = new BaseTypeDescriptor();
-			result.setType(type.getRefType().getQName().getLocalPart());
-			result.setQname(type.getQName());
-		}
-		return result;
-	}
-
-	private ComplexTypeDescriptor copyFromCache(String key) {
-		ComplexTypeDescriptor cached = cachedComplexTypes.get(key);
-		ComplexTypeDescriptor result = new ComplexTypeDescriptor();
-		result.setQname(cached.getQname());
-		result.setElements(cached.getElements());
-		result.setType(cached.getType());
-		result.setDocumentation(cached.getDocumentation());
-
-		return result;
-	}
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/blob/433612be/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/package.html
----------------------------------------------------------------------
diff --git a/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/package.html b/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/package.html
deleted file mode 100644
index 8fc2638..0000000
--- a/taverna-wsdl-generic/src/main/java/net/sf/taverna/wsdl/parser/package.html
+++ /dev/null
@@ -1,5 +0,0 @@
-<body>
-Contains classes required to parse a WSDL to discover and describe the operations and their input and output data structures.<br>
-These classes are derived heavily from the original parsing classes from the Taverna 1 WSDLBasedProcessor and have been refactored<br>
-to remove references to to Taverna 1 
-</body>
\ No newline at end of file