95 lines
3.6 KiB
XML
95 lines
3.6 KiB
XML
<?xml version="1.0" encoding="UTF-8" ?>
|
|
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
|
|
elementFormDefault="qualified"
|
|
attributeFormDefault="unqualified">
|
|
|
|
<xs:simpleType name="t_std_UUID4">
|
|
<xs:restriction base="xs:token">
|
|
<xs:pattern value="\s*[A-Fa-f0-9]{8}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{12}\s*"/>
|
|
<xs:whiteSpace value="collapse"/>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:complexType name="t_std_cksum">
|
|
<xs:simpleContent>
|
|
<xs:extension base="t_std_nonempty">
|
|
<xs:attribute name="hashType" use="required" type="t_std_cksum_hashtypes"/>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="t_std_cksum_file">
|
|
<xs:simpleContent>
|
|
<xs:extension base="t_std_uri">
|
|
<xs:attribute name="hashType" use="required" type="t_std_cksum_hashtypes"/>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<xs:simpleType name="t_std_cksum_hashtypes">
|
|
<!-- Geared towards python. -->
|
|
<!-- tuple(sorted(list(hashlib.algorithms_available.union(set(('adler32', 'crc32')))))) -->
|
|
<xs:restriction base="xs:string">
|
|
<xs:enumeration value="adler32"/>
|
|
<xs:enumeration value="blake2b"/>
|
|
<xs:enumeration value="blake2s"/>
|
|
<xs:enumeration value="crc32"/>
|
|
<xs:enumeration value="md4"/>
|
|
<xs:enumeration value="md5"/>
|
|
<xs:enumeration value="md5-sha1"/>
|
|
<xs:enumeration value="mdc2"/>
|
|
<xs:enumeration value="ripemd160"/>
|
|
<xs:enumeration value="sha1"/>
|
|
<xs:enumeration value="sha224"/>
|
|
<xs:enumeration value="sha256"/>
|
|
<xs:enumeration value="sha384"/>
|
|
<xs:enumeration value="sha3_224"/>
|
|
<xs:enumeration value="sha3_256"/>
|
|
<xs:enumeration value="sha3_384"/>
|
|
<xs:enumeration value="sha3_512"/>
|
|
<xs:enumeration value="sha512"/>
|
|
<xs:enumeration value="sha512_224"/>
|
|
<xs:enumeration value="sha512_256"/>
|
|
<xs:enumeration value="shake_128"/>
|
|
<xs:enumeration value="shake_256"/>
|
|
<xs:enumeration value="sm3"/>
|
|
<xs:enumeration value="whirlpool"/>
|
|
<xs:whiteSpace value="collapse"/>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:complexType name="t_std_cmdopts">
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:string">
|
|
<xs:attribute name="name" use="required" type="xs:token"/>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<xs:simpleType name="t_std_epoch_or_iso">
|
|
<!-- positiveInteger is used for UNIX Epoch. -->
|
|
<xs:union memberTypes="xs:dateTime xs:positiveInteger"/>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="t_std_nonempty">
|
|
<xs:restriction base="xs:token">
|
|
<xs:minLength value="1"/>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="t_std_uri">
|
|
<xs:restriction base="xs:anyURI">
|
|
<xs:pattern value="\s*(https?|ftps?|file)://.+\s*"/>
|
|
<xs:whiteSpace value="collapse"/>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:complexType name="t_std_verify_cksum">
|
|
<xs:sequence>
|
|
<xs:element name="checksum" minOccurs="0" maxOccurs="unbounded" type="t_std_cksum"/>
|
|
<xs:element name="checksumFile" minOccurs="0" maxOccurs="unbounded" type="t_std_cksum_file"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
</xs:schema>
|