﻿<?xml version="1.0" encoding="utf-8"?>

<xs:schema
	attributeFormDefault="unqualified"
	elementFormDefault="qualified"
	xmlns:xs="http://www.w3.org/2001/XMLSchema">

	<xs:include schemaLocation="identities.xsd" />
	<xs:include schemaLocation="types.xsd" />

	<xs:complexType name="translatable">
		<xs:sequence>
			<xs:element name="default" minOccurs="1" maxOccurs="1" type="stringNotNull" />
			<xs:element name="se" minOccurs="0" maxOccurs="1" type="stringNotNull" />
			<xs:element name="dk" minOccurs="0" maxOccurs="1" type="stringNotNull" />
			<xs:element name="no" minOccurs="0" maxOccurs="1" type="stringNotNull" />
			<xs:element name="fi" minOccurs="0" maxOccurs="1" type="stringNotNull" />
			<xs:element name="fr" minOccurs="0" maxOccurs="1" type="stringNotNull" />
		</xs:sequence>
	</xs:complexType>

	<xs:complexType name="untranslatable">
		<xs:sequence>
			<xs:element name="default" minOccurs="1" maxOccurs="1" type="stringNotNull" />
		</xs:sequence>
	</xs:complexType>

	<xs:element name="variantBySize">
		<xs:complexType>
			<xs:sequence>
				<xs:element minOccurs="1" maxOccurs="1" name="identity" type="identity" />
				<xs:element minOccurs="1" maxOccurs="1" name="size" type="untranslatable" />
			</xs:sequence>
		</xs:complexType>
	</xs:element>

	<xs:element name="variantByColor">
		<xs:complexType>
			<xs:sequence>
				<xs:element minOccurs="1" maxOccurs="1" name="identity" type="identity" />
				<xs:element minOccurs="1" maxOccurs="1" name="color" type="translatable" />
			</xs:sequence>
		</xs:complexType>
	</xs:element>

	<xs:element name="variantByFlavor">
		<xs:complexType>
			<xs:sequence>
				<xs:element minOccurs="1" maxOccurs="1" name="identity" type="identity" />
				<xs:element minOccurs="1" maxOccurs="1" name="flavor" type="translatable" />
			</xs:sequence>
		</xs:complexType>
	</xs:element>

	<xs:element name="variantBySizeColor">
		<xs:complexType>
			<xs:sequence>
				<xs:element minOccurs="1" maxOccurs="1" name="identity" type="identity" />
				<xs:element minOccurs="1" maxOccurs="1" name="size" type="untranslatable" />
				<xs:element minOccurs="1" maxOccurs="1" name="color" type="translatable" />
			</xs:sequence>
		</xs:complexType>
	</xs:element>

	<xs:element name="variantBySizeFlavor">
		<xs:complexType>
			<xs:sequence>
				<xs:element minOccurs="1" maxOccurs="1" name="identity" type="identity" />
				<xs:element minOccurs="1" maxOccurs="1" name="size" type="untranslatable" />
				<xs:element minOccurs="1" maxOccurs="1" name="flavor" type="translatable" />
			</xs:sequence>
		</xs:complexType>
	</xs:element>

	<xs:complexType name="variants">
		<xs:choice>
			<xs:element minOccurs="1" maxOccurs="unbounded" ref="variantBySize" />
			<xs:element minOccurs="1" maxOccurs="unbounded" ref="variantByColor" />
			<xs:element minOccurs="1" maxOccurs="unbounded" ref="variantByFlavor" />
			<xs:element minOccurs="1" maxOccurs="unbounded" ref="variantBySizeColor" />
			<xs:element minOccurs="1" maxOccurs="unbounded" ref="variantBySizeFlavor" />
		</xs:choice>
	</xs:complexType>

</xs:schema>