<?xml version="1.0" encoding="UTF-8" ?>
<xsd:schema elementFormDefault="qualified" xmlns:xsd="http://www.w3.org/2001/XMLSchema">

    <xsd:include schemaLocation="F_ODP_common_2026_1.xsd" />

    <!-- form element -->
    <xsd:element name="F_ODP_PCB">
        <xsd:complexType>
            <xsd:all>
                <xsd:element name="meta-info" type="MetaInfoTyp" />
                <xsd:element name="sekce1" type="Sekce1Typ" />
                <xsd:element name="sekce2" type="List1Typ" />
                <xsd:element name="sekce3" type="List2Typ" />
                <xsd:element name="sekce4" type="List3Typ" minOccurs="0" />
                <xsd:element name="sekce5" type="Sekce5Typ" minOccurs="0" />
            </xsd:all>

            <xsd:attribute name="version" type="ShortStringTyp" use="required" fixed="2026" />
            <xsd:attribute name="revision" type="ShortStringTyp" use="required" fixed="1" />

        </xsd:complexType>
    </xsd:element>
    <!-- end of form element -->

    <!-- sekce complex types -->
    <xsd:complexType name="Sekce1Typ">
        <xsd:all>
            <xsd:element name="registracniCislo" type="RegistracniCisloTyp" />
            <xsd:element name="listCislo0" type="xsd:int" fixed="0" />

            <xsd:element name="radneDoplneneHlaseni" type="RadneDoplneneHlaseniTyp" />
            <xsd:element name="rok" type="RokTyp" fixed="2027" />

            <xsd:element name="ohlasovatel" type="OhlasovatelOdpPcbTyp" />

            <xsd:element name="evidenciVyplnil" type="ZpracovatelTyp" />
            <xsd:element name="zaSpravnost" type="ZaSpravnostTyp" />
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="Sekce5Typ">
        <xsd:all>
            <xsd:element name="poznamka" type="ExtraLongStringTyp" minOccurs="0" />
        </xsd:all>
    </xsd:complexType>
    <!-- end of sekce complex types -->

    <!-- complex types -->
    <xsd:complexType name="OhlasovatelOdpPcbTyp">
        <xsd:all>
            <xsd:element name="ohlasovatelVyber" type="OhlasovatelOdpPcbVyberTyp" />
            <xsd:element name="adresa" type="AdresaTyp" />
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="OhlasovatelOdpPcbVyberTyp">
        <xsd:choice>
            <xsd:element name="pravnickaOsoba" type="PravnickaOsobaTyp" />
            <xsd:element name="fyzickaOsoba" type="FyzickaOsobaPcbTyp" />
            <xsd:element name="pravnickaOsobaBezIc" type="PravnickaOsobaBezIcTyp" />
            <xsd:element name="zahranicniOsoba" type="ZahranicniOsobaTyp" />
        </xsd:choice>
    </xsd:complexType>

    <xsd:complexType name="SubjektPravZahrVyberTyp">
        <xsd:choice>
            <xsd:element name="pravnickaOsoba" type="PravnickaOsobaTyp" />
            <xsd:element name="pravnickaOsobaBezIc" type="PravnickaOsobaBezIcTyp" />
            <xsd:element name="zahranicniOsoba" type="ZahranicniOsobaTyp" />
        </xsd:choice>
    </xsd:complexType>

    <xsd:complexType name="SubjektIcZahrVyberTyp">
        <xsd:choice>
            <xsd:element name="pravnickaOsoba" type="PravnickaOsobaTyp" />
            <xsd:element name="zahranicniOsoba" type="ZahranicniOsobaTyp" />
        </xsd:choice>
    </xsd:complexType>

    <xsd:complexType name="RegistracniCisloTyp">
        <xsd:all>
            <xsd:element name="prefix" type="xsd:nonNegativeInteger" />
            <xsd:element name="suffix" type="xsd:nonNegativeInteger" minOccurs="0" />
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="PoverenaOsobaTyp">
        <xsd:all>
            <xsd:element name="jmeno" type="MediumStringTyp" />
            <xsd:element name="prijmeni" type="MediumStringTyp" />
            <xsd:element name="kontakt" type="KontaktTyp" />
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="ZaSpravnostTyp">
        <xsd:all>
            <xsd:element name="jmeno" type="LongStringTyp" />
            <xsd:element name="prijmeni" type="LongStringTyp" />
        </xsd:all>
    </xsd:complexType>

    <!-- list 1 -->
    <xsd:complexType name="List1Typ">
        <xsd:all>
            <xsd:element name="registracniCislo" type="RegistracniCisloTyp" />
            <xsd:element name="listCislo1" type="xsd:int" fixed="1" />
            <xsd:element name="inventarizaciProvadi" type="InventarizaciProvadiVyberVycetTyp" />
            <xsd:element name="provozovatel" type="OhlasovatelOdpPcbTyp" />
            <xsd:element name="evidenciVyplnil" type="PoverenaOsobaTyp" />
            <xsd:element name="zaSpravnost" type="ZaSpravnostTyp" />
            <xsd:element name="mistoUmisteni" type="MistoUmisteniOdpPcbTyp" />
            <xsd:element name="zarizeniNeboPcb" type="ZarizeniNeboPcbTyp" />
        </xsd:all>
    </xsd:complexType>

    <xsd:simpleType name="InventarizaciProvadiVyberVycetTyp">
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="PROVOZOVATEL" />
            <xsd:enumeration value="VLASTNIK" />
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:complexType name="MistoUmisteniOdpPcbTyp">
        <xsd:all>
            <xsd:element name="mistoUmisteni" type="ExtraLongStringTyp" />
            <xsd:element name="obec" type="Nazev48Typ" />
            <xsd:element name="kodObce" type="IcZujTyp" />
            <xsd:element name="specifikaceMista" type="ExtraLongStringTyp" />
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="ZarizeniNeboPcbTyp">
        <xsd:all>
            <xsd:element name="vyrobniCisloZarizeni" type="LongStringTyp" />
            <xsd:element name="zarizeniDetail" type="ZarizeniDetailTyp" />
            <xsd:element name="upresneniDruhuZarizeni" type="LongStringTyp" minOccurs="0" />
            <xsd:element name="rozliseniOddelenychCasti" type="LongStringTyp" minOccurs="0" />
            <xsd:element name="vazbaNaMaterskeZarizeni" type="LongStringTyp" minOccurs="0" />
            <xsd:element name="typZarizeni" type="LongStringTyp" minOccurs="0" />
            <xsd:element name="vyrobceZarizeni" type="LongStringTyp" minOccurs="0" />
            <xsd:element name="rokVyrobyZarizeni" type="RokTyp" minOccurs="0" />
            <xsd:element name="jmenovitaNapeti" type="Decimal3FrTyp" />
            <xsd:element name="jmenovitaNapeti2" type="Decimal3FrTyp" minOccurs="0" />
            <xsd:element name="jmenovityVykon" type="Decimal2FrTyp" minOccurs="0" />
            <xsd:element name="druhProvozniKapaliny" type="DruhProvozniKapalinyTyp" />
            <xsd:element name="vyrobceProvozniKapaliny" type="LongStringTyp" minOccurs="0" />
            <xsd:element name="mnozstviProvozniKapaliny" type="Decimal2FrTyp" minOccurs="0" />
            <xsd:element name="zpusobZjisteni" type="ZpusobZjisteniVyberVycetTyp" minOccurs="0" />
        </xsd:all>
    </xsd:complexType>

    <xsd:simpleType name="HermetizaceVyberVycetTyp">
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="N" />
            <xsd:enumeration value="H" />
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:simpleType name="ZpusobZjisteniVyberVycetTyp">
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="V" />
            <xsd:enumeration value="M" />
            <xsd:enumeration value="O" />
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:complexType name="ZarizeniDetailTyp">
        <xsd:all>
            <xsd:element name="kod" type="ShortStringTyp" />
            <xsd:element name="hermetizace" type="HermetizaceVyberVycetTyp" />
        </xsd:all>
    </xsd:complexType>

    <!-- list 2 -->
    <xsd:complexType name="List2Typ">
        <xsd:all>
            <xsd:element name="registracniCislo" type="RegistracniCisloTyp" />
            <xsd:element name="listCislo2" type="xsd:int" fixed="2" />
            <xsd:element name="inventarizaciProvadi" type="InventarizaciProvadiVyberVycetTyp" />
            <xsd:element name="zarizeniNeboPcb">
                <xsd:complexType>
                    <xsd:all>
                        <xsd:element name="vyrobniCisloZarizeni" type="LongStringTyp" />
                        <xsd:element name="zarizeniDetail" type="ZarizeniDetailTyp" />
                    </xsd:all>
                </xsd:complexType>
            </xsd:element>
            <xsd:element name="zpusobProkazaniPcb" type="ZpusobProkazaniPcbTyp" />
            <xsd:element name="zarizeniObsahujePcbVyberVycet" type="ZarizeniObsahujeNeobsahujePcbVyberVycetTyp" />
        </xsd:all>
    </xsd:complexType>

    <xsd:simpleType name="ZarizeniObsahujeNeobsahujePcbVyberVycetTyp">
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="OBSAHUJE" />
            <xsd:enumeration value="NEOBSAHUJE" />
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:complexType name="ZpusobProkazaniPcbTyp">
        <xsd:choice>
            <xsd:element name="cestneProhlaseni" type="CestneProhlaseniTyp" />
            <xsd:element name="analytickeStanoveni" type="AnalytickeStanoveniTyp" />
            <xsd:element name="odecteni" type="OdecteniTyp" />
            <xsd:element name="oduvodnenyPredpoklad" type="OduvodnenyPredpokladTyp" />
        </xsd:choice>
    </xsd:complexType>

    <xsd:complexType name="CestneProhlaseniTyp">
        <xsd:all>
            <xsd:element name="identifikaceVyrobce" type="IdentifikaceVyrobceTyp" />
            <xsd:element name="zakladniUdajeOZarizeni" type="ZakladniUdajeOZarizeniTyp" />
            <xsd:element name="druhProvozniKapaliny" type="DruhProvozniKapalinyTyp" />
            <xsd:element name="koncentracePCBvProvozniKapaline" type="Decimal2FrTyp" />

            <xsd:element name="identifikaceProhlaseni" type="LongStringTyp" />
            <xsd:element name="priloha" type="FileDataTyp" minOccurs="0" />
            <xsd:element name="protokolOOdberuVzorkuStav" type="ProtokolOOdberuVzorkuStavTyp" />
            <xsd:element name="protokolVysledky" type="ProtokolVysledkyTyp" minOccurs="0" />
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="AnalytickeStanoveniTyp">
        <xsd:all>
            <xsd:element name="cisloProtokolu" type="CisloProtokoluTyp" />
            <xsd:element name="protokolOOdberuVzorkuStav" type="ProtokolOOdberuVzorkuStavTyp" />
            <xsd:element name="protokolOOdberuVzorkuOdber" type="ProtokolOOdberuVzorkuOdberTyp" />
            <xsd:element name="protokolVysledky" type="ProtokolVysledkyTyp" />
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="OdecteniTyp" />

    <xsd:complexType name="OduvodnenyPredpokladTyp" />

    <xsd:complexType name="IdentifikaceVyrobceTyp">
        <xsd:all>
            <xsd:element name="ohlasovatelVyber" type="SubjektPravZahrVyberTyp" />
            <xsd:element name="adresa" type="AdresaTyp" />
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="ZakladniUdajeOZarizeniTyp">
        <xsd:all>
            <xsd:element name="zarizeniDetail" type="ZarizeniDetailTyp" />
            <xsd:element name="upresneniDruhuZarizeni" type="LongStringTyp" minOccurs="0" />
            <xsd:element name="typZarizeni" type="LongStringTyp" minOccurs="0" />
            <xsd:element name="vyrobniCisloZarizeni" type="LongStringTyp" />
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="DruhProvozniKapalinyTyp">
        <xsd:all>
            <xsd:element name="druh" type="ShortStringTyp" />
            <xsd:element name="upresneniDruhuProvozniKapaliny" type="LongStringTyp" minOccurs="0" />
            <xsd:element name="obchodniNazevProvozniKapaliny" type="LongStringTyp" minOccurs="0" />
        </xsd:all>
    </xsd:complexType>

    <xsd:simpleType name="StavZarizeniVyberVycetTyp">
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="V_PROVOZU" />
            <xsd:enumeration value="MIMO_PROVOZ" />
        </xsd:restriction>
    </xsd:simpleType>
    <xsd:complexType name="ProtokolOOdberuVzorkuStavTyp">
        <xsd:all>
            <xsd:element name="stavZarizeni" type="StavZarizeniVyberVycetTyp" minOccurs="0" />
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="ProtokolOOdberuVzorkuOdberTyp">
        <xsd:all>
            <xsd:element name="specifikaceMistaOdberu" type="LongStringTyp" minOccurs="0" />
            <xsd:element name="datumOdberuVzorku" type="xsd:date" minOccurs="0" />
            <xsd:element name="cisloVzorku" type="CisloVzorkuTyp" minOccurs="0" />
            <xsd:element name="certifikacniCisloOsobyProvadejiciOdber" type="CertifikacniCisloOsobyProvadejiciOdberTyp" minOccurs="0" />
        </xsd:all>
    </xsd:complexType>

    <xsd:simpleType name="CisloVzorkuTyp">
        <xsd:restriction base="NonEmptyStringTyp">
            <xsd:maxLength value="6" />
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:simpleType name="CertifikacniCisloOsobyProvadejiciOdberTyp">
        <xsd:restriction base="NonEmptyStringTyp">
            <xsd:maxLength value="4" />
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:complexType name="ProtokolVysledkyTyp">
        <xsd:all>
            <xsd:element name="kodLaboratore" type="KodLaboratoreTyp" minOccurs="0" />
            <xsd:element name="cisloProtokolu" type="CisloProtokoluTyp" minOccurs="0" />
            <xsd:element name="datumAnalyzy" type="xsd:date" minOccurs="0" />
            <xsd:element name="koncentracePcb">
                <xsd:complexType>
                    <xsd:all>
                        <xsd:element name="pcb28">
                            <xsd:complexType>
                                <xsd:complexContent>
                                    <xsd:restriction base="KoncentraceTyp">
                                        <xsd:all>
                                            <xsd:element name="kod" type="ShortStringTyp" fixed="PCB28" />
                                            <xsd:element name="hodnota" type="Decimal2FrTyp" minOccurs="0" />
                                        </xsd:all>
                                    </xsd:restriction>
                                </xsd:complexContent>
                            </xsd:complexType>
                        </xsd:element>
                        <xsd:element name="pcb52">
                            <xsd:complexType>
                                <xsd:complexContent>
                                    <xsd:restriction base="KoncentraceTyp">
                                        <xsd:all>
                                            <xsd:element name="kod" type="ShortStringTyp" fixed="PCB52" />
                                            <xsd:element name="hodnota" type="Decimal2FrTyp" minOccurs="0" />
                                        </xsd:all>
                                    </xsd:restriction>
                                </xsd:complexContent>
                            </xsd:complexType>
                        </xsd:element>
                        <xsd:element name="pcb101">
                            <xsd:complexType>
                                <xsd:complexContent>
                                    <xsd:restriction base="KoncentraceTyp">
                                        <xsd:all>
                                            <xsd:element name="kod" type="ShortStringTyp" fixed="PCB101" />
                                            <xsd:element name="hodnota" type="Decimal2FrTyp" minOccurs="0" />
                                        </xsd:all>
                                    </xsd:restriction>
                                </xsd:complexContent>
                            </xsd:complexType>
                        </xsd:element>
                        <xsd:element name="pcb138">
                            <xsd:complexType>
                                <xsd:complexContent>
                                    <xsd:restriction base="KoncentraceTyp">
                                        <xsd:all>
                                            <xsd:element name="kod" type="ShortStringTyp" fixed="PCB138" />
                                            <xsd:element name="hodnota" type="Decimal2FrTyp" minOccurs="0" />
                                        </xsd:all>
                                    </xsd:restriction>
                                </xsd:complexContent>
                            </xsd:complexType>
                        </xsd:element>
                        <xsd:element name="pcb153">
                            <xsd:complexType>
                                <xsd:complexContent>
                                    <xsd:restriction base="KoncentraceTyp">
                                        <xsd:all>
                                            <xsd:element name="kod" type="ShortStringTyp" fixed="PCB153" />
                                            <xsd:element name="hodnota" type="Decimal2FrTyp" minOccurs="0" />
                                        </xsd:all>
                                    </xsd:restriction>
                                </xsd:complexContent>
                            </xsd:complexType>
                        </xsd:element>
                        <xsd:element name="pcb180">
                            <xsd:complexType>
                                <xsd:complexContent>
                                    <xsd:restriction base="KoncentraceTyp">
                                        <xsd:all>
                                            <xsd:element name="kod" type="ShortStringTyp" fixed="PCB180" />
                                            <xsd:element name="hodnota" type="Decimal2FrTyp" minOccurs="0" />
                                        </xsd:all>
                                    </xsd:restriction>
                                </xsd:complexContent>
                            </xsd:complexType>
                        </xsd:element>
                        <xsd:element name="celkem">
                            <xsd:complexType>
                                <xsd:all>
                                    <xsd:element name="hodnota" type="Decimal2FrTyp" minOccurs="0" />
                                </xsd:all>
                            </xsd:complexType>
                        </xsd:element>
                    </xsd:all>
                </xsd:complexType>
            </xsd:element>
        </xsd:all>
    </xsd:complexType>

    <xsd:simpleType name="KodLaboratoreTyp">
        <xsd:restriction base="NonEmptyStringTyp">
            <xsd:maxLength value="4" />
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:simpleType name="CisloProtokoluTyp">
        <xsd:restriction base="NonEmptyStringTyp">
            <xsd:maxLength value="13" />
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:complexType name="KoncentraceTyp">
        <xsd:all>
            <xsd:element name="kod" type="ShortStringTyp" />
            <xsd:element name="hodnota" type="Decimal2FrTyp" minOccurs="0" />
        </xsd:all>
    </xsd:complexType>

    <!-- list 3 -->
    <xsd:complexType name="List3Typ">
        <xsd:all>
            <xsd:element name="zarizeniObsahujePcb" type="ZarizeniObsahujePcbTyp" />
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="ZarizeniObsahujePcbTyp">
        <xsd:all>
            <xsd:element name="registracniCislo" type="RegistracniCisloTyp" />
            <xsd:element name="listCislo3" type="xsd:int" fixed="3" />
            <xsd:element name="zarizeniNeboPcb">
                <xsd:complexType>
                    <xsd:all>
                        <xsd:element name="vyrobniCisloZarizeni" type="LongStringTyp" minOccurs="0" />
                        <xsd:element name="zarizeniDetail" type="ZarizeniDetailTyp" minOccurs="0" />
                    </xsd:all>
                </xsd:complexType>
            </xsd:element>
            <xsd:element name="protokolOOdstraneni" type="ProtokolOOdstraneniTyp" />
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="ZarizeniNeobsahujePcbTyp" />

    <xsd:complexType name="ProtokolOOdstraneniTyp">
        <xsd:all>
            <xsd:element name="datumNakladani" type="xsd:date" />
            <xsd:element name="hmotnostZarizeni" type="Decimal3FrTyp" />
            <xsd:element name="zTohoKapalina" type="Decimal3FrTyp" />
            <xsd:element name="zpusobNakladani" type="ZpusobNakladaniTyp" />
            <xsd:element name="icz" type="PoleICZTyp" minOccurs="0" />
            <xsd:element name="opravnenaOsoba" type="OpravnenaOsobaTyp" />
            <xsd:element name="zastupceJmeno" type="LongStringTyp" />
            <xsd:element name="zastupcePrijmeni" type="LongStringTyp" />
            <xsd:element name="zastupceKontakt" type="KontaktTyp" />
            <xsd:element name="zarizeniPredalJmeno" type="LongStringTyp" />
            <xsd:element name="zarizeniPredalPrijmeni" type="LongStringTyp" />
            <xsd:element name="datumPredani" type="xsd:date" />
            <xsd:element name="zarizeniPrevzalJmeno" type="LongStringTyp" />
            <xsd:element name="zarizeniPrevzalPrijmeni" type="LongStringTyp" />
            <xsd:element name="datumPrevzeni" type="xsd:date" />
            <xsd:element name="poznamka" type="ExtraLongStringTyp" minOccurs="0" />
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="OpravnenaOsobaTyp">
        <xsd:all>
            <xsd:element name="ohlasovatelVyber" type="SubjektIcZahrVyberTyp" />
            <xsd:element name="adresa" type="AdresaTyp" />
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="ZpusobNakladaniTyp">
        <xsd:choice>
            <xsd:element name="zpusobNakladaniSpaleni" type="ZpusobNakladaniSpaleniTyp" />
            <xsd:element name="zpusobNakladaniDekontaminace" type="ZpusobNakladaniDekontaminaceTyp" />
            <xsd:element name="zpusobNakladaniVyvoz" type="ZpusobNakladaniVyvozTyp" />
            <xsd:element name="zpusobNakladaniJine" type="ZpusobNakladaniJineTyp" />
        </xsd:choice>
    </xsd:complexType>

    <xsd:complexType name="ZpusobNakladaniSpaleniTyp" />

    <xsd:complexType name="ZpusobNakladaniDekontaminaceTyp" />

    <xsd:complexType name="ZpusobNakladaniVyvozTyp" />

    <xsd:complexType name="ZpusobNakladaniJineTyp">
        <xsd:all>
            <xsd:element name="specifikaceJinehoZpusobuNakladani" type="ExtraLongStringTyp" />
        </xsd:all>
    </xsd:complexType>

    <!-- end of complex types -->

</xsd:schema>
