<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<wsdl:definitions
    xmlns:tns="http://minameddelanden.gov.se/service/Mailbox/v4"
    xmlns:msgdefinition="http://minameddelanden.gov.se/service/Mailbox/messagedefinition/v4"
    xmlns:commonv4="http://minameddelanden.gov.se/schema/Common/v4"
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    name="MailboxDefinitions"
    targetNamespace="http://minameddelanden.gov.se/service/Mailbox/v4">
    <wsdl:documentation>Version 4.0</wsdl:documentation>

     <wsdl:types>
        <xsd:schema>
            <xsd:import namespace="http://minameddelanden.gov.se/schema/Common/v4"
                        schemaLocation="schema/v4/Common.xsd"/>
            <xsd:import namespace="http://minameddelanden.gov.se/service/Mailbox/messagedefinition/v4"
                        schemaLocation="messagedefinition.v4/MailboxMsgd.xsd"/>
        </xsd:schema>
    </wsdl:types>

    <wsdl:message name="notifyRequestV4">
        <wsdl:part name="parameters" element="msgdefinition:notify"/>
    </wsdl:message>
    <wsdl:message name="notifyResponseV4">
        <wsdl:part name="parameters" element="msgdefinition:notifyResponse"/>
    </wsdl:message>
    <wsdl:message name="deliverSecureRequestV4">
        <wsdl:part name="parameters" element="msgdefinition:deliverSecure"/>
    </wsdl:message>
    <wsdl:message name="deliverSecureResponseV4">
        <wsdl:part name="parameters" element="msgdefinition:deliverSecureResponse"/>
    </wsdl:message>

    <!-- Fault(s) -->
    <wsdl:message name="applicationFaultV4">
        <wsdl:part name="fault" element="commonv4:applicationFaultDetail"/>
    </wsdl:message>

    <wsdl:portType name="MailboxPort-v4">
        <!-- Notify -->
        <wsdl:operation name="notify">
            <wsdl:documentation>
                <xsd:annotation>
                    <xsd:documentation xml:lang="en">A message of Security Class 1.
                        The format can be chosen from 2 options, either MIME-Type text/html or text/plain.</xsd:documentation>
                    <xsd:documentation xml:lang="sv">En försändelse av skyddsklass 1.
                        Skyddsklass 1 meddelanden (NotificationMessage) kan skickas i två format
                        till mottagaren, enligt MIME-typerna: text/html eller text/plain. Endast en
                        text kan anges från avsändaren och avsändaren måste välja format.</xsd:documentation>
                </xsd:annotation>
            </wsdl:documentation>
            <wsdl:input message="tns:notifyRequestV4"/>
            <wsdl:output message="tns:notifyResponseV4"/>
            <wsdl:fault name="fault" message="tns:applicationFaultV4"/>
        </wsdl:operation>
        <!-- Deliver Secure -->
        <wsdl:operation name="deliverSecure">
            <wsdl:documentation>
                <xsd:annotation>
                    <xsd:documentation xml:lang="en">A message of Security Class 3.
                        Will send a notification of a received message to the recipient via SMS and/or email.</xsd:documentation>
                    <xsd:documentation xml:lang="sv">Lämnar en försändelse av skyddsklass 3 till mottagarens brevlåda
                        (hos brevlådeoperatören). Är signerad av förmedlare och eventuellt avsändare.
                        En notifiering om mottaget meddelande skickas till mottagaren via SMS och/eller e-post.</xsd:documentation>
                </xsd:annotation>
            </wsdl:documentation>
            <wsdl:input message="tns:deliverSecureRequestV4">
                <wsdl:documentation>
                    <xsd:annotation>
                        <xsd:documentation xml:lang="en">The message deliver, signed by distributor and possibly also the sender.</xsd:documentation>
                        <xsd:documentation xml:lang="sv">Försändelsen med ett säkert, signerad av förmedlare och eventuellt avsändare.</xsd:documentation>
                    </xsd:annotation>
                </wsdl:documentation>
            </wsdl:input>
            <wsdl:output message="tns:deliverSecureResponseV4">
                <wsdl:documentation>
                    <xsd:annotation>
                        <xsd:documentation xml:lang="en">The delivery status of the sent delivery. Tells
                        whether the message is accepted or not. The reason a message is not accepted
                        could be either that the recipient does not exist in at this mailbox operator or that
                        the recipient exists but has chosen to opt-out from this sender.</xsd:documentation>
                        <xsd:documentation xml:lang="sv">Meddelandestatus för en försändelse.
                            Anger om försändelsen är levererbar, ett negativt svar anger att brevlådan inte
                            kan ta emot detta meddelande av orsaken att mottagaren inte finns eller valt att inte
                            ta emot utskick från avsändaren.</xsd:documentation>
                    </xsd:annotation>
                </wsdl:documentation>
            </wsdl:output>
            <wsdl:fault name="fault" message="tns:applicationFaultV4"/>
        </wsdl:operation>
    </wsdl:portType>

    <wsdl:binding name="MailboxBinding-v4" type="tns:MailboxPort-v4">
        <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
        <wsdl:operation name="notify">
            <soap:operation soapAction=""/>
            <wsdl:input>
                <soap:body use="literal"/>
            </wsdl:input>
            <wsdl:output>
                <soap:body use="literal"/>
            </wsdl:output>
            <wsdl:fault name="fault">
                <soap:fault name="fault" use="literal"/>
            </wsdl:fault>
        </wsdl:operation>
        <wsdl:operation name="deliverSecure">
            <soap:operation soapAction=""/>
            <wsdl:input>
                <soap:body use="literal"/>
            </wsdl:input>
            <wsdl:output>
                <soap:body use="literal"/>
            </wsdl:output>
            <wsdl:fault name="fault">
                <soap:fault name="fault" use="literal"/>
            </wsdl:fault>
        </wsdl:operation>
    </wsdl:binding>

    <wsdl:service name="MailboxService-v4">
        <wsdl:documentation>
            <xsd:annotation>
                <xsd:documentation xml:lang="en">A service for receiving messages. This service is implemented
                    by all Mailbox Operators. It is used by either Sender or Distributor, to deliver
                    messages.</xsd:documentation>
                <xsd:documentation xml:lang="sv">En tjänst som en förmedlare eller avsändare använder för
                    att leverera meddelanden till en mottagare. Tjänsten implementeras av alla
                    brevlådeoperatörer.</xsd:documentation>
            </xsd:annotation>
        </wsdl:documentation>
        <wsdl:port name="MailboxPort-v4" binding="tns:MailboxBinding-v4">
            <soap:address location="http://minameddelanden.gov.se/service/mailbox/v4"/>
        </wsdl:port>
    </wsdl:service>
</wsdl:definitions>
