<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">

  <xs:element name="ds1">
    <xs:annotation>
      <xs:documentation>D-S1 : Karta statystyczna dotycząca prawomocnego orzeczenia separacji / zniesienia separacji</xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:sequence>
        <xs:element name="zapis" maxOccurs="unbounded">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="siedzs">
                <xs:annotation>
                  <xs:documentation>Siedziba sądu</xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                  <xs:restriction base="xs:string">
                    <xs:length value="8"/>
                    <xs:pattern value="[0-9]{7}[O,R,A,S, ]"/>
                  </xs:restriction>
                </xs:simpleType>
              </xs:element>
              <xs:element name="sygn">
                <xs:annotation>
                  <xs:documentation>Sygnatura (symbol akt sprawy)</xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                  <xs:restriction base="xs:string">
                    <xs:length value="11"/>
					  <xs:pattern value="(0[1-9]|[1-9][0-9])--C(000[1-9]|[0-9]{2}[1-9][0-9]|[0-9][1-9][0-9]{2}|[1-9][0-9]{3})[0-9]{2}" />
					  <xs:pattern value="(0[1-9]|[1-9][0-9])-RC(000[1-9]|[0-9]{2}[1-9][0-9]|[0-9][1-9][0-9]{2}|[1-9][0-9]{3})[0-9]{2}" />
					  <xs:pattern value="(0[1-9]|[1-9][0-9])-NS(000[1-9]|[0-9]{2}[1-9][0-9]|[0-9][1-9][0-9]{2}|[1-9][0-9]{3})[0-9]{2}" />
					  <xs:pattern value="(0[1-9]|[1-9][0-9])RNS(000[1-9]|[0-9]{2}[1-9][0-9]|[0-9][1-9][0-9]{2}|[1-9][0-9]{3})[0-9]{2}" />
                  </xs:restriction>
                </xs:simpleType>
              </xs:element>
              <xs:element name="dz">
                <xs:annotation>
                  <xs:documentation>Dział (1 - orzeczenie separacji / 2 - zniesienie separacji)</xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                  <xs:restriction base="xs:string">
                    <xs:length value="1"/>
                    <xs:pattern value="1|2"/>
                  </xs:restriction>
                </xs:simpleType>
              </xs:element>
              <xs:element name="dsep1">
                <xs:annotation>
                  <xs:documentation>Data orzeczenia separacji / zniesienia separacji</xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                  <xs:restriction base="xs:date"/>
                </xs:simpleType>
              </xs:element>
              <xs:element name="dsep2">
                <xs:annotation>
                  <xs:documentation>Data wniesienia powództwa / orzeczenia separacji</xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                  <xs:restriction base="xs:date"/>
                </xs:simpleType>
              </xs:element>
              <xs:element name="dmal">
                <xs:annotation>
                  <xs:documentation>Data zawarcia małżeństwa</xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                  <xs:restriction base="xs:date"/>
                </xs:simpleType>
              </xs:element>
              <xs:element name="pow">
                <xs:annotation>
                  <xs:documentation>Kto wniósł powództwo</xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                  <xs:restriction base="xs:string">
                    <xs:length value="1"/>
                    <xs:pattern value="1|2|3"/>
                  </xs:restriction>
                </xs:simpleType>
              </xs:element>
              <xs:element name="win">
                <xs:annotation>
                  <xs:documentation>Z czyjej winy orzeczono separację</xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                  <xs:restriction base="xs:string">
                    <xs:length value="1"/>
                    <xs:pattern value="1|2|3|4"/>
                  </xs:restriction>
                </xs:simpleType>
              </xs:element>
              <xs:element name="zgo">
                <xs:annotation>
                  <xs:documentation>Jeśli separację orzeczono z winy powoda, to:</xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                  <xs:restriction base="xs:string">
                    <xs:length value="1"/>
                    <xs:pattern value="1|2|3"/>
                  </xs:restriction>
                </xs:simpleType>
              </xs:element>
              <xs:element name="przy">
                <xs:annotation>
                  <xs:documentation>Przyczyny rozkadu pożycia małżeńskiego</xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                  <xs:restriction base="xs:string">
                    <xs:length value="3"/>
                    <xs:pattern value="[0-9,N][0-9,N][0-9,N]"/>
                  </xs:restriction>
                </xs:simpleType>
              </xs:element>
              <xs:element name="ld">
                <xs:annotation>
                  <xs:documentation>Liczba dzieci</xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                  <xs:restriction base="xs:integer">
                    <xs:minInclusive value="0"/>
                    <xs:maxInclusive value="99"/>
                  </xs:restriction>
                </xs:simpleType>
              </xs:element>
              <xs:element name="dur1" minOccurs="0">
                <xs:annotation>
                  <xs:documentation>Data urodzenia 1 dziecka</xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                  <xs:restriction base="xs:date"/>
                </xs:simpleType>
              </xs:element>
              <xs:element name="dur2" minOccurs="0">
                <xs:annotation>
                  <xs:documentation>Data urodzenia 2 dziecka</xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                  <xs:restriction base="xs:date"/>
                </xs:simpleType>
              </xs:element>
              <xs:element name="dur3" minOccurs="0">
                <xs:annotation>
                  <xs:documentation>Data urodzenia 3 dziecka</xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                  <xs:restriction base="xs:date"/>
                </xs:simpleType>
              </xs:element>
              <xs:element name="dur4" minOccurs="0">
                <xs:annotation>
                  <xs:documentation>Data urodzenia 4 dziecka</xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                  <xs:restriction base="xs:date"/>
                </xs:simpleType>
              </xs:element>
              <xs:element name="dur5" minOccurs="0">
                <xs:annotation>
                  <xs:documentation>Data urodzenia 5 dziecka</xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                  <xs:restriction base="xs:date"/>
                </xs:simpleType>
              </xs:element>
              <xs:element name="dur6" minOccurs="0">
                <xs:annotation>
                  <xs:documentation>Data urodzenia 6 dziecka</xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                  <xs:restriction base="xs:date"/>
                </xs:simpleType>
              </xs:element>
              <xs:element name="dur7" minOccurs="0">
                <xs:annotation>
                  <xs:documentation>Data urodzenia 7 dziecka</xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                  <xs:restriction base="xs:date"/>
                </xs:simpleType>
              </xs:element>
              <xs:element name="dur8" minOccurs="0">
                <xs:annotation>
                  <xs:documentation>Data urodzenia 8 dziecka</xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                  <xs:restriction base="xs:date"/>
                </xs:simpleType>
              </xs:element>
              <xs:element name="wl">
                <xs:annotation>
                  <xs:documentation>Komu powierzono wykonanie władzy rodzicielskiej</xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                  <xs:restriction base="xs:string">
                    <xs:length value="3"/>
                    <xs:pattern value="[0-6]{3}"/>
                  </xs:restriction>
                </xs:simpleType>
              </xs:element>
              <xs:element name="ali">
                <xs:annotation>
                  <xs:documentation>Alimenty</xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                  <xs:restriction base="xs:integer">
                    <xs:minInclusive value="0"/>
                    <xs:maxInclusive value="99999"/>
                  </xs:restriction>
                </xs:simpleType>
              </xs:element>
              <xs:element name="lok">
                <xs:annotation>
                  <xs:documentation>Wspólny lokal</xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                  <xs:restriction base="xs:string">
                    <xs:length value="1"/>
                    <xs:pattern value="1|2"/>
                  </xs:restriction>
                </xs:simpleType>
              </xs:element>
              <xs:element name="orzm">
                <xs:annotation>
                  <xs:documentation>Orzeczenie o mieszkaniu</xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                  <xs:restriction base="xs:string">
                    <xs:length value="1"/>
                    <xs:pattern value="[1-7,N]"/>
                  </xs:restriction>
                </xs:simpleType>
              </xs:element>
              <xs:element name="mezczyzna">
                <xs:annotation>
                  <xs:documentation>Dane męczyzny</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="durm">
                      <xs:annotation>
                        <xs:documentation>Data urodzenia</xs:documentation>
                      </xs:annotation>
                      <xs:simpleType>
                        <xs:restriction base="xs:date"/>
                      </xs:simpleType>
                    </xs:element>
                    <xs:element name="wym">
                      <xs:annotation>
                        <xs:documentation>Wykształcenie</xs:documentation>
                      </xs:annotation>
                      <xs:simpleType>
                        <xs:restriction base="xs:string">
                          <xs:length value="1"/>
                          <xs:pattern value="[1-7]|N"/>
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:element>
                    <xs:element name="zum">
                      <xs:annotation>
                        <xs:documentation>Źródło utrzymania</xs:documentation>
                      </xs:annotation>
                      <xs:simpleType>
                        <xs:restriction base="xs:string">
                          <xs:length value="2"/>
                          <xs:pattern value="A[1-4,N]"/>
                          <xs:pattern value="B0"/>
                          <xs:pattern value="C[5-7,N]"/>
                          <xs:pattern value="D[1-7,A,B,C,X]"/>
                          <xs:pattern value="NN"/>
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:element>
                    <xs:element name="m_zamieszkania">
                      <xs:annotation>
                        <xs:documentation>Miejsce zamieszkania</xs:documentation>
                      </xs:annotation>
                      <xs:complexType>
                        <xs:sequence>
                          <xs:element name="mwm">
                            <xs:annotation>
                              <xs:documentation>Miasto / wieś</xs:documentation>
                            </xs:annotation>
                            <xs:simpleType>
                              <xs:restriction base="xs:string">
                                <xs:length value="1"/>
                                <xs:enumeration value="1"/>
                                <xs:enumeration value="2"/>
                                <xs:enumeration value="3"/>
                              </xs:restriction>
                            </xs:simpleType>
                          </xs:element>
                          <xs:choice>
                             <xs:element name="zamm" type="wzor_symbol_terytorialny">
                               <xs:annotation>
                                 <xs:documentation>Symbol terytorialny</xs:documentation>
                               </xs:annotation>
                             </xs:element>
                             <xs:element name="zammz">
                               <xs:annotation>
                                 <xs:documentation>Symbol kraju z Wykazu Krajów (dla zamieszkałych za granicą)</xs:documentation>
                               </xs:annotation>
                               <xs:simpleType>
                                 <xs:restriction base="xs:string">
                                   <xs:length value="3"/>
                                   <xs:pattern value="[0-9]{3}"/>
                                 </xs:restriction>
                               </xs:simpleType>
                             </xs:element>
                          </xs:choice>
                        </xs:sequence>
                      </xs:complexType>
                    </xs:element>
                    <xs:element name="obym">
                      <xs:annotation>
                        <xs:documentation>Obywatelstwo</xs:documentation>
                      </xs:annotation>
                      <xs:simpleType>
                        <xs:restriction base="xs:string">
                          <xs:length value="1"/>
                          <xs:pattern value="1|2"/>
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:element>
                    <xs:element name="sobym">
                      <xs:annotation>
                        <xs:documentation>Symbol obywatelstwa</xs:documentation>
                      </xs:annotation>
                      <xs:simpleType>
                        <xs:restriction base="xs:string">
                          <xs:length value="3"/>
                          <xs:pattern value="[0-9]{3}|NNN"/>
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:element>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element name="kobieta">
                <xs:annotation>
                  <xs:documentation>Dane kobiety</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="durk">
                      <xs:annotation>
                        <xs:documentation>Data urodzenia</xs:documentation>
                      </xs:annotation>
                      <xs:simpleType>
                        <xs:restriction base="xs:date"/>
                      </xs:simpleType>
                    </xs:element>
                    <xs:element name="wyk">
                      <xs:annotation>
                        <xs:documentation>Wykształcenie</xs:documentation>
                      </xs:annotation>
                      <xs:simpleType>
                        <xs:restriction base="xs:string">
                          <xs:length value="1"/>
                          <xs:pattern value="[1-7]|N"/>
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:element>
                    <xs:element name="zuk">
                      <xs:annotation>
                        <xs:documentation>Źródło utrzymania</xs:documentation>
                      </xs:annotation>
                      <xs:simpleType>
                        <xs:restriction base="xs:string">
                          <xs:length value="2"/>
                          <xs:pattern value="A[1-4,N]"/>
                          <xs:pattern value="B0"/>
                          <xs:pattern value="C[5-7,N]"/>
                          <xs:pattern value="D[1-7,A,B,C,X]"/>
                          <xs:pattern value="NN"/>
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:element>
                    <xs:element name="m_zamieszkania">
                      <xs:annotation>
                        <xs:documentation>Miejsce zamieszkania</xs:documentation>
                      </xs:annotation>
                      <xs:complexType>
                        <xs:sequence>
                          <xs:element name="mwk">
                            <xs:annotation>
                              <xs:documentation>Miasto / wieś</xs:documentation>
                            </xs:annotation>
                            <xs:simpleType>
                              <xs:restriction base="xs:string">
                                <xs:length value="1"/>
                                <xs:enumeration value="1"/>
                                <xs:enumeration value="2"/>
                                <xs:enumeration value="3"/>
                              </xs:restriction>
                            </xs:simpleType>
                          </xs:element>
                          <xs:choice>
                             <xs:element name="zamk" type="wzor_symbol_terytorialny">
                               <xs:annotation>
                                 <xs:documentation>Symbol terytorialny</xs:documentation>
                               </xs:annotation>
                             </xs:element>
                             <xs:element name="zamkz">
                               <xs:annotation>
                                 <xs:documentation>Symbol kraju z Wykazu Krajów (dla zamieszkałych za granicą)</xs:documentation>
                               </xs:annotation>
                               <xs:simpleType>
                                 <xs:restriction base="xs:string">
                                   <xs:length value="3"/>
                                   <xs:pattern value="[0-9]{3}"/>
                                 </xs:restriction>
                               </xs:simpleType>
                             </xs:element>
                          </xs:choice>
                        </xs:sequence>
                      </xs:complexType>
                    </xs:element>
                    <xs:element name="obyk">
                      <xs:annotation>
                        <xs:documentation>Obywatelstwo</xs:documentation>
                      </xs:annotation>
                      <xs:simpleType>
                        <xs:restriction base="xs:string">
                          <xs:length value="1"/>
                          <xs:pattern value="1|2"/>
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:element>
                    <xs:element name="sobyk">
                      <xs:annotation>
                        <xs:documentation>Symbol obywatelstwa</xs:documentation>
                      </xs:annotation>
                      <xs:simpleType>
                        <xs:restriction base="xs:string">
                          <xs:length value="3"/>
                          <xs:pattern value="[0-9]{3}|NNN"/>
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:element>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
		<xs:attribute ref="kod_dost" />
		<xs:attribute ref="wersja" />
		<xs:attribute ref="blad_uz" />
		<xs:attribute ref="idmr_kto" />
		<xs:attribute ref="idmr_kiedys" />
		<xs:attribute ref="krajmz" />
		<xs:attribute ref="rezerwa" />
	</xs:complexType>
  </xs:element>

	<xs:attribute name="kod_dost">
		<xs:annotation>
			<xs:documentation>Kod dostawcy systemu</xs:documentation>
		</xs:annotation>
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:maxLength value="20" />
			</xs:restriction>
		</xs:simpleType>
	</xs:attribute>
	<xs:attribute name="wersja" type="xs:integer">
		<xs:annotation>
			<xs:documentation>Numer wersji schematu</xs:documentation>
		</xs:annotation>
	</xs:attribute>
	<xs:attribute name="blad_uz">
		<xs:annotation>
			<xs:documentation>Wskaźnik błędu uznaniowego</xs:documentation>
		</xs:annotation>
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:length value="1" />
				<xs:pattern value="0|1" />
			</xs:restriction>
		</xs:simpleType>
	</xs:attribute>
	<xs:attribute name="idmr_kto">
		<xs:annotation>
			<xs:documentation>Identyfikator operatora</xs:documentation>
		</xs:annotation>
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:maxLength value="20" />
			</xs:restriction>
		</xs:simpleType>
	</xs:attribute>
	<xs:attribute name="idmr_kiedys">
		<xs:annotation>
			<xs:documentation>Data rejestracji dokumentu</xs:documentation>
		</xs:annotation>
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:maxLength value="20" />
			</xs:restriction>
		</xs:simpleType>
	</xs:attribute>
	<xs:attribute name="krajmz">
		<xs:annotation>
			<xs:documentation>Kraj miejsca zdarzenia</xs:documentation>
		</xs:annotation>
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:length value="3" />
				<xs:pattern value="[0-9]{3}|NNN" />
			</xs:restriction>
		</xs:simpleType>
	</xs:attribute>
	<xs:attribute name="rezerwa">
		<xs:annotation>
			<xs:documentation>Pole rezerwowe</xs:documentation>
		</xs:annotation>
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:maxLength value="20" />
			</xs:restriction>
		</xs:simpleType>
	</xs:attribute>

	<xs:complexType name="wzor_symbol_terytorialny">
     <xs:simpleContent>
        <xs:extension base="symbol_terytorialny">
           <xs:attribute name="id_miejsc" type="xs:integer" use="required"/>
        </xs:extension>
     </xs:simpleContent>
  </xs:complexType>

  <xs:simpleType name="symbol_terytorialny">
     <xs:annotation>
        <xs:documentation>Symbol terytorialny (TERYT)</xs:documentation>
     </xs:annotation>
     <xs:restriction base="xs:string">
        <xs:length value="7"/>
        <xs:pattern value="[0-9]{7}"/>
     </xs:restriction>
  </xs:simpleType>

</xs:schema>







