<?xml version="1.0" encoding="UTF-8" ?>
<!-- Žiadosť o registráciu pre uplatňovanie osobitnej úpravy mimo Únie/oznámenie zmeny údajov -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
	<xs:annotation>
		<xs:documentation>RegOSS_NonEU</xs:documentation>
	</xs:annotation>
	<!--  prazdny retazec  -->
	<xs:simpleType name="emptyStrType">
		<xs:restriction base="xs:string">
			<xs:enumeration value=""/>
		</xs:restriction>
	</xs:simpleType>
	<!-- nepovinne cele cislo -->
	<xs:simpleType name="optInt">
		<xs:union memberTypes="xs:integer emptyStrType"/>
	</xs:simpleType>
	<!--  povinny datum v tvare: (d)d.(m)m.rrrr  -->
	<xs:simpleType name="oneFieldDateType">
		<xs:restriction base="xs:string">
			<xs:pattern value="\d?\d\.\d?\d\.\d\d\d\d"/>
		</xs:restriction>
	</xs:simpleType>
	<!--  nepovinny datum v tvare: (d)d.(m)m.rrrr  -->
	<xs:simpleType name="optOneFieldDateType">
		<xs:union memberTypes="oneFieldDateType emptyStrType"/>
	</xs:simpleType>
	<!--  povinny den/mesiac v tvare: (d)d/(m)m  -->
	<xs:simpleType name="dayMonthType">
		<xs:restriction base="xs:decimal">
			<xs:pattern value="\d?\d"/>
		</xs:restriction>
	</xs:simpleType>
	<!--  nepovinny den/mesiac v tvare: (d)d/(m)m  -->
	<xs:simpleType name="optDayMonthType">
		<xs:union memberTypes="dayMonthType emptyStrType"/>
	</xs:simpleType>
	<!--  povinny rok  -->
	<xs:simpleType name="yearType">
		<xs:restriction base="xs:decimal">
			<xs:pattern value="\d\d\d\d"/>
		</xs:restriction>
	</xs:simpleType>
	<!--  nepovinny rok  -->
	<xs:simpleType name="optYearType">
		<xs:union memberTypes="yearType emptyStrType"/>
	</xs:simpleType>
	<!--  nepovinne realne cislo  -->
	<xs:simpleType name="optDouble">
		<xs:union memberTypes="xs:double emptyStrType"/>
	</xs:simpleType>
	<!-- nepovinny checkbox -->
	<xs:simpleType name="only_0_1">
		<xs:restriction base="xs:decimal">
			<xs:totalDigits value="1"/>
			<xs:pattern value="[0-1]"/>
		</xs:restriction>
	</xs:simpleType>
	<!--  retazec na max. 8 znakov  -->
	<xs:simpleType name="string6">
		<xs:restriction base="xs:string">
			<xs:maxLength value="6"/>
		</xs:restriction>
	</xs:simpleType>
	<!--  retazec na max. 4 znaky  -->
	<xs:simpleType name="string4">
		<xs:restriction base="xs:string">
			<xs:maxLength value="4"/>
		</xs:restriction>
	</xs:simpleType>
	<!--  retazec na max. 12 znaky  -->
	<xs:simpleType name="string12">
		<xs:restriction base="xs:string">
			<xs:maxLength value="12"/>
		</xs:restriction>
	</xs:simpleType>
	<!--  retazec na max. 11 znakov  -->
	<xs:simpleType name="string11">
		<xs:restriction base="xs:string">
			<xs:maxLength value="11"/>
		</xs:restriction>
	</xs:simpleType>
	<!--  korenovy element  -->
	<xs:element name="dokument">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="typ" type="typType"/>
				<xs:element name="osoba" type="osobaType"/>
				<xs:element name="identifikacia" type="identifikaciaType"/>
				<xs:element name="kontakt" type="kontaktType"/>
				<xs:element name="ucet" type="ucetType"/>
				<xs:element name="predchadzajuceAAktualneCisla" type="predchadzajuceAAktualneCislaType" minOccurs="0" maxOccurs="30"/>
				<xs:element name="dodaniaOsobitnejUpravy" type="dodaniaOsobitnejUpravyType"/>
				<xs:element name="vyhlasenie" type="vyhlasenieType"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:complexType name="typType">
		<xs:sequence>
			<xs:element name="ziadost" type="only_0_1"/>
			<xs:element name="reRegistracia" type="only_0_1"/>
			<xs:element name="zmena" type="only_0_1"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="osobaType">
		<xs:sequence>
			<xs:element name="fo" type="only_0_1"/>
			<xs:element name="po" type="only_0_1"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="identifikaciaType">
		<xs:annotation>
			<xs:documentation>Identifikačné údaje</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="voesCislo" type="string11"/>
			<xs:element name="krajinaSidla" type="xs:string"/>
			<xs:element name="vnutrostatneDic" type="optInt"/>
			<xs:element name="vnutrostatneDicStat" type="xs:string"/>
			<xs:element name="meno" type="xs:string"/>
			<xs:element name="priezvisko" type="xs:string"/>
			<xs:element name="datumNarodenia" type="optOneFieldDateType"/>
			<xs:element name="obchodneMeno" type="xs:string"/>
			<xs:element name="obchodneMenoIne" type="xs:string"/>
			<xs:element name="icoZahr" type="string12"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="kontaktType">
		<xs:annotation>
			<xs:documentation>Kontaktné údaje zdaniteľnej osoby</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="adresa" type="adresaType"/>
			<xs:element name="kontaktnaOsoba" type="kontaktnaOsobaType"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="adresaType">
		<xs:sequence>
			<xs:element name="ulica" type="xs:string"/>
			<xs:element name="supisneCislo" type="xs:string"/>
			<xs:element name="orientacneCislo" type="xs:string"/>
			<xs:element name="psc" type="xs:string"/>
			<xs:element name="mesto" type="xs:string"/>
			<xs:element name="stat" type="xs:string"/>
			<xs:element name="telefon" type="xs:string"/>
			<xs:element name="email" type="xs:string"/>
			<xs:element name="web" type="xs:string"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="kontaktnaOsobaType">
		<xs:sequence>
			<xs:element name="titul" type="xs:string"/>
			<xs:element name="meno" type="xs:string"/>
			<xs:element name="stredneMeno" type="xs:string"/>
			<xs:element name="priezvisko" type="xs:string"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="ucetType">
		<xs:annotation>
			<xs:documentation>Bankové informácie</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="iban" type="xs:string"/>
			<xs:element name="oban" type="xs:string"/>
			<xs:element name="bic" type="xs:string"/>
			<xs:element name="vlastnikUctu" type="xs:string"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="predchadzajuceAAktualneCislaType">
		<xs:annotation>
			<xs:documentation>Predchádzajúce alebo aktuálne používané individuálne identifikačné čísla, resp. čísla pre DPH pridelené členským štátom identifikácie v súlade s článkom 362, 369d alebo 369q smernice 2006/112/ES, ak zdaniteľná osoba predtým využívala alebo v súčasnosti využíva niektorú z týchto úprav</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="krajinaIcDph" type="xs:string"/>
			<xs:element name="icDph" type="string12"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="dodaniaOsobitnejUpravyType">
		<xs:annotation>
			<xs:documentation>Už ste uskutočnili dodania v rámci osobitnej úpravy?</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="dodavkyOsobitnejUpravy" type="only_0_1"/>
			<xs:element name="zaciatokVyuzivania" type="optOneFieldDateType"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="vyhlasenieType">
		<xs:annotation>
			<xs:documentation>Vyhlásenie</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="osobaNieJeEu" type="only_0_1"/>
			<xs:element name="pravdiveUdaje" type="only_0_1"/>
			<xs:element name="datumZiadosti" type="optOneFieldDateType"/>
		</xs:sequence>
	</xs:complexType>
	<!--  povinne dic  -->
	<xs:simpleType name="dicType">
		<xs:restriction base="xs:decimal">
			<xs:pattern value="\d{10}"/>
		</xs:restriction>
	</xs:simpleType>
	<!--  nepovinne dic  -->
	<xs:simpleType name="optDicType">
		<xs:union memberTypes="dicType emptyStrType"/>
	</xs:simpleType>
	<!--  povinne ico  -->
	<xs:simpleType name="icoType">
		<xs:restriction base="xs:string">
			<xs:pattern value="\d{8}"/>
		</xs:restriction>
	</xs:simpleType>
	<!--  nepovinne ico  -->
	<xs:simpleType name="optIcoType">
		<xs:union memberTypes="icoType emptyStrType"/>
	</xs:simpleType>
	<!--  nepovinne decimal cislo  -->
	<xs:simpleType name="optDecimal">
		<xs:union memberTypes="xs:decimal emptyStrType"/>
	</xs:simpleType>
	<!-- nepovinne patciferne cislo -->
	<xs:simpleType name="optInt5">
		<xs:union memberTypes="cislo5 emptyStrType"/>
	</xs:simpleType>
	<!-- cele patciferne cislo -->
	<xs:simpleType name="cislo5">
		<xs:restriction base="xs:integer">
			<xs:totalDigits value="5"/>
		</xs:restriction>
	</xs:simpleType>
	<!--  za obdobie  -->
	<xs:complexType name="zaObdobieType">
		<xs:sequence>
			<xs:element name="datumOd" type="optOneFieldDateType"/>
			<xs:element name="datumDo" type="optOneFieldDateType"/>
		</xs:sequence>
	</xs:complexType>
	<!--  rodne cislo na 2 casti  -->
	<xs:complexType name="rodneCisloType">
		<xs:sequence>
			<xs:element name="rcPredLom" type="string6"/>
			<xs:element name="rcZaLom" type="string4"/>
		</xs:sequence>
	</xs:complexType>
</xs:schema>



