<definitions name='ShadowWsPortTypeService' targetNamespace='http://www.webservice-energy.org/shadow_ws/' xmlns='http://schemas.xmlsoap.org/wsdl/' xmlns:ns1='http://www.webservice-energy.org/GEOSS_scenario_energy_v1' xmlns:soap='http://schemas.xmlsoap.org/wsdl/soap/' xmlns:tns='http://www.webservice-energy.org/shadow_ws/' xmlns:xsd='http://www.w3.org/2001/XMLSchema'>
 <types>
  <xs:schema targetNamespace='http://www.webservice-energy.org/shadow_ws/' version='1.0' xmlns:ns1='http://www.webservice-energy.org/GEOSS_scenario_energy_v1' xmlns:tns='http://www.webservice-energy.org/shadow_ws/' xmlns:xs='http://www.w3.org/2001/XMLSchema'>
   <xs:import namespace='http://www.webservice-energy.org/GEOSS_scenario_energy_v1'/>
   <xs:complexType name='GetMapRequestType'>
    <xs:sequence>
     <xs:element name='layerName' type='tns:layerNameType'/>
     <xs:element name='layerWidth' type='xs:nonNegativeInteger'/>
     <xs:element name='layerHeight' type='xs:nonNegativeInteger'/>
     <xs:element name='layerRespectRatio' type='xs:boolean'/>
     <xs:element name='layerBBox' type='ns1:boundingBoxType'/>
    </xs:sequence>
   </xs:complexType>
   <xs:complexType name='GetMapResultType'>
    <xs:sequence>
     <xs:element name='status' type='xs:int'/>
     <xs:element name='layer' type='ns1:layerType'/>
    </xs:sequence>
   </xs:complexType>
   <xs:simpleType name='layerNameType'>
    <xs:restriction base='xs:string'>
     <xs:enumeration value='fGHI'/>
     <xs:enumeration value='fDNI'/>
     <xs:enumeration value='fDayDuration'/>
    </xs:restriction>
   </xs:simpleType>
  </xs:schema>
  <xs:schema targetNamespace='http://www.webservice-energy.org/GEOSS_scenario_energy_v1' version='1.0' xmlns:tns='http://www.webservice-energy.org/GEOSS_scenario_energy_v1' xmlns:xs='http://www.w3.org/2001/XMLSchema'>
   <xs:complexType name='boundingBoxType'>
    <xs:sequence/>
    <xs:attribute name='CRS' type='xs:string' use='required'/>
    <xs:attribute name='minx' type='xs:double' use='required'/>
    <xs:attribute name='miny' type='xs:double' use='required'/>
    <xs:attribute name='maxx' type='xs:double' use='required'/>
    <xs:attribute name='maxy' type='xs:double' use='required'/>
   </xs:complexType>
   <xs:complexType name='layerType'>
    <xs:sequence>
     <xs:element name='Title' type='xs:string'/>
     <xs:element minOccurs='0' name='Name' type='xs:string'/>
     <xs:element name='imageFormat' type='xs:string'/>
     <xs:element name='dataURL' type='xs:anyURI'/>
     <xs:element minOccurs='0' name='legendURL' type='xs:anyURI'/>
     <xs:element name='imageMetadata' type='tns:imageMetadataType'/>
     <xs:element minOccurs='0' name='geographicBBox' type='tns:geographicBoundingBoxType'/>
     <xs:element name='CRS' type='xs:string'/>
     <xs:element name='cartoBBox' type='tns:boundingBoxType'/>
     <xs:element name='resolution' type='tns:resolutionType'/>
     <xs:element minOccurs='0' name='providerName' type='xs:string'/>
     <xs:element minOccurs='0' name='providerURL' type='xs:string'/>
     <xs:element minOccurs='0' name='providerLogoURL' type='xs:string'/>
     <xs:element minOccurs='0' name='copyrightText' type='xs:string'/>
    </xs:sequence>
    <xs:attribute name='Width' type='xs:nonNegativeInteger'/>
    <xs:attribute name='Height' type='xs:nonNegativeInteger'/>
   </xs:complexType>
   <xs:complexType name='imageMetadataType'>
    <xs:sequence>
     <xs:element name='Pixel' type='tns:pixelType'/>
     <xs:element minOccurs='0' name='ByteOrder' type='tns:byteOrderType'/>
     <xs:element name='Units' type='xs:string'/>
     <xs:element minOccurs='0' name='scaleoffset' type='tns:scaleoffsetType'/>
     <xs:element minOccurs='0' name='lut' type='tns:lutType'/>
     <xs:element name='nodata' type='xs:double'/>
    </xs:sequence>
   </xs:complexType>
   <xs:complexType name='scaleoffsetType'>
    <xs:sequence>
     <xs:element name='scale' type='xs:double'/>
     <xs:element name='offset' type='xs:double'/>
    </xs:sequence>
   </xs:complexType>
   <xs:complexType name='lutType'>
    <xs:sequence>
     <xs:element maxOccurs='unbounded' minOccurs='0' name='lut' type='xs:double'/>
    </xs:sequence>
   </xs:complexType>
   <xs:complexType name='geographicBoundingBoxType'>
    <xs:sequence>
     <xs:element name='westBoundLongitude' type='xs:double'/>
     <xs:element name='eastBoundLongitude' type='xs:double'/>
     <xs:element name='southBoundLatitude' type='xs:double'/>
     <xs:element name='northBoundLatitude' type='xs:double'/>
    </xs:sequence>
   </xs:complexType>
   <xs:complexType name='resolutionType'>
    <xs:sequence>
     <xs:element name='resx' type='xs:double'/>
     <xs:element name='resy' type='xs:double'/>
    </xs:sequence>
   </xs:complexType>
   <xs:simpleType name='pixelType'>
    <xs:restriction base='xs:string'>
     <xs:enumeration value='uint8'/>
     <xs:enumeration value='uint16'/>
     <xs:enumeration value='uint32'/>
     <xs:enumeration value='int8'/>
     <xs:enumeration value='int16'/>
     <xs:enumeration value='int32'/>
     <xs:enumeration value='float16'/>
     <xs:enumeration value='float32'/>
    </xs:restriction>
   </xs:simpleType>
   <xs:simpleType name='byteOrderType'>
    <xs:restriction base='xs:string'>
     <xs:enumeration value='BigEndian'/>
     <xs:enumeration value='LittleEndian'/>
    </xs:restriction>
   </xs:simpleType>
  </xs:schema>
 </types>
 <message name='ShadowWsPortType_GetMap'>
  <part name='GetMapRequest' type='tns:GetMapRequestType'></part>
 </message>
 <message name='ShadowWsPortType_GetCapabilities'>
  <part name='GetCapabilitiesRequest' type='xsd:string'></part>
 </message>
 <message name='ShadowWsPortType_GetCapabilitiesResponse'>
  <part name='GetCapabilitiesResult' type='xsd:string'></part>
 </message>
 <message name='ShadowWsPortType_GetMapResponse'>
  <part name='GetMapResult' type='tns:GetMapResultType'></part>
 </message>
 <portType name='ShadowWsPortType'>
  <operation name='GetCapabilities' parameterOrder='GetCapabilitiesRequest'>
   <input message='tns:ShadowWsPortType_GetCapabilities'></input>
   <output message='tns:ShadowWsPortType_GetCapabilitiesResponse'></output>
  </operation>
  <operation name='GetMap' parameterOrder='GetMapRequest'>
   <input message='tns:ShadowWsPortType_GetMap'></input>
   <output message='tns:ShadowWsPortType_GetMapResponse'></output>
  </operation>
 </portType>
 <binding name='ShadowWsPortTypeBinding' type='tns:ShadowWsPortType'>
  <soap:binding style='rpc' transport='http://schemas.xmlsoap.org/soap/http'/>
  <operation name='GetCapabilities'>
   <soap:operation soapAction='http://www.webservice-energy.org/shadow_ws/GetCapabilities'/>
   <input>
    <soap:body namespace='http://www.webservice-energy.org/shadow_ws/' use='literal'/>
   </input>
   <output>
    <soap:body namespace='http://www.webservice-energy.org/shadow_ws/' use='literal'/>
   </output>
  </operation>
  <operation name='GetMap'>
   <soap:operation soapAction='http://www.webservice-energy.org/shadow_ws/GetMap'/>
   <input>
    <soap:body namespace='http://www.webservice-energy.org/shadow_ws/' use='literal'/>
   </input>
   <output>
    <soap:body namespace='http://www.webservice-energy.org/shadow_ws/' use='literal'/>
   </output>
  </operation>
 </binding>
 <service name='ShadowWsPortTypeService'>
  <port binding='tns:ShadowWsPortTypeBinding' name='ShadowWsPortTypePort'>
   <soap:address location='http://soap.webservice-energy.org:80/shadow_ws/service'/>
  </port>
 </service>
</definitions>