<?xml version="1.0" encoding="UTF-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
	<xs:element name="package" type="PackageType" />
    
	<xs:complexType name="PackageType">
        <xs:all>
            <xs:element name="dependencies" type="DependenciesType" minOccurs="1" maxOccurs="1" />
        </xs:all>
        <xs:attribute name="version" use="required" type="xs:string" />
	</xs:complexType>

	<xs:complexType name="DependenciesType">
        <xs:sequence>
            <xs:element name="dependency" type="DependencyType" maxOccurs="2" />
        </xs:sequence>
	</xs:complexType>

	<xs:complexType name="DependencyType">
        <xs:attribute name="id" use="required" type="DependencyIdentifier" />
        <xs:attribute name="majorVersion" use="required" type="DependencyMajorVersionNumber" />
        <xs:attribute name="minorVersion" use="required" type="xs:unsignedShort" />
	</xs:complexType>

    <xs:simpleType name="DependencyIdentifier">
        <xs:restriction base="xs:string">
            <xs:enumeration value="Consumer Goods Cloud - Mobile App" />
            <xs:enumeration value="Consumer Goods Cloud - Managed Package" />
        </xs:restriction>
    </xs:simpleType>

    <!-- about ten (10) years worth of version numbers -->
    <xs:simpleType name="DependencyMajorVersionNumber">
        <xs:restriction base="xs:unsignedShort">
            <xs:enumeration value="252" />
            <xs:enumeration value="254" />
            <xs:enumeration value="256" />
            <xs:enumeration value="258" />
            <xs:enumeration value="260" />
            <xs:enumeration value="262" />
            <xs:enumeration value="264" />
            <xs:enumeration value="266" />
            <xs:enumeration value="268" />
            <xs:enumeration value="270" />
            <xs:enumeration value="272" />
            <xs:enumeration value="274" />
            <xs:enumeration value="276" />
            <xs:enumeration value="278" />
            <xs:enumeration value="280" />
            <xs:enumeration value="282" />
        </xs:restriction>
    </xs:simpleType>

</xs:schema>