<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<xsd:schema xmlns:curr="http://www.currenda.pl/epu" xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.currenda.pl/epu" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0" xml:lang="pl">
  <xsd:include schemaLocation="TypyDanych.xsd"/>
  <xsd:element name="PaczkaPismKomorniczych">
    <xsd:complexType>
      <xsd:annotation>
        <xsd:documentation>Paczka pism komorniczych</xsd:documentation>
      </xsd:annotation>
      <xsd:sequence>
        <xsd:element name="DokumentEPU" type="curr:DokumentEPU" maxOccurs="unbounded">
        </xsd:element>
      </xsd:sequence>
      <xsd:attribute name="OznaczeniePaczki" type="curr:typNazwa30" use="required" >        
      </xsd:attribute>
    </xsd:complexType>
  </xsd:element>
  <xsd:complexType name="DokumentEPU">
    <xsd:annotation>
      <xsd:documentation>Dokument / Pismo / Wniosek w elektronicznym postępowaniu upominawczym </xsd:documentation>
    </xsd:annotation>
      <xsd:sequence>
        <xsd:element name="IDSprawy" type="xsd:unsignedLong" />
        <xsd:element name="Sygnatura" type="curr:typNazwa120" />
        <xsd:element name="SygnaturaSprawyKomorniczej" type="curr:typNazwa120" minOccurs="0" />
        <xsd:element name="IDDoreczenia" type="xsd:unsignedLong" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation>Identyfikator doręczenia odpisu decyzji. Składany dokument stanowi odpowiedź  na doręczenie o podanym IDDoreczenia. Wymagane dla rodzaju = 5 </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="NazwaKancelarii" type="curr:typNazwa500" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation>Nazwa kancelarii jest obowiązkowa dla pism komorniczych oraz odpowiedzi na zarządzenie.</xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="IdentyfikatorPisma" type="curr:typNazwa300" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation> Identyfikator pisma komorniczego. Wymagane dla odpowiedzi na zarządzenie, pisma lub wniosku komorniczego</xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="IdentyfikatorTytuluWykonawczego" type="xsd:unsignedLong" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation>Identyfikator tytułu wykonawczego wymagany dla pisma i wniosku komorniczego</xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="WersjaTransformaty" type="xsd:unsignedLong" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation>Identyfikator doręczenia odpisu decyzji. Składany dokument stanowi odpowiedź  na doręczenie o podanym IDDoreczenia. Wymagane dla rodzaju = 5 </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="PESELPelnomocnika" type="curr:typPESEL" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation>W przypadku składania dokumentu z rezygnacją z pełnomocnictwa można podać PESEL nowego pełnomocnika. Pole nieobowiązkowe.</xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="IDKancelarii" type="xsd:unsignedLong" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation>W przypadku składania dokumentu przez komornika musi zawierać on ID kancelarii w EPU.</xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="Odpowiedz" type="curr:typOdpowiedz" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation>Typ odpowiedz nie może być obowiązkowy gdyż komornik może złożyć również dowolne pismo.</xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="DataZlozenia" type="xsd:dateTime" />
        <xsd:element name="Rodzaj" type="curr:typWybor3_6">
          <xsd:annotation>
            <xsd:documentation>
				3 - pismo,
				4 - wniosek,
				5 - uzupełnienie adresu,
				6 - uzupełnienie braków,
				13 - rezygnacja z pełnomocnictwa,
				14 - zgłoszenie pełnomocnika do sprawy,
				16 - wniosek o wydanie dalszego tytułu wykonawczego,
				17 - wniosek o sprostowanie,
				18 - wniosek o udzielenie kodu dostępu,
				19 - wniosek o reasumpcję,
				21 - cofnięcie powództwa w całości,
				38 - Wniosek o uzasadnienie decyzji Sądu Rejonowego,
				127 - Wniosek o uzasadnienie decyzji Sądu Okręgowego Okręgowego,
				51 - informacja o wszczęciu egzekucji.
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="Przedmiot" type="xsd:string" minOccurs="0" />
        <xsd:element name="OsobaSkladajaca" type="curr:typSkladajacy" minOccurs="0" />
        <xsd:element name="ListaPowodow" type="curr:typListaPowodow" minOccurs="0" />
        <xsd:element name="ListaPozwanych" type="curr:typListaPozwanych" minOccurs="0" />
        <xsd:element name="Tresc" type="xsd:string" nillable="true" minOccurs="0" />
		<xsd:element name="Orzeczenie" type="curr:typOrzeczenie" minOccurs="0">
			<xsd:annotation>
				<xsd:documentation>
					Orzeczenie, dla którego jest składany wniosek o uzasadnienie
				</xsd:documentation>
			</xsd:annotation>
		</xsd:element>
		<xsd:element name="CzyZwolnionyOplat" minOccurs="0">
			<xsd:simpleType>
				<xsd:annotation>
					<xsd:documentation>
						Zwolniony z opłaty za uzasadnienie 0 - nie,  1 - tak powód, 2 - tak pozwany
					</xsd:documentation>
				</xsd:annotation>
				<xsd:restriction base="xsd:byte">
					<xsd:maxInclusive value="2" />
				</xsd:restriction>
			</xsd:simpleType>
		</xsd:element>		
      </xsd:sequence>
    </xsd:complexType>
  <xsd:simpleType name="typStatusOdbiorcy">
    <xsd:restriction base="xsd:string">
      <xsd:enumeration value="dorosły domownik" />
      <xsd:enumeration value="dozorca domu" />
      <xsd:enumeration value="sołtys" />
      <xsd:enumeration value="administracja domu" />
      <xsd:enumeration value="doręczenie nastąpiło w inny sposób" />
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:complexType name="typOdpowiedz">
    <xsd:choice>
      <xsd:element name="OdpowiedzDoreczono" type="curr:typOdpowiedzDoreczono" />
      <xsd:element name="OdpowiedzNiedoreczono" type="curr:typOdpowiedzNiedoreczono" />
      <xsd:element name="OdpowiedzInna" type="curr:typOdpowiedzInna" />
    </xsd:choice>
  </xsd:complexType>
  <xsd:complexType name="typOdpowiedzDoreczono">
    <xsd:sequence>
      <xsd:element name="AdresatWysylki" type="curr:typAdresatOdpowiedzKomornikaZarzadzenia" />
      <xsd:element name="DataDoreczenia" type="xsd:date" />
      <xsd:element name="SposobDoreczenia" type="curr:typSposobDoreczenia" />
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="typOdpowiedzNiedoreczono">
    <xsd:sequence>
      <xsd:element name="AdresatWysylki" type="curr:typAdresatOdpowiedzKomornikaZarzadzenia" />
      <xsd:element name="SposobNiedoreczenia" type="curr:typSposobNiedoreczenia" />
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="typOdpowiedzInna">
    <xsd:sequence>
      <xsd:element name="Tresc" type="xsd:string" />
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="typAdresatOdpowiedzKomornikaZarzadzenia">
    <xsd:sequence>
      <xsd:element name="NazwaAdresata" type="xsd:string" />
      <xsd:element name="AdresWysylki" type="curr:typAdresSzczegoly" />
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="typSposobDoreczenia">
    <xsd:choice>
      <xsd:element name="DoreczenieOsobiste" type="curr:typTak">
        <xsd:annotation>
          <xsd:documentation>Przesyłkę doręczono / Adresatowi osobiście</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="DoreczenieOsobieUprawnionejDoOdbioru" type="curr:typDoreczenieOsobieUprawnionejDoOdbioru">
        <xsd:annotation>
          <xsd:documentation>Przesyłkę doręczono / Osobie uprawnionej do odbioru</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="OdbiorDluznikaPlacowka" type="curr:typTak">
        <xsd:annotation>
          <xsd:documentation>Przesyłkę doręczono / Przesyłka uprzednio awizowana i odebrana przez dłużnika</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:choice>
  </xsd:complexType>
  <xsd:complexType name="typDoreczenieOsobieUprawnionejDoOdbioru">
    <xsd:sequence>
      <xsd:element name="Imie" type="xsd:string">
        <xsd:annotation>
          <xsd:documentation>Rozważyć ograniczenie długości, aby było zgodne ze schematem bazy danych, jeśli doszłoby do sytuacji, iż wymagany jest zapis poszczególnych poł XML w bazie.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="Nazwisko" type="xsd:string">
        <xsd:annotation>
          <xsd:documentation>Rozważyć ograniczenie długości, aby było zgodne ze schematem bazy danych, jeśli doszłoby do sytuacji, iż wymagany jest zapis poszczególnych poł XML w bazie.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="innySposob" type="xsd:string" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation>Należy uzupełnić w przypadku innego sposobu doręczenia</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
    <xsd:attribute name="statusOdbiorcy" type="curr:typStatusOdbiorcy" use="required" />
  </xsd:complexType>
  <xsd:complexType name="typSposobNiedoreczenia">
    <xsd:choice>
      <xsd:element name="Inny" type="curr:typInnySposobNiedoreczenia">
        <xsd:annotation>
          <xsd:documentation>Przesyłka niedoręczona (inna niż dwukrotnie awizowana i zwrócona)</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="NiedoreczenieAwizoZwrot" type="curr:typSposobNiedoreczeniaAwizoZwrot">
        <xsd:annotation>
          <xsd:documentation> Przesyłka niedoręczona (dwukrotnie awizowana i zwrócona)</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:choice>
  </xsd:complexType>
  <xsd:complexType name="typInnySposobNiedoreczenia">
    <xsd:sequence>
      <xsd:group ref="curr:grupaDatyAwizowania" />
      <xsd:element name="PrzyczynaNiedoreczenia" type="xsd:string" />
      <xsd:element name="DataZwrotu" type="xsd:date" minOccurs="1"/>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="typSposobNiedoreczeniaAwizoZwrot">
    <xsd:sequence>
      <xsd:group ref="curr:grupaDatyAwizowania" />
      <xsd:element name="PrzyczynaNiepodjecia" type="xsd:string" />
      <xsd:element name="DataZwrotu" type="xsd:date" minOccurs="1" />
    </xsd:sequence>
  </xsd:complexType>
  <xsd:group name="grupaDatyAwizowania">
    <xsd:sequence>
      <xsd:element name="DataAwizo1" type="xsd:date" minOccurs="0" />
      <xsd:element name="DataAwizo2" type="xsd:date" minOccurs="0" />
    </xsd:sequence>
  </xsd:group>
  <xsd:complexType name="typAdresSzczegoly">
    <xsd:annotation>
      <xsd:documentation>Definicja adresu zamieszkania lub siedziby</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="Ulica" type="curr:typUlica" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation>Nazwa ulicy</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="NrDomu" type="curr:typNumerDomuLubMieszkania" minOccurs="1">
        <xsd:annotation>
          <xsd:documentation>Numer domu</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="NrMieszkania" type="curr:typNumerDomuLubMieszkania" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation>Numer mieszkania</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="Miejscowosc" type="curr:typMiejscowosc" minOccurs="1">
        <xsd:annotation>
          <xsd:documentation>Miejscowość</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="KodPocztowy" type="curr:typKodPocztowy" minOccurs="1" >
        <xsd:annotation>
          <xsd:documentation>Kod pocztowy zgodny ze wzorcem</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="Poczta" type="curr:typPoczta" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation>Poczta</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:simpleType name="typTak">
    <xsd:restriction base="xsd:string">
      <xsd:enumeration value="tak" />
      <xsd:enumeration value="TAK" />
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="typNazwa500">
    <xsd:annotation>
      <xsd:documentation>Definicja nazwy do 500 znaków</xsd:documentation>
    </xsd:annotation>
    <xsd:restriction base="xsd:string">
      <xsd:maxLength value="500" />
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="typUlica">
    <xsd:restriction base="xsd:string">
      <xsd:pattern value="[a-zA-ZŁłŻżŹźÓóŚśĆćŃńĄąĘę0-9\\\/ \-]{1,50}"/>
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="typMiejscowosc">
    <xsd:restriction base="xsd:string">
      <xsd:pattern value="[a-zA-ZŁłŻżŹźÓóŚśĆćŃńĄąĘę \-]{1,50}"/>
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="typNumerDomuLubMieszkania">
    <xsd:restriction base="xsd:string">
      <xsd:pattern value="[a-zA-ZŁłŻżŹźÓóŚśĆćŃńĄąĘę0-9\\\/ \-]{1,6}"/>
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="typPoczta">
    <xsd:restriction base="xsd:string">
      <xsd:pattern value="[a-zA-ZŁłŻżŹźÓóŚśĆćŃńĄąĘę0-9 \-]{1,50}"/>
    </xsd:restriction>
  </xsd:simpleType>
</xsd:schema>