<?xml version="1.0" encoding="utf-8" ?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
    <xsd:include schemaLocation="F_VOD_common_2026_1.xsd" />

    <!-- form element -->
    <xsd:element name="F_VOD_HAV">
        <xsd:complexType>
            <xsd:sequence>
                <xsd:element name="meta-info" type="MetaInfoTyp" />
                <xsd:element name="sekceZakladniUdaje" type="SekceZakladniUdajeTyp" />
                <xsd:element name="sekceLatkyAVypusti" type="SekceLatkyAVypustiTyp" />
            </xsd:sequence>
            <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 -->

    <!-- section complex types -->
    <xsd:complexType name="SekceZakladniUdajeTyp">
        <xsd:all>
            <xsd:element name="radneDoplneneHlaseni" type="RadneDoplneneHlaseniTyp" />
            <xsd:element name="rok" type="RokTyp" fixed="2027" />
            <xsd:element name="hlaseniVyplnil" type="ZpracovatelTyp" />
            <xsd:element name="ohlasovatel" type="OhlasovatelVseTyp" />
            <xsd:element name="mistoProvoznihoUzemi" type="MistoTyp" />
            <xsd:element name="schvaleniHavarijnihoPlanu" type="SchvaleniTyp" />
            <xsd:element name="odpovedneOsoby" type="OdpovedneOsobyTyp" />
            <xsd:element name="pohotovostniKontakt" type="PohotovostniKontaktTyp" />
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="SekceLatkyAVypustiTyp">
        <xsd:all>
            <xsd:element name="vodniToky" type="VodniTokyTyp" />
            <xsd:element name="vypusti" type="VypustiTyp" />
            <xsd:element name="produkty" type="ProduktyTyp" />
            <xsd:element name="prilohy" type="PrilohyTyp" />
            <xsd:element name="poznamka" type="ExtraLongStringTyp" minOccurs="0" />
        </xsd:all>
    </xsd:complexType>
    <!-- end of section complex types -->

    <!-- complex types -->
    <xsd:complexType name="VodopravniUradTyp">
        <xsd:all>
            <xsd:element name="kod" type="ShortStringTyp" />
            <xsd:element name="nazev" type="LongStringTyp" />
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="MistoTyp">
        <xsd:sequence>
            <xsd:element name="adresa" type="AdresaTyp" />
            <xsd:element name="katastralniUzemiAParcely" type="KatastralniUzemiAParcelyTyp" />
            <xsd:element name="mistoProvoznihoUzemi" type="PopisASouradniceTyp" />
            <xsd:element name="mistoVjezdu" type="PopisASouradniceTyp" minOccurs="1" maxOccurs="unbounded" />
        </xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="KatastralniUzemiAParcelyTyp">
        <xsd:sequence>
            <xsd:element name="katastralniUzemiAParcela" type="KatastralniUzemiAParcelaTyp" minOccurs="0" maxOccurs="unbounded" />
        </xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="KatastralniUzemiAParcelaTyp">
        <xsd:all>
            <xsd:element name="katastralniUzemi" type="KatastralniUzemiTyp" minOccurs="0" />
            <xsd:element name="parcela" type="LongStringTyp" minOccurs="0" />
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="KatastralniUzemiTyp">
        <xsd:all>
            <xsd:element name="kod" type="ShortStringTyp" minOccurs="0" />
            <xsd:element name="nazev" type="LongStringTyp" minOccurs="0" />
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="PopisASouradniceTyp">
        <xsd:all>
            <xsd:element name="popisMista" type="ExtraLongStringTyp" />
            <xsd:element name="souradnice" type="SouradniceHavTyp" />
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="SouradniceHavTyp">
        <xsd:all>
            <xsd:element name="wgs84X" type="Decimal8FrTyp" minOccurs="0" />
            <xsd:element name="wgs84Y" type="Decimal8FrTyp" minOccurs="0" />
            <xsd:element name="jtskX" type="Dec10Typ" minOccurs="0" />
            <xsd:element name="jtskY" type="Dec10Typ" minOccurs="0" />
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="SchvaleniTyp">
        <xsd:all>
            <xsd:element name="vydal" type="VodopravniUradTyp" />
            <xsd:element name="dne" type="xsd:date" />
            <xsd:element name="cj" type="MediumStringTyp" />
            <xsd:element name="platnostDo" type="xsd:date" minOccurs="0" />
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="OdpovedneOsobyTyp">
        <xsd:sequence>
            <xsd:element name="odpovednaOsoba" type="OdpovednaOsobaTyp" minOccurs="1" maxOccurs="unbounded" />
        </xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="OdpovednaOsobaTyp">
        <xsd:all>
            <xsd:element name="jmeno" type="MediumStringTyp" />
            <xsd:element name="prijmeni" type="MediumStringTyp" />
            <xsd:element name="kontakt" type="KontaktHavTyp" />
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="KontaktHavTyp">
        <xsd:all>
            <xsd:element name="email" type="LongStringTyp" />
            <xsd:element name="telefon" type="TelefonTyp" />
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="PohotovostniKontaktTyp">
        <xsd:all>
            <xsd:element name="telefon" type="TelefonMobilTyp" minOccurs="0" />
            <xsd:element name="vodopravniUrad" type="VodopravniUradTyp" />
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="VodniTokyTyp">
        <xsd:sequence>
            <xsd:element name="vodniTok" type="VodniTokTyp" minOccurs="1" maxOccurs="unbounded" />
        </xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="VodniTokTyp">
        <xsd:all>
            <xsd:element name="nazev" type="MediumStringTyp" />
            <xsd:element name="cislo" type="xsd:nonNegativeInteger" />
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="VypustiTyp">
        <xsd:sequence>
            <xsd:element name="naleziKProvozovne" type="xsd:boolean" />
            <xsd:element name="vypust" type="VypustTyp" minOccurs="0" maxOccurs="unbounded" />
        </xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="VypustTyp">
        <xsd:all>
            <xsd:element name="cisloVHB" type="CisloVHBTyp" minOccurs="0" />
            <xsd:element name="souradnice" type="SouradniceHavTyp" minOccurs="0" />
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="ProduktyTyp">
        <xsd:sequence>
            <xsd:element name="produkt" type="ProduktTyp" minOccurs="1" maxOccurs="unbounded" />
        </xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="ProduktTyp">
        <xsd:all>
            <xsd:element name="poradoveCislo" type="xsd:positiveInteger" />
            <xsd:element name="nazev" type="MediumStringTyp" />
            <xsd:element name="maximalniMnozstvi" type="Decimal3FrTyp" />
            <xsd:element name="jednotka" type="ShortStringTyp" />
            <xsd:element name="latky" type="LatkyTyp" />
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="LatkyTyp">
        <xsd:sequence>
            <xsd:element name="latka" type="LatkaTyp" minOccurs="1" maxOccurs="unbounded" />
        </xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="LatkaTyp">
        <xsd:sequence>
            <xsd:element name="kod" type="ShortStringTyp" />
            <xsd:element name="upresneni" type="LatkaUpresneniTyp" minOccurs="0" maxOccurs="unbounded" />
        </xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="LatkaUpresneniTyp">
        <xsd:all>
            <xsd:element name="casKod" type="ShortStringTyp" minOccurs="0" />
            <xsd:element name="nazev" type="MediumStringTyp" />
        </xsd:all>
    </xsd:complexType>

    <xsd:complexType name="PrilohyTyp">
        <xsd:all>
            <xsd:element name="havarijniPlan" type="FileDataTyp" />
            <xsd:element name="bezpecnostniListy" type="FileDataTyp" minOccurs="0" />
        </xsd:all>
    </xsd:complexType>
    <!-- end of complex types -->

    <!-- simple types -->
    <xsd:simpleType name="CisloVHBTyp">
        <xsd:restriction base="xsd:nonNegativeInteger">
            <xsd:maxInclusive value="999999" />
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:simpleType name="Decimal8FrTyp">
        <xsd:restriction base="NonNegativeDecimal">
            <xsd:fractionDigits value="8" />
        </xsd:restriction>
    </xsd:simpleType>
    <!-- end of simple types -->

</xsd:schema>
