<wsdl:definitions targetNamespace="http://services.cibg.nl/ExternalUser" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:tns="http://services.cibg.nl/ExternalUser" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <wsdl:types>
        <xsd:schema elementFormDefault="qualified" targetNamespace="http://services.cibg.nl/ExternalUser">
            <xsd:element name="listHcpApproxRequest" type="tns:ListHcpApproxRequest"/>
            <xsd:complexType name="ListHcpApproxRequest">
                <xsd:sequence>
                    <xsd:element name="WebSite" type="tns:SourceWebSite"/>
                    <xsd:element minOccurs="0" name="Name" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="Initials" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="Prefix" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="Street" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="Gender" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="HouseNumber" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="Postalcode" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="City" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="RegistrationNumber" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="DateOfBirth" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="ProfessionalGroup" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="TypeOfSpecialism" type="xsd:string"/>
                </xsd:sequence>
            </xsd:complexType>
            <xsd:simpleType name="SourceWebSite">
                <xsd:restriction base="xsd:string">
                    <xsd:enumeration value="None"/>
                    <xsd:enumeration value="Ribiz"/>
                    <xsd:enumeration value="Skp"/>
                </xsd:restriction>
            </xsd:simpleType>
            <xsd:element name="ListHcpApprox4Result" type="tns:ListHcpApproxResponse4"/>
            <xsd:complexType name="ListHcpApproxResponse4">
                <xsd:sequence>
                    <xsd:element minOccurs="0" name="ListHcpApprox" type="tns:ArrayOfListHcpApprox4"/>
                </xsd:sequence>
            </xsd:complexType>
            <xsd:complexType name="ArrayOfListHcpApprox4">
                <xsd:sequence>
                    <xsd:element maxOccurs="unbounded" minOccurs="0" name="ListHcpApprox4" nillable="true" type="tns:ListHcpApprox4"/>
                </xsd:sequence>
            </xsd:complexType>
            <xsd:complexType name="ListHcpApprox4">
                <xsd:sequence>
                    <xsd:element minOccurs="0" name="BirthSurname" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="MailingName" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="Prefix" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="Initial" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="Gender" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="WorkAddress1" type="tns:Address"/>
                    <xsd:element minOccurs="0" name="WorkAddress2" type="tns:Address"/>
                    <xsd:element minOccurs="0" name="WorkAddress3" type="tns:Address"/>
                    <xsd:element minOccurs="0" name="ArticleRegistration" type="tns:ArrayOfArticleRegistrationExtApp"/>
                    <xsd:element minOccurs="0" name="Specialism" type="tns:ArrayOfSpecialismExtApp1"/>
                    <xsd:element minOccurs="0" name="Mention" type="tns:ArrayOfMentionExtApp"/>
                    <xsd:element minOccurs="0" name="JudgmentProvision" type="tns:ArrayOfJudgmentProvisionExtApp"/>
                    <xsd:element minOccurs="0" name="Limitation" type="tns:ArrayOfLimitationExtApp"/>
                </xsd:sequence>
            </xsd:complexType>
            <xsd:complexType name="Address">
                <xsd:sequence>
                    <xsd:element minOccurs="0" name="AddressTo" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="StreetName" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="HouseNumber" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="HouseNumberAddition" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="PostalCode" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="City" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="ForeignAddress" type="xsd:string"/>
                    <xsd:element name="CountryCode" nillable="true" type="xsd:decimal"/>
                </xsd:sequence>
            </xsd:complexType>
            <xsd:complexType name="ArrayOfArticleRegistrationExtApp">
                <xsd:sequence>
                    <xsd:element maxOccurs="unbounded" minOccurs="0" name="ArticleRegistrationExtApp" nillable="true" type="tns:ArticleRegistrationExtApp"/>
                </xsd:sequence>
            </xsd:complexType>
            <xsd:complexType name="ArticleRegistrationExtApp">
                <xsd:sequence>
                    <xsd:element name="ArticleRegistrationNumber" type="xsd:decimal"/>
                    <xsd:element name="ArticleRegistrationStartDate" type="xsd:dateTime"/>
                    <xsd:element name="ArticleRegistrationEndDate" type="xsd:dateTime"/>
                    <xsd:element minOccurs="0" name="ProfessionalGroupCode" type="xsd:string"/>
                </xsd:sequence>
            </xsd:complexType>
            <xsd:complexType name="ArrayOfSpecialismExtApp1">
                <xsd:sequence>
                    <xsd:element maxOccurs="unbounded" minOccurs="0" name="SpecialismExtApp1" nillable="true" type="tns:SpecialismExtApp1"/>
                </xsd:sequence>
            </xsd:complexType>
            <xsd:complexType name="SpecialismExtApp1">
                <xsd:sequence>
                    <xsd:element name="SpecialismId" type="xsd:decimal"/>
                    <xsd:element name="ArticleRegistrationNumber" type="xsd:decimal"/>
                    <xsd:element name="TypeOfSpecialismId" type="xsd:decimal"/>
                </xsd:sequence>
            </xsd:complexType>
            <xsd:complexType name="ArrayOfMentionExtApp">
                <xsd:sequence>
                    <xsd:element maxOccurs="unbounded" minOccurs="0" name="MentionExtApp" nillable="true" type="tns:MentionExtApp"/>
                </xsd:sequence>
            </xsd:complexType>
            <xsd:complexType name="MentionExtApp">
                <xsd:sequence>
                    <xsd:element name="MentionId" type="xsd:decimal"/>
                    <xsd:element name="ArticleRegistrationNumber" type="xsd:decimal"/>
                    <xsd:element name="TypeOfMentionId" type="xsd:decimal"/>
                    <xsd:element name="StartDate" type="xsd:dateTime"/>
                    <xsd:element name="EndDate" nillable="true" type="xsd:dateTime"/>
                </xsd:sequence>
            </xsd:complexType>
            <xsd:complexType name="ArrayOfJudgmentProvisionExtApp">
                <xsd:sequence>
                    <xsd:element maxOccurs="unbounded" minOccurs="0" name="JudgmentProvisionExtApp" nillable="true" type="tns:JudgmentProvisionExtApp"/>
                </xsd:sequence>
            </xsd:complexType>
            <xsd:complexType name="JudgmentProvisionExtApp">
                <xsd:sequence>
                    <xsd:element name="ArticleNumber" type="xsd:decimal"/>
                    <xsd:element name="Id" type="xsd:decimal"/>
                    <xsd:element name="StartDate" type="xsd:dateTime"/>
                    <xsd:element minOccurs="0" name="PublicDescription" type="xsd:string"/>
                    <xsd:element name="EndDate" nillable="true" type="xsd:dateTime"/>
                    <xsd:element name="Public" type="xsd:boolean"/>
                </xsd:sequence>
            </xsd:complexType>
            <xsd:complexType name="ArrayOfLimitationExtApp">
                <xsd:sequence>
                    <xsd:element maxOccurs="unbounded" minOccurs="0" name="LimitationExtApp" nillable="true" type="tns:LimitationExtApp"/>
                </xsd:sequence>
            </xsd:complexType>
            <xsd:complexType name="LimitationExtApp">
                <xsd:sequence>
                    <xsd:element name="LimitationId" type="xsd:decimal"/>
                    <xsd:element name="ArticleRegistrationNumber" type="xsd:decimal"/>
                    <xsd:element name="CompetenceRegistrationId" type="xsd:decimal"/>
                    <xsd:element name="TypeLimitationId" type="xsd:decimal"/>
                    <xsd:element minOccurs="0" name="Description" type="xsd:string"/>
                    <xsd:element name="StartDate" nillable="true" type="xsd:dateTime"/>
                    <xsd:element name="EndDate" nillable="true" type="xsd:dateTime"/>
                    <xsd:element name="ExpirationEndDate" nillable="true" type="xsd:dateTime"/>
                    <xsd:element name="MonthsValid" type="xsd:int"/>
                    <xsd:element name="YearsValid" type="xsd:int"/>
                </xsd:sequence>
            </xsd:complexType>
            <xsd:element name="GetRibizReferenceData">
                <xsd:complexType>
                    <xsd:sequence>
                        <xsd:element minOccurs="0" name="getCibgReferenceDataRequest" type="tns:GetRibizReferenceDataRequest"/>
                    </xsd:sequence>
                </xsd:complexType>
            </xsd:element>
            <xsd:complexType name="GetRibizReferenceDataRequest"/>
            <xsd:element name="GetRibizReferenceDataResponse">
                <xsd:complexType>
                    <xsd:sequence>
                        <xsd:element minOccurs="0" name="GetRibizReferenceDataResult" type="tns:GetRibizReferenceDataResponse"/>
                    </xsd:sequence>
                </xsd:complexType>
            </xsd:element>
            <xsd:complexType name="GetRibizReferenceDataResponse">
                <xsd:sequence>
                    <xsd:element minOccurs="0" name="ProfessionalGroups" type="tns:ArrayOfProfessionalGroup"/>
                    <xsd:element minOccurs="0" name="TypeOfSpecialisms" type="tns:ArrayOfTypeOfSpecialism"/>
                </xsd:sequence>
            </xsd:complexType>
            <xsd:complexType name="ArrayOfProfessionalGroup">
                <xsd:sequence>
                    <xsd:element maxOccurs="unbounded" minOccurs="0" name="ProfessionalGroup" nillable="true" type="tns:ProfessionalGroup"/>
                </xsd:sequence>
            </xsd:complexType>
            <xsd:complexType name="ProfessionalGroup">
                <xsd:sequence>
                    <xsd:element minOccurs="0" name="Code" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="Description" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="DescriptionEnglish" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="Title" type="xsd:string"/>
                    <xsd:element name="Article3" type="xsd:boolean"/>
                    <xsd:element name="Article34" type="xsd:boolean"/>
                    <xsd:element name="BusinessOwner" type="xsd:decimal"/>
                    <xsd:element name="RequiredHoursForReregistration" type="xsd:int"/>
                </xsd:sequence>
            </xsd:complexType>
            <xsd:complexType name="ArrayOfTypeOfSpecialism">
                <xsd:sequence>
                    <xsd:element maxOccurs="unbounded" minOccurs="0" name="TypeOfSpecialism" nillable="true" type="tns:TypeOfSpecialism"/>
                </xsd:sequence>
            </xsd:complexType>
            <xsd:complexType name="TypeOfSpecialism">
                <xsd:sequence>
                    <xsd:element name="Code" type="xsd:decimal"/>
                    <xsd:element minOccurs="0" name="Description" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="DescriptionEn" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="TitleOfSpecialist" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="TitleOfSpecialistEn" type="xsd:string"/>
                    <xsd:element minOccurs="0" name="Register" type="xsd:string"/>
                    <xsd:element name="EndDate" nillable="true" type="xsd:dateTime"/>
                    <xsd:element minOccurs="0" name="ProfessionalGroupCode" type="xsd:string"/>
                </xsd:sequence>
            </xsd:complexType>
        </xsd:schema>
    </wsdl:types>
    <wsdl:message name="ListHcpApprox4SoapIn">
        <wsdl:part element="tns:listHcpApproxRequest" name="listHcpApproxRequest"/>
    </wsdl:message>
    <wsdl:message name="ListHcpApprox4SoapOut">
        <wsdl:part element="tns:ListHcpApprox4Result" name="ListHcpApprox4Result"/>
    </wsdl:message>
    <wsdl:message name="GetRibizReferenceDataSoapIn">
        <wsdl:part element="tns:GetRibizReferenceData" name="parameters"/>
    </wsdl:message>
    <wsdl:message name="GetRibizReferenceDataSoapOut">
        <wsdl:part element="tns:GetRibizReferenceDataResponse" name="parameters"/>
    </wsdl:message>
    <wsdl:portType name="PublicV4Soap">
        <wsdl:operation name="ListHcpApprox4">
            <wsdl:documentation>Search for health care professionals based on approx match</wsdl:documentation>
            <wsdl:input message="tns:ListHcpApprox4SoapIn"/>
            <wsdl:output message="tns:ListHcpApprox4SoapOut"/>
        </wsdl:operation>
        <wsdl:operation name="GetRibizReferenceData">
            <wsdl:documentation>Returns the RIBIZ reference data</wsdl:documentation>
            <wsdl:input message="tns:GetRibizReferenceDataSoapIn"/>
            <wsdl:output message="tns:GetRibizReferenceDataSoapOut"/>
        </wsdl:operation>
    </wsdl:portType>
    <wsdl:binding name="PublicV4Soap" type="tns:PublicV4Soap">
        <soap:binding transport="http://schemas.xmlsoap.org/soap/http"/>
        <wsdl:operation name="ListHcpApprox4">
            <soap:operation soapAction="http://services.cibg.nl/ExternalUser/ListHcpApprox4" style="document"/>
            <wsdl:input>
                <soap:body use="literal"/>
            </wsdl:input>
            <wsdl:output>
                <soap:body use="literal"/>
            </wsdl:output>
        </wsdl:operation>
        <wsdl:operation name="GetRibizReferenceData">
            <soap:operation soapAction="http://services.cibg.nl/ExternalUser/GetRibizReferenceData" style="document"/>
            <wsdl:input>
                <soap:body use="literal"/>
            </wsdl:input>
            <wsdl:output>
                <soap:body use="literal"/>
            </wsdl:output>
        </wsdl:operation>
    </wsdl:binding>
    <wsdl:binding name="PublicV4Soap12" type="tns:PublicV4Soap">
        <soap12:binding transport="http://schemas.xmlsoap.org/soap/http"/>
        <wsdl:operation name="ListHcpApprox4">
            <soap12:operation soapAction="http://services.cibg.nl/ExternalUser/ListHcpApprox4" style="document"/>
            <wsdl:input>
                <soap12:body use="literal"/>
            </wsdl:input>
            <wsdl:output>
                <soap12:body use="literal"/>
            </wsdl:output>
        </wsdl:operation>
        <wsdl:operation name="GetRibizReferenceData">
            <soap12:operation soapAction="http://services.cibg.nl/ExternalUser/GetRibizReferenceData" style="document"/>
            <wsdl:input>
                <soap12:body use="literal"/>
            </wsdl:input>
            <wsdl:output>
                <soap12:body use="literal"/>
            </wsdl:output>
        </wsdl:operation>
    </wsdl:binding>
    <wsdl:service name="PublicV4">
        <wsdl:port binding="tns:PublicV4Soap" name="PublicV4Soap">
            <soap:address location="https://api.bigregister.nl:443/zksrv/soap/4"/>
        </wsdl:port>
        <wsdl:port binding="tns:PublicV4Soap12" name="PublicV4Soap12">
            <soap12:address location="https://api.bigregister.nl:443/zksrv/soap/4"/>
        </wsdl:port>
    </wsdl:service>
</wsdl:definitions>