<?xml version="1.0"  encoding="utf-8" ?>
<!-- Datum 31 juli 2012 beta release -->
<!-- Modified Datum 10 december 2012 -->
<!-- Modified Datum 5 juni 2013 -->
<!-- Modified Datum 22 oktober 2013 -->
<!-- Modified Datum 26 oktober 2015 - versie 4.0>-->
<!-- 21042022 X toegevoegd bij geslacht-->
<!-- 05072023 Bij PeriodeType ook jaar toestaan-->
<!-- 21112023 levensloop eruit meerdere verzuimtypes toegevoegd.-->
<!-- 07042025 reden uitdienst toegevoegd.-->
<!--
voor vragen over het schema mail naar Help@loon.nl
-->
<!-- Loon Salarissoftware -->
<!-- www.loon.nl -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://tempuri.org/XMLSchema.xsd" targetNamespace="http://tempuri.org/XMLSchema.xsd" elementFormDefault="qualified" attributeFormDefault="unqualified">
  <xs:element name="LoonImport">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="Softwarepakket" type="xs:string"/>
        <xs:element name="Opmerking" type="xs:string" minOccurs="0"/>
        <xs:element name="Werkgever" minOccurs="0" maxOccurs="unbounded">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="Naam" type="xs:string"/>
              <xs:element name="Loonheffingennummer" type="xs:string"/>
              <xs:element name="SleutelWerknemers" type="KeyType"/>
              <xs:element name="Werknemer" minOccurs="0" maxOccurs="unbounded">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="WnSleutel" type="SleutelType"/>
                    <xs:element name="PersoneelsNummer" type="PersnrType"/>
                    <xs:choice>
                      <xs:element name="Sofinummer" type="SofinrType"/>
                      <xs:element name="Anoniem" type="AanwezigOfNietType" minOccurs="0"/>
                    </xs:choice>
                    <xs:element name="Achternaam" type="AchternaamType"/>
                    <xs:element name="Voorvoegsels" type="VoorvoegselType" minOccurs="0"/>
                    <xs:element name="Voorletters" type="VoorlettersType" minOccurs="0"/>
                    <xs:element name="GeboorteNaam" type="AchternaamType" minOccurs="0"/>
                    <xs:element name="GeboorteDatum" type="xs:date"/>
                    <xs:element name="BurgStaat" type="BurgStaatType" minOccurs="0"/>
                    <xs:element name="Geslacht" type="GeslachtType" minOccurs="0"/>
                    <xs:element name="Email" type="EmailType" minOccurs="0"/>
                    <xs:element name="Straat" type="StraatType" minOccurs="0"/>
                    <xs:element name="Huisnummer" type="HuisnummerType" minOccurs="0"/>
                    <xs:element name="HuisnrToev" type="xs:string" minOccurs="0"/>
                    <xs:element name="Postcode" type="PostcodeType" minOccurs="0"/>
                    <xs:element name="Woonplaats" type="WoonplaatsType" minOccurs="0"/>
                    <xs:element name="Land" type="xs:string" minOccurs="0"/>
                    <xs:element name="Nationaliteit" type="NationaliteitType" minOccurs="0"/>
                    <xs:choice>
                      <!-- deze is er nog alleen om compatibel te blijven met versie 1.2 -->
                      <xs:element name="Rekeningnummer" type="RekeningNrType" minOccurs="0"/>
                      <!-- Vanaf versie 1.3 is het beter om deze te gebruiken.-->
                      <xs:sequence>
                        <xs:element name="Rekeningnr1" type="RekeningType" minOccurs="0"/>
                        <xs:element name="Rekeningnr2" type="RekeningType" minOccurs="0"/>
                        <xs:element name="Rekeningnr3" type="RekeningType" minOccurs="0"/>
                      </xs:sequence>
                    </xs:choice>
                    <!-- uitbreiding werknemer -->
                    <xs:element name="Voornaam" type="NaamType" minOccurs="0" />
                    <xs:element name="TitelVoor" type="NaamType"  minOccurs="0" />
                    <xs:element name="TitelAchter" type="NaamType" minOccurs="0" />
                    <xs:element name="Taal" type="TaalType" minOccurs="0"/>
                    <xs:element name="Telefoon" type="TelefoonType" minOccurs="0"/>
                    <xs:element name="Telefoon2" type="TelefoonType" minOccurs="0"/>
                    <xs:element name="Telefoon3" type="TelefoonType" minOccurs="0"/>
                    <xs:element name="Identiteitsbewijs" type="IdentiteitsbewijsType" minOccurs="0"/>
                    <!-- Einde uitbreiding werknemer -->
                    <xs:element name="Dienstverband" minOccurs="0" maxOccurs="unbounded">
                      <xs:complexType>
                        <xs:sequence>
                          <xs:element name="DienstverbandNr" type="DVSleutelType"/>
                          <xs:element name="IndienstDatum" type="xs:date"/>
                          <xs:element name="UitdienstDatum" type="xs:date" minOccurs="0"/>
                          <xs:element name="RedenUitdienst" type="RedenUitdienstType" minOccurs="0" />
                          <xs:element name="EindeContractDatum" type="xs:date" minOccurs="0"/>
                          <xs:element name="Functie" type="xs:string" minOccurs="0"/>
                          <xs:element name="LoonPeriode" type="PeriodeType" minOccurs="0"/>
                          <xs:choice>
                            <!-- bruto bedrag -->
                            <xs:element name="StandaardLoon" type="Bedrag9.2" minOccurs="0"/>
                            <!-- Nettoloon niet meer gebruiken in versie 3.2, maar gebruik de berekeningsmethode. -->
                            <xs:element name="NettoLoon" type="Bedrag9.2" minOccurs="0"/>
                            <xs:element name="UurLoon" type="Bedrag9.2" minOccurs="0"/>
                          </xs:choice>
                          <xs:element name="BerekeningsMethode" type="BerekeningsMethodeType" minOccurs="0"/>
                          <xs:choice>
                            <xs:element name="Voltijd" type="AanwezigOfNietType" minOccurs="0"/>
                            <xs:element name="DeeltijdMetSchema" minOccurs="0">
                              <xs:complexType>
                                <xs:sequence>
                                  <xs:element name="Maandag" type="UrenperdagType" minOccurs="0"/>
                                  <xs:element name="Dinsdag" type="UrenperdagType" minOccurs="0"/>
                                  <xs:element name="Woensdag" type="UrenperdagType" minOccurs="0"/>
                                  <xs:element name="Donderdag" type="UrenperdagType" minOccurs="0"/>
                                  <xs:element name="Vrijdag" type="UrenperdagType" minOccurs="0"/>
                                  <xs:element name="Zaterdag" type="UrenperdagType" minOccurs="0"/>
                                  <xs:element name="Zondag" type="UrenperdagType" minOccurs="0"/>
                                </xs:sequence>
                              </xs:complexType>
                            </xs:element>
                            <xs:element name="DeeltijdZonderSchema" minOccurs="0">
                              <xs:complexType>
                                <xs:sequence>
                                  <xs:element name="AantalUrenPerPeriode" type="UurType" minOccurs="0"/>
                                  <xs:element name="AantalDagenPerPeriode" type="DagenType" minOccurs="0"/>
                                </xs:sequence>
                              </xs:complexType>
                            </xs:element>
                            <xs:element name="OnregelmatigDeeltijd" minOccurs="0">
                              <xs:annotation>
                                <xs:documentation>
                                  Gewerkte uren en dagen.
                                  De eerste 4 items in de sequence zijn nodig om compatabel te blijven met oudere versies.
                                  Voor versie 4 kunt deze eerste 4 items beter niet meer gebruiken, maar overstappen op de volgende manier.
                                  Het kan op drie manieren worden opgegeven:
                                  1. Voor een hele periode :
                                  Bijvoorbeeld in Oktober (periodenummer 10, Loontype MND) zijn er 3 dagen (Aantaldagenperperiode = 3) gewerkt.
                                  Bij deze optie is het veld LoonPeriode (van het dienstverband) verplicht.
                                  2. Voor hele dagen:
                                  Bijvoorbeeld van 3 Oktober (BeginDag=2015-10-03) tot en met 14 Oktober (EindDag=2015-10-14) is er gewerkt.
                                  3. Per dag:
                                  Bijvoorbeeld op 28 oktober (Dag=2015-10-28) is van 12:15 uur (BeginTijdstip=12:15:00) t/m 15:00 uur (EindTijdstip=15:00:00) gewerkt.
                                  Er kan meerdere keren een afwezig worden opgegeven bijvoorbeeld per dag.
                                  Let op: Als er meerdere types worden opgegeven dan zal Loon de gewerkte tijden bijelkaar optellen! In ons voorbeeld: 3 dagen + 12 dagen + 2,45 uur
                                </xs:documentation>
                              </xs:annotation>
                              <xs:complexType>
                                <xs:sequence>
                                  <!-- deze is er nog alleen om compatibel te blijven met versies lager dan 4 -->
                                  <xs:element name="AantalUrenPerPeriode" type="UurType" minOccurs="0"/>
                                  <xs:element name="AantalDagenPerPeriode" type="DagenType" minOccurs="0"/>
                                  <xs:element name="IsNihilVerloning" type="xs:boolean" minOccurs="0"/>
                                  <xs:element name="PeriodeNummer" type="PeriodeNrType" minOccurs="0"/>
                                  <!-- De nieuwe manier van aanleveren vanaf versie 4 -->
                                  <xs:element name="HelePeriodeAanwezig" minOccurs="0" maxOccurs="unbounded">
                                    <xs:complexType>
                                      <xs:sequence>
                                        <xs:element name="AantalUrenPerPeriode" type="UurType" />
                                        <xs:element name="AantalDagenPerPeriode" type="DagenType" />
                                        <xs:element name="PeriodeNummer" type="PeriodeNrType" />
                                        <xs:element name="Omschrijving" type="xs:string" minOccurs="0"/>
                                      </xs:sequence>
                                    </xs:complexType>
                                  </xs:element>
                                  <!-- einde "VoorHelePeriode" -->
                                  <xs:element name="HeleDagenAanwezig"  minOccurs="0" maxOccurs="unbounded" >
                                    <xs:complexType>
                                      <xs:sequence>
                                        <xs:element name="BeginDag" type="xs:date" />
                                        <xs:element name="EindDag" type="xs:date" />
                                        <xs:element name="Omschrijving" type="xs:string" minOccurs="0"/>
                                      </xs:sequence>
                                    </xs:complexType>
                                  </xs:element>
                                  <!-- einde "VoorHeleDagen" -->
                                  <xs:element name="PerDagAanwezig" minOccurs="0"  maxOccurs="unbounded">
                                    <xs:complexType>
                                      <xs:sequence>
                                        <xs:element name="Dag" type="xs:date" />
                                        <xs:element name="BeginTijdstip" type="Tijd" />
                                        <xs:element name="EindTijdstip" type="Tijd" />
                                        <xs:element name="Omschrijving" type="xs:string" minOccurs="0"/>
                                      </xs:sequence>
                                    </xs:complexType>
                                  </xs:element>
                                  <!-- einde "PerDag" -->
                                </xs:sequence>
                              </xs:complexType>
                            </xs:element>
                            <!-- einde "OnregelmatigDeeltijd" -->
                          </xs:choice>
                          <!-- Begin uitbreiding verzuim en verlof -->
                          <xs:element name="Afwezig" minOccurs="0" >
                            <xs:annotation>
                              <xs:documentation>
                                Afwezigheid van verzuim of verlof. U bent verplicht een type op te geven die staan bij Afwezigheidstype.
                                Het kan op drie manieren worden opgegeven:
                                1. Voor een hele periode :
                                Bijvoorbeeld in Oktober (periodenummer 10, Loontype MND) zijn er 3 dagen (Aantaldagenperperiode = 3) vakantie (TypeAfwezig = Verlof - Vakantie) opgenomen.
                                Bij deze optie is het veld LoonPeriode (van het dienstverband) verplicht.
                                2. Voor hele dagen:
                                Bijvoorbeeld van 3 Oktober (BeginDag=2015-10-03) tot en met 14 Oktober (EindDag=2015-10-14 is er vakantie (TypeAfwezig = Verlof - Vakantie) opgenomen.
                                3. Per dag:
                                Bijvoorbeeld op 28 oktober (Dag=2015-10-28) is van 12:15 uur (BeginTijdstip=12:15:00) t/m 15:00 uur (EindTijdstip=15:00:00) artsbezoek geweest (TypeAfwezig = "Verzuim – Artsenbezoek")
                                Er kan meerdere keren een afwezig worden opgegeven bijvoorbeeld per dag.
                                Let op: Als er meerdere types worden opgegeven dan zal Loon de afwezigheid optellen! In ons voorbeeld: 3 dagen + 12 dagen + 2,45 uur
                              </xs:documentation>
                            </xs:annotation>
                            <xs:complexType>
                              <xs:sequence>
                                <xs:element name="HelePeriodeAfwezig" minOccurs="0" maxOccurs="unbounded">
                                  <xs:complexType>
                                    <xs:sequence>
                                      <xs:element name="TypeAfwezig" type="AfwezigheidType"  />
                                      <xs:element name="AantalUrenPerPeriode" type="UurType" />
                                      <xs:element name="AantalDagenPerPeriode" type="DagenType" />
                                      <xs:element name="PeriodeNummer" type="PeriodeNrType" />
                                      <xs:element name="Omschrijving" type="xs:string" minOccurs="0"/>
                                    </xs:sequence>
                                  </xs:complexType>
                                </xs:element>
                                <!-- einde "VoorHelePeriode" -->
                                <xs:element name="HeleDagenAfwezig"  minOccurs="0" maxOccurs="unbounded" >
                                  <xs:complexType>
                                    <xs:sequence>
                                      <xs:element name="TypeAfwezig" type="AfwezigheidType"  />
                                      <xs:element name="BeginDag" type="xs:date" />
                                      <xs:element name="EindDag" type="xs:date" />
                                      <xs:element name="Omschrijving" type="xs:string" minOccurs="0"/>
                                    </xs:sequence>
                                  </xs:complexType>
                                </xs:element>
                                <!-- einde "VoorHeleDagen" -->
                                <xs:element name="PerDagAfwezig" minOccurs="0"  maxOccurs="unbounded">
                                  <xs:complexType>
                                    <xs:sequence>
                                      <xs:element name="TypeAfwezig" type="AfwezigheidType"  />
                                      <xs:element name="Dag" type="xs:date" />
                                      <xs:element name="BeginTijdstip" type="Tijd" />
                                      <xs:element name="EindTijdstip" type="Tijd" />
                                      <xs:element name="Omschrijving" type="xs:string" minOccurs="0"/>
                                    </xs:sequence>
                                  </xs:complexType>
                                </xs:element>
                                <!-- einde "PerDag" -->
                              </xs:sequence>
                            </xs:complexType>
                          </xs:element>
                          <!--name="Afwezig"-->
                          <!-- Einde uitbreiding verzuim en verlof -->

                          <!-- begin uitbreiding dv -->
                          <!--Afdeling moet bestaat in Loon anders krijgt de werknemer afdeling <geen>-->
                          <xs:element name="Afdeling" type="xs:string" minOccurs="0"/>
                          <xs:choice minOccurs="0">
                            <xs:annotation>
                              <xs:documentation>
                                Werknemer is artiest, of heeft tabelkleur en loonheffingskorting
                              </xs:documentation>
                            </xs:annotation>
                            <xs:element name="Artiest">
                              <xs:annotation>
                                <xs:documentation>Default: binnenlandse artiest</xs:documentation>
                              </xs:annotation>
                              <xs:complexType>
                                <xs:sequence>
                                  <xs:element name="Kostenvergoeding" type="PositiefBedragType" minOccurs="0">
                                    <xs:annotation>
                                      <xs:documentation>Optionele kostenvergoeding</xs:documentation>
                                    </xs:annotation>
                                  </xs:element>
                                </xs:sequence>
                                <xs:attribute name="buitenlands" type="xs:boolean" use="optional"/>
                              </xs:complexType>
                            </xs:element>
                            <xs:sequence>
                              <xs:element name="Tabel">
                                <xs:simpleType>
                                  <xs:restriction base="xs:string">
                                    <xs:enumeration value="Wit"/>
                                    <xs:enumeration value="Groen"/>
                                    <xs:enumeration value="Aannemer"/>
                                    <xs:enumeration value="Thuiswerker"/>
                                    <xs:enumeration value="Relaxwerker"/>
                                  </xs:restriction>
                                </xs:simpleType>
                              </xs:element>
                              <xs:element name="Loonheffingskorting" type="xs:boolean"/>
                            </xs:sequence>
                          </xs:choice>
                          <xs:element name="Dagtabel" type="xs:boolean" minOccurs="0"/>
                          <xs:element name="ReserveerVakantiegeld" type="xs:boolean" minOccurs="0"/>
                          <xs:element name="VorigFiscaalJaarloon" type="PositiefGeheelBedragType" minOccurs="0"/>
                          <xs:element name="GrondslagPensioen" type="PositiefBedragType" minOccurs="0"/>
                          <xs:element name="JaargrondslagPensioen" type="PositiefBedragType" minOccurs="0"/>
                          <xs:element name="Betaling" minOccurs="0" maxOccurs="2">
                            <xs:complexType>
                              <xs:sequence>
                                <xs:annotation>
                                  <xs:documentation>
                                    Het eerste bedrag wordt overgemaakt op rekeningnummer2 het tweede op rekeningnummer 3. Hierme wordt ook rekeningnummer2 (3) overschreven.
                                  </xs:documentation>
                                </xs:annotation>
                                <xs:element name="Bedrag" type="PositiefBedragType"/>
                                <xs:element name="Rekening" type="RekeningType"/>
                              </xs:sequence>
                            </xs:complexType>
                          </xs:element>
                          <xs:element name="VrijeTekst" minOccurs="0" maxOccurs="2">
                            <xs:annotation>
                              <xs:documentation>
                                Max. 2 vrije teksten. Worden gecombineerd met de vrije teksten van de loonberekening.
                              </xs:documentation>
                            </xs:annotation>
                            <xs:simpleType>
                              <xs:restriction base="xs:string">
                                <xs:minLength value="1"/>
                                <xs:maxLength value="70"/>
                              </xs:restriction>
                            </xs:simpleType>
                          </xs:element>
                          <xs:element name="Voorschot" type="Bedrag9.2" minOccurs="0"/>
                          <xs:element name="PremieKorting" minOccurs="0">
                            <xs:annotation>
                              <xs:documentation>
                                Als dit element aanwezig is, krijgt de werknemer premiekorting
                              </xs:documentation>
                            </xs:annotation>
                            <xs:complexType>
                              <xs:sequence>
                                <xs:element name="Wajong" type="xs:boolean" minOccurs="0"/>
                              </xs:sequence>
                            </xs:complexType>
                          </xs:element>
                          <xs:element name="Herleidingsregel" minOccurs="0">
                            <xs:simpleType>
                              <xs:restriction base="xs:string">
                                <xs:enumeration value="A"/>
                                <xs:enumeration value="B"/>
                                <xs:enumeration value="C"/>
                                <xs:enumeration value="D"/>
                                <xs:enumeration value="E"/>
                                <xs:enumeration value="F"/>
                                <xs:enumeration value="G"/>
                                <xs:enumeration value="H"/>
                                <xs:enumeration value="I"/>
                                <xs:enumeration value="J"/>
                                <xs:enumeration value="K"/>
                                <xs:enumeration value="L"/>
                                <xs:enumeration value="M"/>
                              </xs:restriction>
                            </xs:simpleType>
                          </xs:element>
                          <xs:element name="Stagiair" type="xs:boolean" minOccurs="0"/>
                          <xs:element name="LosseWerknemer" type="xs:boolean" minOccurs="0"/>
                          <xs:element name="Gelegenheidswerknemer" type="xs:boolean" minOccurs="0"/>
                          <xs:element name="Gemoedsbezwaard" type="xs:boolean" minOccurs="0"/>
                          <xs:element name="Scholierenregeling" type="xs:boolean" minOccurs="0"/>
                          <xs:element name="VerminderingOnderwijs" type="xs:string" minOccurs="0">
                            <xs:annotation>
                              <xs:documentation>TODO: codes toekennen voor de verschillende types</xs:documentation>
                            </xs:annotation>
                          </xs:element>
                          <xs:element name="SubsidieEVC" type="xs:boolean" minOccurs="0"/>
                          <xs:element name="Ouderenkorting50Plus" type="xs:boolean" minOccurs="0"/>
                          <xs:element name="VervoerVanwegeWerkgever" type="xs:boolean" minOccurs="0"/>
                          <!-- Vaste reiskosten -->
                          <xs:choice minOccurs="0">
                            <xs:annotation>
                              <xs:documentation>
                                Vaste reiskosten. Overige reiskosten gaan via LoonComponent
                              </xs:documentation>
                            </xs:annotation>
                            <xs:sequence>
                              <xs:sequence>
                                <xs:element name="AfstandWoonWerk">
                                  <xs:annotation>
                                    <xs:documentation>
                                      Als opgegeven, krijgt de werknemer reiskostenvergoeding over 2x deze afstand (in km)
                                    </xs:documentation>
                                  </xs:annotation>
                                  <xs:simpleType>
                                    <xs:restriction base="xs:decimal">
                                      <xs:minExclusive value="0"/>
                                      <xs:fractionDigits value="1"/>
                                    </xs:restriction>
                                  </xs:simpleType>
                                </xs:element>
                                <xs:element name="AfstandWoonWerkMethode" minOccurs="0">
                                  <xs:annotation>
                                    <xs:documentation>
                                      Optionele methode voor de verloning van het aantal kilometers woon-werkverkeer
                                    </xs:documentation>
                                  </xs:annotation>
                                  <xs:simpleType>
                                    <xs:restriction base="xs:string">
                                      <xs:enumeration value="ns"/>
                                    </xs:restriction>
                                  </xs:simpleType>
                                </xs:element>
                              </xs:sequence>
                              <xs:element name="PraktischeRegeling" minOccurs="0">
                                <xs:annotation>
                                  <xs:documentation>Bereken reiskosten volgens 'praktische regeling'</xs:documentation>
                                </xs:annotation>
                                <xs:complexType>
                                  <xs:sequence>
                                    <xs:element name="ThuiswerkDagen" minOccurs="0">
                                      <xs:annotation>
                                        <xs:documentation>
                                          Aantal dagen per week dat de werknemer thuis werkt (0-4)
                                        </xs:documentation>
                                      </xs:annotation>
                                      <xs:simpleType>
                                        <xs:restriction base="xs:nonNegativeInteger">
                                          <xs:minInclusive value="0"/>
                                          <xs:maxInclusive value="4"/>
                                        </xs:restriction>
                                      </xs:simpleType>
                                    </xs:element>
                                  </xs:sequence>
                                </xs:complexType>
                              </xs:element>
                            </xs:sequence>
                            <xs:element name="ReiskostenPerPeriode" type="PositiefBedragType">
                              <xs:annotation>
                                <xs:documentation>Vaste reiskostenvergoeding per periode</xs:documentation>
                              </xs:annotation>
                            </xs:element>
                            <xs:element name="ReiskostenPerDag" type="PositiefBedragType">
                              <xs:annotation>
                                <xs:documentation>Reiskostenvergoeding per dag</xs:documentation>
                              </xs:annotation>
                            </xs:element>
                          </xs:choice>
                          <!-- Einde Vaste reiskosten -->
                          <!-- Prive gebruik auto -->
                          <xs:element name="PrivegebruikAuto" minOccurs="0" maxOccurs="unbounded">
                            <xs:annotation>
                              <xs:documentation>
                                Gegevens over het privégebruik van een of meer auto's, zoals bijtelling en eigen bijdrage
                              </xs:documentation>
                            </xs:annotation>
                            <xs:complexType>
                              <xs:sequence>
                                <xs:element name="Kenteken">
                                  <xs:annotation>
                                    <xs:documentation>
                                      Kenteken van de auto. Moet uniek zijn voor dit dienstverband!
                                    </xs:documentation>
                                  </xs:annotation>
                                  <xs:simpleType>
                                    <xs:restriction base="xs:string">
                                      <xs:length value="8"/>
                                    </xs:restriction>
                                  </xs:simpleType>
                                </xs:element>
                                <xs:choice>
                                  <xs:annotation>
                                    <xs:documentation>
                                      Bijtelling met optionele eigen bijdrage OF alleen een eigen bijdrage (zonder bijtelling)
                                    </xs:documentation>
                                  </xs:annotation>
                                  <xs:sequence>
                                    <xs:element name="Cataloguswaarde" type="PositiefGeheelBedragType">
                                      <xs:annotation>
                                        <xs:documentation>Cataloguswaarde van de auto</xs:documentation>
                                      </xs:annotation>
                                    </xs:element>
                                    <xs:element name="PercentageBijtelling">
                                      <xs:annotation>
                                        <xs:documentation>Bijtelling in procenten</xs:documentation>
                                      </xs:annotation>
                                      <xs:simpleType>
                                        <xs:restriction base="xs:string">
                                          <xs:enumeration value="14"/>
                                          <xs:enumeration value="20"/>
                                          <xs:enumeration value="25"/>
                                        </xs:restriction>
                                      </xs:simpleType>
                                    </xs:element>
                                    <xs:element name="EigenBijdrage" type="PositiefBedragType" minOccurs="0">
                                      <xs:annotation>
                                        <xs:documentation>
                                          Eigen bijdrage van de werknemer. Indien niet opgegeven: geen bijdrage
                                        </xs:documentation>
                                      </xs:annotation>
                                    </xs:element>
                                  </xs:sequence>
                                  <xs:element name="EigenBijdrage" type="PositiefBedragType">
                                    <xs:annotation>
                                      <xs:documentation>Eigen bijdrage van de werknemer zonder bijtelling</xs:documentation>
                                    </xs:annotation>
                                  </xs:element>
                                </xs:choice>
                                <xs:element name="PercentageGebruik" type="PositiefPercentageType" minOccurs="0">
                                  <xs:annotation>
                                    <xs:documentation>
                                      Percentage dat werknemer gebruik maakt van auto. Indien niet opgegeven: 100%
                                    </xs:documentation>
                                  </xs:annotation>
                                </xs:element>
                                <xs:element name="EersteDag" type="xs:date" minOccurs="0">
                                  <xs:annotation>
                                    <xs:documentation>
                                      Eerste dag van gebruik door werknemer. Indien niet opgegeven: voor de start van de loonperiode
                                    </xs:documentation>
                                  </xs:annotation>
                                </xs:element>
                                <xs:element name="LaatsteDag" type="xs:date" minOccurs="0">
                                  <xs:annotation>
                                    <xs:documentation>
                                      Laatste dag van gebruik door werknemer. Indien niet opgegeven: na laatste dag van de loonperiode.
                                    </xs:documentation>
                                  </xs:annotation>
                                </xs:element>
                              </xs:sequence>
                            </xs:complexType>
                          </xs:element>
                          <!-- Einde prive gebruik auto -->
                          <!-- Uitkering UWV -->
                          <xs:choice minOccurs="0">
                            <xs:annotation>
                              <xs:documentation>Utkering UWV of doorbetaaldloonregeling</xs:documentation>
                            </xs:annotation>
                            <xs:element name="UitkeringUWV">
                              <xs:annotation>
                                <xs:documentation>
                                  Gegevens van een directe of gecedeerde uitkering van UWV
                                </xs:documentation>
                              </xs:annotation>
                              <xs:complexType>
                                <xs:choice>
                                  <xs:choice>
                                    <xs:element name="Direct">
                                      <xs:annotation>
                                        <xs:documentation>
                                          Gegevens van de directe uitkering van UWV aan de werknemer
                                        </xs:documentation>
                                      </xs:annotation>
                                      <xs:complexType>
                                        <xs:sequence>
                                          <xs:element name="BrutoUitkering" type="PositiefBedragType"/>
                                          <xs:element name="Loonheffing" type="PositiefBedragType" minOccurs="0">
                                            <xs:annotation>
                                              <xs:documentation>Loonheffing inbegrepen in uitkering</xs:documentation>
                                            </xs:annotation>
                                          </xs:element>
                                        </xs:sequence>
                                      </xs:complexType>
                                    </xs:element>
                                    <xs:element name="Gecedeerd" type="PositiefBedragType">
                                      <xs:annotation>
                                        <xs:documentation>Het (bruto) bedrag van de gecedeerde uitkering</xs:documentation>
                                      </xs:annotation>
                                    </xs:element>
                                  </xs:choice>
                                  <xs:choice>
                                    <xs:element name="PercentageArbeidsongeschikt" type="PercentageType" minOccurs="0">
                                      <xs:annotation>
                                        <xs:documentation>Optioneel arbeidsongeschiktheidspercentage</xs:documentation>
                                      </xs:annotation>
                                    </xs:element>
                                  </xs:choice>
                                </xs:choice>
                              </xs:complexType>
                            </xs:element>
                            <xs:element name="DoorbetaaldLoon" type="PositiefBedragType">
                              <xs:annotation>
                                <xs:documentation>Het loon voor de 'doorbetaaldloonregeling'</xs:documentation>
                              </xs:annotation>
                            </xs:element>
                          </xs:choice>
                          <!-- Einde uitkering UWV -->
                          <!-- eind uitbreiding dv -->
                        </xs:sequence>
                      </xs:complexType>
                    </xs:element>
                    <!-- dienstverband -->
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <!-- werknemer -->
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <!-- werkgever -->
      </xs:sequence>
      <xs:attribute name="VersieNummer" use="required">
        <xs:simpleType>
          <xs:restriction base="xs:token">
            <xs:enumeration value="1.0"/>
            <xs:enumeration value="3.0"/>
            <xs:enumeration value="3.1"/>
            <xs:enumeration value="3.2"/>
            <xs:enumeration value="4.0"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <!-- type declaraties -->
  <xs:simpleType name="AchternaamType">
    <xs:restriction base="xs:string">
      <xs:maxLength value="35"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="NaamType">
    <xs:restriction base="xs:string">
      <xs:maxLength value="20"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="VoorvoegselType">
    <xs:restriction base="xs:string">
      <xs:maxLength value="9"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="VoorlettersType">
    <xs:restriction base="xs:string">
      <xs:maxLength value="6"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="EmailType">
    <xs:restriction base="xs:string">
      <xs:pattern value=""/>
      <xs:pattern value="[a-zA-Z0-9_\.\-]+@[a-zA-Z0-9_\-\.]+\.[a-zA-Z0-9]{2,4}"/>
      <xs:maxLength value="80"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="StraatType">
    <xs:restriction base="xs:string">
      <xs:maxLength value="25"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="HuisnummerType">
    <xs:restriction base="xs:decimal">
      <xs:totalDigits value="5"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="PostcodeType">
    <xs:restriction base="xs:string">
      <xs:minLength value="0"/>
      <xs:maxLength value="9"/>
    </xs:restriction>
    <!--
voor nederland <xs:restriction base="xs:string"> <xs:pattern value="([1-9][0-9]{3}[A-Z]{2}){0,1}"/> </xs:restriction>
-->
  </xs:simpleType>
  <xs:simpleType name="WoonplaatsType">
    <xs:restriction base="xs:string">
      <xs:maxLength value="24"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="LandType">
    <xs:restriction base="xs:string">
      <xs:maxLength value="50"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="NationaliteitType">
    <xs:restriction base="xs:string">
      <xs:maxLength value="50"/>
    </xs:restriction>
  </xs:simpleType>
  <!--
als deze op en wordt gezet komt er een engelstalige loonstrook
-->
  <xs:simpleType name="TaalType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="nl"/>
      <xs:enumeration value="en"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="Tijd">
    <xs:restriction base="xs:string">
      <xs:pattern value="(([01]\d|2[0-3]):[0-5]\d:[0-5]\d|24:00:00)"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="TelefoonType">
    <xs:restriction base="xs:string">
      <xs:pattern value="(\s*(\+|00)\d{2}(\s|-)?|0){1}([1-9])(\s|-)?(\d(\s|-)?){8,11}|\d{0}"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="Bedrag9.2">
    <xs:restriction base="xs:decimal">
      <xs:totalDigits value="9"/>
      <xs:fractionDigits value="2"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="KeyType">
    <xs:restriction base="xs:string">
      <xs:pattern value="(WnSleutel|Sofi){1}"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="SleutelType">
    <xs:restriction base="xs:string">
      <xs:maxLength value="30"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="DVSleutelType">
    <xs:restriction base="xs:decimal">
      <xs:totalDigits value="9"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="PersnrType">
    <xs:restriction base="xs:string">
      <xs:minLength value="0"/>
      <xs:maxLength value="9"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="SofinrType">
    <xs:restriction base="xs:string">
      <xs:pattern value="(\d{0}|\d{9})"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="AanwezigOfNietType">
    <xs:restriction base="xs:string">
      <xs:pattern value="(true){0,1}"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="BurgStaatType">
    <xs:restriction base="xs:string">
      <xs:pattern value="(O|G|D|S|P){0,1}"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="GeslachtType">
    <xs:restriction base="xs:string">
      <xs:pattern value="M|V|X|\d{0}"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="DateOptional">
    <xs:restriction base="xs:string">
      <xs:pattern value="\d{4}-[0-1]\d{1}-[0-3]\d{1}|\d{0}"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UrenperdagType">
    <xs:restriction base="xs:decimal">
      <xs:totalDigits value="4"/>
      <xs:fractionDigits value="2"/>
      <xs:maxExclusive value="24"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="UurType">
    <xs:restriction base="xs:decimal">
      <xs:totalDigits value="5"/>
      <xs:fractionDigits value="2"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="DagenType">
    <xs:restriction base="xs:decimal">
      <xs:totalDigits value="5"/>
      <xs:fractionDigits value="2"/>
      <xs:maxExclusive value="92"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="PeriodeType">
    <xs:restriction base="xs:string">
      <xs:pattern value="D|W|V|M|K|J|\d{0}"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="PeriodeNrType">
    <xs:restriction base="xs:decimal">
      <xs:totalDigits value="3"/>
      <xs:maxExclusive value="365"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="RekeningNrType">
    <xs:restriction base="xs:string">
      <xs:pattern value="([A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30})|([0-9]{3,10})"/>
    </xs:restriction>
  </xs:simpleType>
  <!-- uitbreiding types -->
  <xs:complexType name="RekeningType">
    <xs:annotation>
      <xs:documentation>
        (Binnenlandse) rekening voor betalingen incl. eventuele tenaamstelling.
        Nu ook met IBAN (of oud rekeningnummer)
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Nummer">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:pattern value="([A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30})|([0-9]{3,10})"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="BIC" minOccurs="0">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:pattern value="([A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1})"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="Naam" minOccurs="0">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:minLength value="1"/>
            <xs:maxLength value="35"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="Plaats" minOccurs="0">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:minLength value="1"/>
            <xs:maxLength value="35"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="Kenmerk" minOccurs="0">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:minLength value="1"/>
            <xs:maxLength value="16"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="IdentiteitsbewijsType">
    <xs:annotation>
      <xs:documentation>
        Identiteisbewijs is altijd een set van en omschrijving en een datum
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Omschrijving">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:minLength value="1"/>
            <xs:maxLength value="60"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="GeldigTM" >
        <xs:simpleType>
          <xs:restriction base="xs:date" />
        </xs:simpleType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>
  <xs:simpleType name="PositiefBedragType">
    <xs:annotation>
      <xs:documentation>Positief bedrag in euro's en centen</xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:decimal">
      <xs:fractionDigits value="2"/>
      <xs:totalDigits value="10"/>
      <xs:minExclusive value="0"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="PositiefPercentageType">
    <xs:annotation>
      <xs:documentation>Positief percentage</xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:decimal">
      <xs:fractionDigits value="5"/>
      <xs:minExclusive value="0"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="PositiefGeheelBedragType">
    <xs:annotation>
      <xs:documentation>Positief bedrag in hele euro's</xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:decimal">
      <xs:fractionDigits value="0"/>
      <xs:totalDigits value="10"/>
      <xs:minExclusive value="0"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:complexType name="ComponentType">
    <xs:annotation>
      <xs:documentation>
        Looncomponent met percentage of bedrag, per dag/periode
      </xs:documentation>
    </xs:annotation>
    <xs:choice>
      <xs:annotation>
        <xs:documentation>Bedrag OF percentage</xs:documentation>
      </xs:annotation>
      <xs:element name="Bedrag" type="Bedrag9.2"/>
      <xs:element name="Percentage" type="PercentageType"/>
    </xs:choice>
    <xs:attribute name="per" use="optional">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="dag"/>
          <xs:enumeration value="periode"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="incidenteel" type="xs:boolean" use="optional"/>
  </xs:complexType>
  <xs:complexType name="BrutoComponentType">
    <xs:annotation>
      <xs:documentation>
        Looncomponent met percentage of bedrag, per dag/uur/periode, mogelijk netto (gebruteerd)
      </xs:documentation>
    </xs:annotation>
    <xs:choice>
      <xs:annotation>
        <xs:documentation>Bedrag OF percentage</xs:documentation>
      </xs:annotation>
      <xs:element name="Bedrag" type="Bedrag9.2"/>
      <xs:element name="Percentage" type="PercentageType"/>
    </xs:choice>
    <xs:attribute name="gebruteerd" type="xs:boolean" use="optional"/>
    <xs:attribute name="per" use="optional">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="dag"/>
          <xs:enumeration value="uur"/>
          <xs:enumeration value="periode"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="incidenteel" type="xs:boolean" use="optional"/>
  </xs:complexType>
  <xs:simpleType name="PercentageType">
    <xs:annotation>
      <xs:documentation>
        Percentage. Geen maximum of minimum, wel maximaal 5 cijfers achter de komma
      </xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:decimal">
      <xs:fractionDigits value="5"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="RedenUitdienstType">
    <xs:annotation>
      <xs:documentation>
        De code reden uitdienst volgens de belastingdienst. De import weigert vervallen code's
      </xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:string">
      <xs:maxLength value="3"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="ReismethodeType">
    <xs:annotation>
      <xs:documentation>Methode voor reis</xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:string">
      <xs:enumeration value="fiets"/>
      <xs:enumeration value="scooter"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="BerekeningsMethodeType">
    <xs:annotation>
      <xs:documentation>Methode voor berekening default is bruto</xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:string">
      <xs:enumeration value="Bruto"/>
      <xs:enumeration value="Netto"/>
      <xs:enumeration value="KostenWerkgever"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="AfwezigheidType">
    <xs:annotation>
      <xs:documentation>Soorten afwezigheid</xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:string">
      <!--Ziekte = 0-->
      <xs:enumeration value="Verzuim – Ziekte"/>
      <!--OnbetaaldVerlof = 11-->
      <!--Deze is oud-->
      <xs:enumeration value="Verzuim – Onbetaald verlof"/>
      <!--Gebruik daarom deze nieuwe -->
      <xs:enumeration value="Verzuim – Onbetaaldverlof"/>
      
      <!--Deze is oud-->
      <xs:enumeration value="Verzuim – Artsenbezoek"/>
      <!--Gebruik daarom deze nieuwe -->
      <xs:enumeration value="Verzuim – Artsbezoek"/>

      <!--Deze is oud en wordt gekoppeld aan OuderschapsVerlof17weken-->
      <!--OuderschapsVerlof17weken = 20-->
      <xs:enumeration value="Verzuim – Ouderschapsverlof"/>
      <!--SeniorenVerlof = 21-->
      <xs:enumeration value="Verzuim – Seniorenverlof"/>

      <!--KortdurendZorgVerlof = 22-->
      <xs:enumeration value="Verzuim – KortdurendZorgverlof"/>
      <!--LangdurendZorgverlof = 35-->
      <xs:enumeration value="Verzuim – LangdurendZorgverlof"/>
      <!--ZwangerschapsVerlof = 23-->
      <xs:enumeration value="Verzuim – Zwangerschapsverlof"/>

      <!--Deze is oud en wordt gekoppeld aan GeboorteVerlof2weken = 24-->
      <xs:enumeration value="Verzuim – Aanv.geboorteverlof"/>

      <!--Adoptieverlof = 30-->
      <xs:enumeration value="Verzuim – Adoptieverlof"/>
      <!--Ambtsjubileum = 31-->
      <xs:enumeration value="Verzuim – Ambtsjubileum"/>
      <!--CalamiteitenVerlof = 26-->
      <xs:enumeration value="Verzuim – Calamiteitenverlof"/>
      <!--Examenverlof = 32-->
      <xs:enumeration value="Verzuim – Examenverlof"/>
      <!--Familieomstandigheden = 2-->
      <xs:enumeration value="Verzuim – Familieomstandigheden"/>
      <!--FeestdagenVerlof = 28-->
      <xs:enumeration value="Verzuim – Feestdagen"/>
      <!--GeboorteVerlof1week = 33-->
      <xs:enumeration value="Verzuim – GeboorteVerlof1week"/>
      <!--GeboorteVerlof2weken = 24-->
      <xs:enumeration value="Verzuim – GeboorteVerlofVanafWeek2"/>
      <!--Huwelijkverlof = 34-->
      <xs:enumeration value="Verzuim – Huwelijkverlof"/>
      <!--OuderschapsVerlof17weken = 20-->
      <xs:enumeration value="Verzuim – OuderschapsVerlof17weken"/>
      <!--OuderschapsVerlof9weken = 25-->
      <xs:enumeration value="Verzuim – OuderschapsVerlof9weken"/>
      <!--Uitvaartverlof = 36-->
      <xs:enumeration value="Verzuim – Uitvaartverlof"/>
      <!--Vakbondsactiviteit = 37-->
      <xs:enumeration value="Verzuim – Vakbondsactiviteit"/>
      <!--Verhuisverlof = 38-->
      <xs:enumeration value="Verzuim – Verhuisverlof"/>

      <!--Vakantie = 0-->
      <xs:enumeration value="Verlof – Vakantie"/>
      <!--Roostervrij = 1-->
      <xs:enumeration value="Verlof – Roostervrij"/>
      <!--Snipper = 2-->
      <xs:enumeration value="Verlof – Snipper"/>
      <!--ADV = 3-->
      <xs:enumeration value="Verlof – ADV"/>
      <!--TijdspaarfondsVerlof = 11-->
      <xs:enumeration value="Verlof – Tijdspaarfonds"/>
      <!--TijdspaarfondsSparen = 12-->
      <xs:enumeration value="Verlof – TSF Spaaruren"/>
      <!--PKB = 13-->
      <xs:enumeration value="Verlof – PKB"/>
      <!--BovenwettelijkVerlof = 23-->
      <xs:enumeration value="Verlof – BovenwettelijkVerlof"/>
      <!--TijdVoorTijdVerlof = 24-->
      <xs:enumeration value="Verlof – TijdVoorTijdVerlof"/>
    </xs:restriction>
  </xs:simpleType>
  <!-- Einde uitbreiding types -->
</xs:schema>