<?xml-stylesheet type="text/xsl" href="wsdl-viewer.xsl"?>
<wsdl:definitions name="SSNPublicService" targetNamespace="https://shiprep.no/ws/2018/02/26" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata" xmlns:wsx="http://schemas.xmlsoap.org/ws/2004/09/mex" xmlns:wsap="http://schemas.xmlsoap.org/ws/2004/08/addressing/policy" xmlns:msc="http://schemas.microsoft.com/ws/2005/12/wsdl/contract" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://shiprep.no/ws/2018/02/26" xmlns:wsa10="http://www.w3.org/2005/08/addressing" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing">
  <wsdl:types>
    <xs:schema elementFormDefault="qualified" targetNamespace="https://shiprep.no/ws/2018/02/26" xmlns:xs="http://www.w3.org/2001/XMLSchema">
      <xs:import namespace="https://shiprep.no/ws/2018/02/19" />
      <xs:element name="GetCurrentVoyages">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="0" name="req" nillable="true" type="tns:PublicVoyagesRequestType" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:complexType name="PublicVoyagesRequestType">
        <xs:complexContent mixed="false">
          <xs:extension base="q1:AbstractRequestType" xmlns:q1="https://shiprep.no/ws/2018/02/19">
            <xs:sequence>
              <xs:element name="Body" nillable="true" type="tns:PublicVoyagesRequestBodyType" />
            </xs:sequence>
          </xs:extension>
        </xs:complexContent>
      </xs:complexType>
      <xs:element name="PublicVoyagesRequestType" nillable="true" type="tns:PublicVoyagesRequestType" />
      <xs:complexType name="PublicVoyagesRequestBodyType">
        <xs:sequence>
          <xs:element minOccurs="0" name="ArrivalLocation" nillable="true" type="q2:LocationSearchType" xmlns:q2="https://shiprep.no/ws/2018/02/19" />
          <xs:element minOccurs="0" name="DepartureLocation" nillable="true" type="q3:LocationSearchType" xmlns:q3="https://shiprep.no/ws/2018/02/19" />
        </xs:sequence>
      </xs:complexType>
      <xs:element name="PublicVoyagesRequestBodyType" nillable="true" type="tns:PublicVoyagesRequestBodyType" />
      <xs:element name="GetCurrentVoyagesResponse">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="0" name="GetCurrentVoyagesResult" nillable="true" type="tns:PublicVoyagesResponseType" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:complexType name="PublicVoyagesResponseType">
        <xs:complexContent mixed="false">
          <xs:extension base="q4:AbstractResponseType" xmlns:q4="https://shiprep.no/ws/2018/02/19">
            <xs:sequence>
              <xs:element minOccurs="0" name="Body" nillable="true" type="tns:PublicVoyagesResponseBodyType" />
            </xs:sequence>
          </xs:extension>
        </xs:complexContent>
      </xs:complexType>
      <xs:element name="PublicVoyagesResponseType" nillable="true" type="tns:PublicVoyagesResponseType" />
      <xs:complexType name="PublicVoyagesResponseBodyType">
        <xs:sequence>
          <xs:element minOccurs="0" name="ArrivalLocation" nillable="true" type="q5:LocationSearchType" xmlns:q5="https://shiprep.no/ws/2018/02/19" />
          <xs:element minOccurs="0" name="DepartureLocation" nillable="true" type="q6:LocationSearchType" xmlns:q6="https://shiprep.no/ws/2018/02/19" />
          <xs:element minOccurs="0" name="Voyages" nillable="true" type="tns:ArrayOfPublicVoyageInformationType" />
        </xs:sequence>
      </xs:complexType>
      <xs:element name="PublicVoyagesResponseBodyType" nillable="true" type="tns:PublicVoyagesResponseBodyType" />
      <xs:complexType name="ArrayOfPublicVoyageInformationType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="unbounded" name="PublicVoyageInformationType" nillable="true" type="tns:PublicVoyageInformationType" />
        </xs:sequence>
      </xs:complexType>
      <xs:element name="ArrayOfPublicVoyageInformationType" nillable="true" type="tns:ArrayOfPublicVoyageInformationType" />
      <xs:complexType name="PublicVoyageInformationType">
        <xs:sequence>
          <xs:element minOccurs="0" name="ArrivalETA" nillable="true" type="xs:dateTime" />
          <xs:element minOccurs="0" name="ArrivalLocation" nillable="true" type="q7:LocationSearchType" xmlns:q7="https://shiprep.no/ws/2018/02/19" />
          <xs:element minOccurs="0" name="DepartureETD" nillable="true" type="xs:dateTime" />
          <xs:element minOccurs="0" name="DepartureLocation" nillable="true" type="q8:LocationSearchType" xmlns:q8="https://shiprep.no/ws/2018/02/19" />
          <xs:element minOccurs="0" name="ShipIdentification" nillable="true" type="q9:ShipIdentificationType" xmlns:q9="https://shiprep.no/ws/2018/02/19" />
        </xs:sequence>
      </xs:complexType>
      <xs:element name="PublicVoyageInformationType" nillable="true" type="tns:PublicVoyageInformationType" />
      <xs:complexType name="AuthorizationFault">
        <xs:sequence>
          <xs:element minOccurs="0" name="Message" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:complexType>
      <xs:element name="AuthorizationFault" nillable="true" type="tns:AuthorizationFault" />
      <xs:element name="GetCurrentPilotages">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="0" name="req" nillable="true" type="tns:PublicPilotagesRequestType" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:complexType name="PublicPilotagesRequestType">
        <xs:complexContent mixed="false">
          <xs:extension base="q10:AbstractRequestType" xmlns:q10="https://shiprep.no/ws/2018/02/19">
            <xs:sequence>
              <xs:element name="Body" nillable="true" type="tns:PublicPilotagesRequestBodyType" />
            </xs:sequence>
          </xs:extension>
        </xs:complexContent>
      </xs:complexType>
      <xs:element name="PublicPilotagesRequestType" nillable="true" type="tns:PublicPilotagesRequestType" />
      <xs:complexType name="PublicPilotagesRequestBodyType">
        <xs:sequence>
          <xs:element name="DispatchName" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="StationName" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:complexType>
      <xs:element name="PublicPilotagesRequestBodyType" nillable="true" type="tns:PublicPilotagesRequestBodyType" />
      <xs:element name="GetCurrentPilotagesResponse">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="0" name="GetCurrentPilotagesResult" nillable="true" type="tns:PublicPilotagesResponseType" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:complexType name="PublicPilotagesResponseType">
        <xs:complexContent mixed="false">
          <xs:extension base="q11:AbstractResponseType" xmlns:q11="https://shiprep.no/ws/2018/02/19">
            <xs:sequence>
              <xs:element minOccurs="0" name="Body" nillable="true" type="tns:PublicPilotagesResponseBodyType" />
            </xs:sequence>
          </xs:extension>
        </xs:complexContent>
      </xs:complexType>
      <xs:element name="PublicPilotagesResponseType" nillable="true" type="tns:PublicPilotagesResponseType" />
      <xs:complexType name="PublicPilotagesResponseBodyType">
        <xs:sequence>
          <xs:element minOccurs="0" name="DispatchName" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="Pilotages" nillable="true" type="tns:ArrayOfPublicPilotageInformationType" />
          <xs:element minOccurs="0" name="StationName" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:complexType>
      <xs:element name="PublicPilotagesResponseBodyType" nillable="true" type="tns:PublicPilotagesResponseBodyType" />
      <xs:complexType name="ArrayOfPublicPilotageInformationType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="unbounded" name="PublicPilotageInformationType" nillable="true" type="tns:PublicPilotageInformationType" />
        </xs:sequence>
      </xs:complexType>
      <xs:element name="ArrayOfPublicPilotageInformationType" nillable="true" type="tns:ArrayOfPublicPilotageInformationType" />
      <xs:complexType name="PublicPilotageInformationType">
        <xs:sequence>
          <xs:element minOccurs="0" name="PilotageFrom" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="PilotageFromTime" nillable="true" type="xs:dateTime" />
          <xs:element minOccurs="0" name="PilotageIsLocked" type="xs:boolean" />
          <xs:element minOccurs="0" name="PilotageTo" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="PilotageVia" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="ShipFlagCode" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="ShipGrossTonnage" nillable="true" type="xs:int" />
          <xs:element minOccurs="0" name="ShipIdentification" nillable="true" type="q12:ShipIdentificationType" xmlns:q12="https://shiprep.no/ws/2018/02/19" />
          <xs:element minOccurs="0" name="ShipType" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:complexType>
      <xs:element name="PublicPilotageInformationType" nillable="true" type="tns:PublicPilotageInformationType" />
    </xs:schema>
    <xs:schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/2003/10/Serialization/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://schemas.microsoft.com/2003/10/Serialization/">
      <xs:element name="anyType" nillable="true" type="xs:anyType" />
      <xs:element name="anyURI" nillable="true" type="xs:anyURI" />
      <xs:element name="base64Binary" nillable="true" type="xs:base64Binary" />
      <xs:element name="boolean" nillable="true" type="xs:boolean" />
      <xs:element name="byte" nillable="true" type="xs:byte" />
      <xs:element name="dateTime" nillable="true" type="xs:dateTime" />
      <xs:element name="decimal" nillable="true" type="xs:decimal" />
      <xs:element name="double" nillable="true" type="xs:double" />
      <xs:element name="float" nillable="true" type="xs:float" />
      <xs:element name="int" nillable="true" type="xs:int" />
      <xs:element name="long" nillable="true" type="xs:long" />
      <xs:element name="QName" nillable="true" type="xs:QName" />
      <xs:element name="short" nillable="true" type="xs:short" />
      <xs:element name="string" nillable="true" type="xs:string" />
      <xs:element name="unsignedByte" nillable="true" type="xs:unsignedByte" />
      <xs:element name="unsignedInt" nillable="true" type="xs:unsignedInt" />
      <xs:element name="unsignedLong" nillable="true" type="xs:unsignedLong" />
      <xs:element name="unsignedShort" nillable="true" type="xs:unsignedShort" />
      <xs:element name="char" nillable="true" type="tns:char" />
      <xs:simpleType name="char">
        <xs:restriction base="xs:int" />
      </xs:simpleType>
      <xs:element name="duration" nillable="true" type="tns:duration" />
      <xs:simpleType name="duration">
        <xs:restriction base="xs:duration">
          <xs:pattern value="\-?P(\d*D)?(T(\d*H)?(\d*M)?(\d*(\.\d*)?S)?)?" />
          <xs:minInclusive value="-P10675199DT2H48M5.4775808S" />
          <xs:maxInclusive value="P10675199DT2H48M5.4775807S" />
        </xs:restriction>
      </xs:simpleType>
      <xs:element name="guid" nillable="true" type="tns:guid" />
      <xs:simpleType name="guid">
        <xs:restriction base="xs:string">
          <xs:pattern value="[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}" />
        </xs:restriction>
      </xs:simpleType>
      <xs:attribute name="FactoryType" type="xs:QName" />
      <xs:attribute name="Id" type="xs:ID" />
      <xs:attribute name="Ref" type="xs:IDREF" />
    </xs:schema>
    <xs:schema elementFormDefault="qualified" targetNamespace="https://shiprep.no/ws/2018/02/19" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="https://shiprep.no/ws/2018/02/19" xmlns:ser="http://schemas.microsoft.com/2003/10/Serialization/">
      <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
      <xs:complexType name="AbstractRequestType">
        <xs:sequence>
          <xs:element name="Header" nillable="true" type="tns:RequestHeaderType" />
        </xs:sequence>
      </xs:complexType>
      <xs:element name="AbstractRequestType" nillable="true" type="tns:AbstractRequestType" />
      <xs:complexType name="RequestHeaderType">
        <xs:complexContent mixed="false">
          <xs:extension base="tns:HeaderType">
            <xs:sequence>
              <xs:element name="Password" nillable="true" type="xs:string" />
              <xs:element name="UserName" nillable="true" type="xs:string" />
              <xs:element minOccurs="0" name="Token" nillable="true" type="ser:guid" />
            </xs:sequence>
          </xs:extension>
        </xs:complexContent>
      </xs:complexType>
      <xs:element name="RequestHeaderType" nillable="true" type="tns:RequestHeaderType" />
      <xs:complexType name="HeaderType">
        <xs:sequence>
          <xs:element minOccurs="0" name="SenderRefID" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="SentAt" type="xs:dateTime" />
          <xs:element minOccurs="0" name="Version" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:complexType>
      <xs:element name="HeaderType" nillable="true" type="tns:HeaderType" />
      <xs:complexType name="LocationSearchType">
        <xs:sequence>
          <xs:element minOccurs="0" name="LocationLocode" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="LocationName" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:complexType>
      <xs:element name="LocationSearchType" nillable="true" type="tns:LocationSearchType" />
      <xs:complexType name="AbstractResponseType">
        <xs:sequence>
          <xs:element minOccurs="0" name="Header" nillable="true" type="tns:ResponseHeaderType" />
        </xs:sequence>
      </xs:complexType>
      <xs:element name="AbstractResponseType" nillable="true" type="tns:AbstractResponseType" />
      <xs:complexType name="ResponseHeaderType">
        <xs:complexContent mixed="false">
          <xs:extension base="tns:HeaderType">
            <xs:sequence>
              <xs:element minOccurs="0" name="NCARefID" nillable="true" type="xs:string" />
              <xs:element minOccurs="0" name="SenderName" nillable="true" type="xs:string" />
              <xs:element minOccurs="0" name="StatusCode" type="tns:StatusCodeEnumType" />
              <xs:element minOccurs="0" name="StatusMessage" nillable="true" type="xs:string" />
            </xs:sequence>
          </xs:extension>
        </xs:complexContent>
      </xs:complexType>
      <xs:element name="ResponseHeaderType" nillable="true" type="tns:ResponseHeaderType" />
      <xs:simpleType name="StatusCodeEnumType">
        <xs:restriction base="xs:string">
          <xs:enumeration value="InvalidFormat" />
          <xs:enumeration value="Timeout" />
          <xs:enumeration value="ServerError" />
          <xs:enumeration value="OK" />
          <xs:enumeration value="NotFound" />
          <xs:enumeration value="NotAvailable" />
          <xs:enumeration value="AccessDenied" />
        </xs:restriction>
      </xs:simpleType>
      <xs:element name="StatusCodeEnumType" nillable="true" type="tns:StatusCodeEnumType" />
      <xs:complexType name="ShipIdentificationType">
        <xs:complexContent mixed="false">
          <xs:extension base="tns:VesselIdentificationType">
            <xs:sequence>
              <xs:element minOccurs="0" name="ShipID" type="xs:int" />
            </xs:sequence>
          </xs:extension>
        </xs:complexContent>
      </xs:complexType>
      <xs:element name="ShipIdentificationType" nillable="true" type="tns:ShipIdentificationType" />
      <xs:complexType name="VesselIdentificationType">
        <xs:sequence>
          <xs:element minOccurs="0" name="CallSign" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="ImoNo" nillable="true" type="xs:int" />
          <xs:element minOccurs="0" name="MmsiNo" nillable="true" type="xs:int" />
          <xs:element minOccurs="0" name="ShipName" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:complexType>
      <xs:element name="VesselIdentificationType" nillable="true" type="tns:VesselIdentificationType" />
    </xs:schema>
    <xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
      <xs:import namespace="https://shiprep.no/ws/2018/02/26" />
      <xs:element name="AuthorizationFault" nillable="true" type="q1:AuthorizationFault" xmlns:q1="https://shiprep.no/ws/2018/02/26" />
    </xs:schema>
  </wsdl:types>
  <wsdl:message name="ISSNPublicService_GetCurrentVoyages_InputMessage">
    <wsdl:part name="parameters" element="tns:GetCurrentVoyages" />
  </wsdl:message>
  <wsdl:message name="ISSNPublicService_GetCurrentVoyages_OutputMessage">
    <wsdl:part name="parameters" element="tns:GetCurrentVoyagesResponse" />
  </wsdl:message>
  <wsdl:message name="ISSNPublicService_GetCurrentVoyages_AuthorizationFault_FaultMessage">
    <wsdl:part name="detail" element="AuthorizationFault" />
  </wsdl:message>
  <wsdl:message name="ISSNPublicService_GetCurrentPilotages_InputMessage">
    <wsdl:part name="parameters" element="tns:GetCurrentPilotages" />
  </wsdl:message>
  <wsdl:message name="ISSNPublicService_GetCurrentPilotages_OutputMessage">
    <wsdl:part name="parameters" element="tns:GetCurrentPilotagesResponse" />
  </wsdl:message>
  <wsdl:message name="ISSNPublicService_GetCurrentPilotages_AuthorizationFault_FaultMessage">
    <wsdl:part name="detail" element="AuthorizationFault" />
  </wsdl:message>
  <wsdl:portType name="ISSNPublicService">
    <wsdl:operation name="GetCurrentVoyages">
      <wsdl:input wsaw:Action="https://shiprep.no/ws/2018/02/26/ISSNPublicService/GetCurrentVoyages" message="tns:ISSNPublicService_GetCurrentVoyages_InputMessage" />
      <wsdl:output wsaw:Action="https://shiprep.no/ws/2018/02/26/ISSNPublicService/GetCurrentVoyagesResponse" message="tns:ISSNPublicService_GetCurrentVoyages_OutputMessage" />
      <wsdl:fault wsaw:Action="AuthorizationFault" name="AuthorizationFault" message="tns:ISSNPublicService_GetCurrentVoyages_AuthorizationFault_FaultMessage" />
    </wsdl:operation>
    <wsdl:operation name="GetCurrentPilotages">
      <wsdl:input wsaw:Action="https://shiprep.no/ws/2018/02/26/ISSNPublicService/GetCurrentPilotages" message="tns:ISSNPublicService_GetCurrentPilotages_InputMessage" />
      <wsdl:output wsaw:Action="https://shiprep.no/ws/2018/02/26/ISSNPublicService/GetCurrentPilotagesResponse" message="tns:ISSNPublicService_GetCurrentPilotages_OutputMessage" />
      <wsdl:fault wsaw:Action="AuthorizationFault" name="AuthorizationFault" message="tns:ISSNPublicService_GetCurrentPilotages_AuthorizationFault_FaultMessage" />
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:binding name="SSNPublicEndpoint" type="tns:ISSNPublicService">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="GetCurrentVoyages">
      <soap:operation soapAction="https://shiprep.no/ws/2018/02/26/ISSNPublicService/GetCurrentVoyages" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
      <wsdl:fault name="AuthorizationFault">
        <soap:fault use="literal" name="AuthorizationFault" namespace="" />
      </wsdl:fault>
    </wsdl:operation>
    <wsdl:operation name="GetCurrentPilotages">
      <soap:operation soapAction="https://shiprep.no/ws/2018/02/26/ISSNPublicService/GetCurrentPilotages" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
      <wsdl:fault name="AuthorizationFault">
        <soap:fault use="literal" name="AuthorizationFault" namespace="" />
      </wsdl:fault>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:service name="SSNPublicService">
    <wsdl:port name="SSNPublicEndpoint" binding="tns:SSNPublicEndpoint">
      <soap:address location="http://testapi.shiprep.no/SSNExternalWebservice3/SSNPublic.svc" />
    </wsdl:port>
  </wsdl:service>
</wsdl:definitions>