<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSPY v5 rel. 4 U (http://www.xmlspy.com) by Martin Oswald (Q-DAS GmbH) -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:complexType name="QueryType">
		<xs:sequence>
			<xs:element name="PartList" minOccurs="0">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Part" minOccurs="0" maxOccurs="unbounded">
							<xs:complexType>
								<xs:sequence>
									<xs:element name="CharacteristicList" minOccurs="0">
										<xs:complexType>
											<xs:sequence>
												<xs:element name="Characteristic" minOccurs="0" maxOccurs="unbounded">
													<xs:complexType>
														<xs:sequence>
															<xs:element name="ValueFilter" minOccurs="0">
																<xs:complexType>
																	<xs:sequence>
																		<xs:element name="Filter" type="FilterType"/>
																	</xs:sequence>
																</xs:complexType>
															</xs:element>
															<xs:element name="ResultFilter" minOccurs="0">
																<xs:complexType>
																	<xs:sequence>
																		<xs:element name="Filter" type="FilterType"/>
																	</xs:sequence>
																</xs:complexType>
															</xs:element>
														</xs:sequence>
														<xs:attribute name="CharacteristicKey" type="xs:integer" use="required"/>
													</xs:complexType>
												</xs:element>
											</xs:sequence>
										</xs:complexType>
									</xs:element>
									<xs:element name="CharacteristicFilter" minOccurs="0">
										<xs:complexType>
											<xs:sequence>
												<xs:element name="Filter" type="FilterType"/>
											</xs:sequence>
										</xs:complexType>
									</xs:element>
									<xs:element name="ValueFilter" minOccurs="0">
										<xs:complexType>
											<xs:sequence>
												<xs:element name="Filter" type="FilterType"/>
											</xs:sequence>
										</xs:complexType>
									</xs:element>
									<xs:element name="ResultFilter" minOccurs="0">
										<xs:complexType>
											<xs:sequence>
												<xs:element name="Filter" type="FilterType"/>
											</xs:sequence>
										</xs:complexType>
									</xs:element>
								</xs:sequence>
								<xs:attribute name="PartKey" type="xs:integer" use="required"/>
								<xs:attribute name="ShowListedCharacteristicsOnly" use="optional">
									<xs:simpleType>
										<xs:restriction base="xs:string">
											<xs:enumeration value="True"/>
											<xs:enumeration value="False"/>
										</xs:restriction>
									</xs:simpleType>
								</xs:attribute>
							</xs:complexType>
						</xs:element>
					</xs:sequence>
					<xs:attribute name="Database-ID" type="xs:integer" use="required"/>
				</xs:complexType>
			</xs:element>
			<xs:element name="PartFilter" minOccurs="0">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Filter" type="FilterType"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="CharacteristicFilter" minOccurs="0">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Filter" type="FilterType"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="ValueFilter" minOccurs="0">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Filter" type="FilterType"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="ResultFilter" minOccurs="0">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Filter" type="FilterType"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
		<xs:attribute name="id" type="xs:string" use="optional"/>
		<xs:attribute name="Name" type="xs:string" use="optional"/>
		<xs:attribute name="QueryIdent" type="xs:integer" use="optional"/>
		<xs:attribute name="UserKey" type="xs:integer" use="optional"/>
		<xs:attribute name="GroupKey" type="xs:integer" use="optional"/>
		<xs:attribute name="PartsToShow" type="xs:integer" use="required"/>
	</xs:complexType>
	<xs:complexType name="FilterType">
		<xs:sequence>
			<xs:element name="AutoQuery" minOccurs="0">
				<xs:complexType>
					<xs:attribute name="AutoQueryField_0" type="xs:integer" use="optional"/>
					<xs:attribute name="AutoQueryInterval_0" type="xs:integer" use="optional"/>
					<xs:attribute name="AutoQueryColumn_0" type="xs:integer" use="optional"/>
					<xs:attribute name="AutoQueryField_1" type="xs:integer" use="optional"/>
					<xs:attribute name="AutoQueryInterval_1" type="xs:integer" use="optional"/>
					<xs:attribute name="AutoQueryColumn_1" type="xs:integer" use="optional"/>
					<xs:attribute name="AutoQueryField_2" type="xs:integer" use="optional"/>
					<xs:attribute name="AutoQueryInterval_2" type="xs:integer" use="optional"/>
					<xs:attribute name="AutoQueryColumn_2" type="xs:integer" use="optional"/>
					<xs:attribute name="AutoQueryField_3" type="xs:integer" use="optional"/>
					<xs:attribute name="AutoQueryInterval_3" type="xs:integer" use="optional"/>
					<xs:attribute name="AutoQueryColumn_3" type="xs:integer" use="optional"/>
					<xs:attribute name="AutoQueryField_4" type="xs:integer" use="optional"/>
					<xs:attribute name="AutoQueryInterval_4" type="xs:integer" use="optional"/>
					<xs:attribute name="AutoQueryColumn_4" type="xs:integer" use="optional"/>
				</xs:complexType>
			</xs:element>
			<xs:choice minOccurs="0">
				<xs:element name="FilterCondition">
					<xs:complexType>
						<xs:attribute name="ConditionString" type="xs:string" use="required"/>
						<xs:attribute name="KRFieldString" type="xs:string" use="required"/>
						<xs:attribute name="OperatorString" type="xs:string" use="required"/>
						<xs:attribute name="ContentsString" type="xs:string" use="required"/>
						<xs:attribute name="LtModule" type="xs:integer" use="optional"/>
						<xs:attribute name="LtStrategy" type="xs:integer" use="optional"/>
						<xs:attribute name="SepFields" type="xs:string" use="optional"/>
					</xs:complexType>
				</xs:element>
				<xs:element name="SubFilters">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="Filter" type="FilterType" minOccurs="0" maxOccurs="unbounded"/>
						</xs:sequence>
						<xs:attribute name="Operator" type="xs:string" use="required"/>
					</xs:complexType>
				</xs:element>
			</xs:choice>
		</xs:sequence>
		<xs:attribute name="id" type="xs:string" use="optional"/>
		<xs:attribute name="IdentNo" type="xs:integer" use="required"/>
		<xs:attribute name="Name" type="xs:string" use="optional"/>
		<xs:attribute name="Level" type="xs:integer" use="required"/>
		<xs:attribute name="SpecialFilter" type="xs:byte" use="optional"/>
		<xs:attribute name="SpecialValues" type="xs:integer" use="optional"/>
		<xs:attribute name="EV_PP" type="xs:integer" use="optional"/>
	</xs:complexType>
</xs:schema>

