<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">

  <xs:element name="filelist">
    <xs:complexType>
      <xs:sequence minOccurs="0" maxOccurs="unbounded">
        <xs:element name="file" type="fileType" minOccurs="0"/>
        <xs:element name="generator" type="generatorType" minOccurs="0" maxOccurs="1"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>

  <xs:complexType name="fileType">
    <xs:sequence>
      <xs:element name="path" type="xs:string" minOccurs="1">
        <xs:annotation><xs:documentation>Nazov suboru alebo cesta k suboru vzdy udavana relativne k zadanemu zdroju v aplikacii CRZ.</xs:documentation></xs:annotation>
      </xs:element>
      <xs:element name="time" type="xs:integer" minOccurs="1">
        <xs:annotation><xs:documentation>Cas publikovania suboru vo formate timestamp</xs:documentation></xs:annotation>
      </xs:element>
      <xs:element name="hash" type="hashType" minOccurs="1">
        <xs:annotation><xs:documentation>MD5 hash suboru.</xs:documentation></xs:annotation>
      </xs:element>

    </xs:sequence>
  </xs:complexType>

  <xs:complexType name="generatorType">
    <xs:sequence>
      <xs:element name="email" type="nestringType">
        <xs:annotation><xs:documentation>Technický email, pre zasielanie notifikácii</xs:documentation></xs:annotation>
      </xs:element>
      <xs:element name="token" type="nestringType" minOccurs="0">
        <xs:annotation><xs:documentation>Pridelený token</xs:documentation></xs:annotation>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

  <!-- Hash suboru = 32 HEX-->
  <xs:simpleType name='hashType'>
    <xs:restriction base="xs:hexBinary">
      <xs:length value="16"/>
    </xs:restriction>
  </xs:simpleType>

  <!-- Neprazdny retazec - obmedzenie na max. 255 znakov -->
  <xs:simpleType name='nestringType'>
    <xs:restriction base='xs:string'>
      <xs:minLength value="1"/>
      <xs:maxLength value="255"/>
    </xs:restriction>
  </xs:simpleType>

</xs:schema>


