<?xml version='1.0' encoding='UTF-8' ?> 

<definitions name='WMLS'  targetNamespace='http://www.witsml.org/wsdl/120'
     xmlns:wsdlns='http://www.witsml.org/wsdl/120' 
     xmlns:soap='http://schemas.xmlsoap.org/wsdl/soap/' 
     xmlns:xsd='http://www.w3.org/2001/XMLSchema' 
     xmlns='http://schemas.xmlsoap.org/wsdl/'> 
  
<documentation>WITSML Version 1.2.0 STORE interface WSDL file
</documentation>

<!-- Abstract Definitions Section - <types>, <message> and <portType> elements --> 

<!-- <types> element declares user-defined machine and language independent data types, and is not needed for the WITSML STORE interface, which uses only W3C-defined data types  -->  

<!-- <message> elements define request/response messages and their parameters-->

<message name='Store.WMLS_AddToStore'>
     <part name='WMLtypeIn' type='xsd:string'/>
     <part name='XMLin' type='xsd:string'/>
     <part name='OptionsIn' type='xsd:string'/>
     <part name='CapabilitiesIn' type='xsd:string'/>
</message>
    
<message name='Store.WMLS_AddToStoreResponse'>
     <part name='Result' type='xsd:short'/>
     <part name='SuppMsgOut' type='xsd:string'/>
</message>
  
 
<message name='Store.WMLS_DeleteFromStore'>
     <part name='WMLtypeIn' type='xsd:string'/>
     <part name='QueryIn' type='xsd:string'/>
     <part name='OptionsIn' type='xsd:string'/>
     <part name='CapabilitiesIn' type='xsd:string'/>
</message>

<message name='Store.WMLS_DeleteFromStoreResponse'>
     <part name='Result' type='xsd:short'/>
     <part name='SuppMsgOut' type='xsd:string'/>
</message>
    
    
<message name='Store.WMLS_GetBaseMsg'>
     <part name='ReturnValueIn' type='xsd:short'/>
</message>
	  
<message name='Store.WMLS_GetBaseMsgResponse'>
     <part name='Result' type='xsd:string'/>
</message>
 

<message name='Store.WMLS_GetCap'>
     <part name='OptionsIn' type='xsd:string'/>
</message>
	  
<message name='Store.WMLS_GetCapResponse'>
     <part name='Result' type='xsd:short'/>
     <part name='CapabilitiesOut' type='xsd:string'/>
     <part name='SuppMsgOut' type='xsd:string'/>
</message>
  
  
<message name='Store.WMLS_GetFromStore'>
     <part name='WMLtypeIn' type='xsd:string'/>
     <part name='QueryIn' type='xsd:string'/>
     <part name='OptionsIn' type='xsd:string'/>
     <part name='CapabilitiesIn' type='xsd:string'/>
</message>
    
<message name='Store.WMLS_GetFromStoreResponse'>
     <part name='Result' type='xsd:short'/>
     <part name='XMLout' type='xsd:string'/>
     <part name='SuppMsgOut' type='xsd:string'/>
</message>
  
  
<message name='Store.WMLS_GetVersion'>
</message>
    
<message name='Store.WMLS_GetVersionResponse'>
     <part name='Result' type='xsd:string'/>
</message>
 
  
<message name='Store.WMLS_UpdateInStore'>
     <part name='WMLtypeIn' type='xsd:string'/>
     <part name='XMLin' type='xsd:string'/>
     <part name='OptionsIn' type='xsd:string'/>
     <part name='CapabilitiesIn' type='xsd:string'/>
</message>
  
<message name='Store.WMLS_UpdateInStoreResponse'>
     <part name='Result' type='xsd:short'/>
     <part name='SuppMsgOut' type='xsd:string'/>
</message>


<!-- <portType> element groups the functions (operations) into an interface  -->
   
<portType name='StoreSoapPort'>

<!-- <operation> elements define the function signatures (operation name and parameters) and associate the input and output messages  -->

<!-- parameterOrder attribute values must be separated by a single space  -->

     <operation name='WMLS_AddToStore' parameterOrder='WMLtypeIn XMLin           OptionsIn CapabilitiesIn SuppMsgOut'>
          <input message='wsdlns:Store.WMLS_AddToStore' />
          <output message='wsdlns:Store.WMLS_AddToStoreResponse' />
     </operation>
    
     <operation name='WMLS_DeleteFromStore' parameterOrder='WMLtypeIn QueryIn        OptionsIn CapabilitiesIn SuppMsgOut'>
          <input message='wsdlns:Store.WMLS_DeleteFromStore' />
          <output message='wsdlns:Store.WMLS_DeleteFromStoreResponse' />
     </operation>
    
 
     <operation name='WMLS_GetBaseMsg' parameterOrder='ReturnValueIn'>
           <input message='wsdlns:Store.WMLS_GetBaseMsg' />
           <output message='wsdlns:Store.WMLS_GetBaseMsgResponse' />
     </operation>
    
     <operation name='WMLS_GetCap' parameterOrder='OptionsIn CapabilitiesOut             SuppMsgOut'>
          <input message='wsdlns:Store.WMLS_GetCap' />
          <output message='wsdlns:Store.WMLS_GetCapResponse' />
     </operation>
	
     <operation name='WMLS_GetFromStore' parameterOrder='WMLtypeIn QueryIn OptionsIn CapabilitiesIn XMLout SuppMsgOut'>
          <input message='wsdlns:Store.WMLS_GetFromStore' />
          <output message='wsdlns:Store.WMLS_GetFromStoreResponse' />
     </operation>
	
     <operation name='WMLS_GetVersion' >
          <input message='wsdlns:Store.WMLS_GetVersion' />
          <output message='wsdlns:Store.WMLS_GetVersionResponse' />
     </operation>
          
      <operation name='WMLS_UpdateInStore' parameterOrder='WMLtypeIn XMLin OptionsIn CapabilitiesIn SuppMsgOut'>
          <input message='wsdlns:Store.WMLS_UpdateInStore' />
          <output message='wsdlns:Store.WMLS_UpdateInStoreResponse' />
     </operation>
  
</portType>

<!-- Concrete Definitions Section - <binding> and <service> elements --> 
 
<!-- <binding> specifies the protocol binding for each operation in the <portType> section --> 
 
<binding name='StoreSoapBinding' type='wsdlns:StoreSoapPort' >
  
     <soap:binding style='rpc' transport='http://schemas.xmlsoap.org/soap/http' />

     <operation name='WMLS_AddToStore' >
          <soap:operation
             soapAction='http://www.witsml.org/action/120/Store.WMLS_AddToStore' />
          <input>
               <soap:body use='encoded' namespace='http://www.witsml.org/message/120'
	           encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' />
           </input>
           <output>
                <soap:body use='encoded' namespace='http://www.witsml.org/message/120'
	           encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' />
           </output>
     </operation>
    
     <operation name='WMLS_DeleteFromStore' >
          <soap:operation
           soapAction='http://www.witsml.org/action/120/Store.WMLS_DeleteFromStore' />
          <input>
                <soap:body use='encoded' namespace='http://www.witsml.org/message/120'
	           encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' />
          </input>
          <output>
               <soap:body use='encoded' namespace='http://www.witsml.org/message/120'
	          encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' />
           </output>
     </operation>

     <operation name='WMLS_GetBaseMsg' >
          <soap:operation 
             soapAction='http://www.witsml.org/action/120/Store.WMLS_GetBaseMsg' />
          <input>
              <soap:body use='encoded' namespace='http://www.witsml.org/message/120'
	         encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' />
          </input>
          <output>
               <soap:body use='encoded' namespace='http://www.witsml.org/message/120'
	        encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' />
           </output>
     </operation>

     <operation name='WMLS_GetCap' >
          <soap:operation
             soapAction='http://www.witsml.org/action/120/Store.WMLS_GetCap' />
          <input>
              <soap:body use='encoded' namespace='http://www.witsml.org/message/120'
	         encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' />
         </input>
         <output>
              <soap:body use='encoded' namespace='http://www.witsml.org/message/120'
	     encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' />
         </output>
     </operation>

     <operation name='WMLS_GetFromStore' >
          <soap:operation soapAction='http://www.witsml.org/action/120/Store.WMLS_GetFromStore' />
          <input>
              <soap:body use='encoded' namespace='http://www.witsml.org/message/120'
	      encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' />
         </input>
         <output>
            <soap:body use='encoded' namespace='http://www.witsml.org/message/120'
	    encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' />
         </output>
     </operation>
    
     <operation name='WMLS_GetVersion' >
          <soap:operation soapAction='http://www.witsml.org/action/120/Store.WMLS_GetVersion' />
         <input>
             <soap:body use='encoded' namespace='http://www.witsml.org/message/120'
	      encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' />
         </input>
         <output>
             <soap:body use='encoded' namespace='http://www.witsml.org/message/120'
	      encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' />
         </output>
      </operation>
  
     <operation name='WMLS_UpdateInStore' >
           <soap:operation
             soapAction='http://www.witsml.org/action/120/Store.WMLS_UpdateInStore' />
           <input>
                 <soap:body use='encoded' namespace='http://www.witsml.org/message/120'
	        encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' />
           </input>
           <output>
                 <soap:body use='encoded' namespace='http://www.witsml.org/message/120'
		  encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' />
           </output>
    </operation>
 
  </binding>
 
<!-- <service> specifies the portType for each binding and the URL of the service --> 
  
<service name='WMLS' >

     <port name='StoreSoapPort' binding='wsdlns:StoreSoapBinding' >
          <soap:address location='http://yourorg.com/yourwebservice' />
      </port>

</service>

</definitions>


