<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2017 rel. 3 sp1 (x64) (http://www.altova.com) by Dustin Polke (ise GmbH) -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning" elementFormDefault="qualified" attributeFormDefault="unqualified" vc:minVersion="1.1">
	<xs:element name="FirmwareList">
		<xs:annotation>
			<xs:documentation>Lit of available Firmware Packages of the product</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence maxOccurs="unbounded">
				<xs:element name="Firmware">
					<xs:complexType>
						<xs:choice maxOccurs="unbounded">
							<xs:element name="Description" maxOccurs="unbounded">
								<xs:complexType>
									<xs:simpleContent>
										<xs:extension base="xs:string">
											<xs:attribute name="Language" use="optional">
												<xs:simpleType>
													<xs:restriction base="xs:string">
														<xs:pattern value="[A-Z]{2}"/>
													</xs:restriction>
												</xs:simpleType>
											</xs:attribute>
										</xs:extension>
									</xs:simpleContent>
								</xs:complexType>
								<xs:unique name="LanguageOnce">
									<xs:selector xpath="."/>
									<xs:field xpath="@Language"/>
								</xs:unique>
							</xs:element>
						</xs:choice>
						<xs:attribute name="Id" use="required">
							<xs:simpleType>
								<xs:restriction base="xs:string">
									<xs:length value="10"/>
									<xs:pattern value="[A-Z0-9]{8}[0-9]{2}"/>
								</xs:restriction>
							</xs:simpleType>
						</xs:attribute>
						<xs:attribute name="Name" type="xs:string" use="required"/>
						<xs:attribute name="Version" use="required">
							<xs:simpleType>
								<xs:restriction base="xs:string">
									<xs:pattern value="(\d+\.){3}\d+"/>
								</xs:restriction>
							</xs:simpleType>
						</xs:attribute>
						<xs:attribute name="DevicePackageUrl" use="required">
							<xs:simpleType>
								<xs:restriction base="xs:string">
									<xs:pattern value=".*\.zip"/>
								</xs:restriction>
							</xs:simpleType>
						</xs:attribute>
						<xs:attribute name="BreakingChangeToVersion" use="optional">
							<xs:simpleType>
								<xs:restriction base="xs:string">
									<xs:pattern value="(\d+\.){0,3}\d+"/>
								</xs:restriction>
							</xs:simpleType>
						</xs:attribute>
					</xs:complexType>
				</xs:element>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
</xs:schema>
