<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema targetNamespace="http://www.opengis.net/ogc/filterCapabilities" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ogcFC="http://www.opengis.net/ogc/filterCapabilities" elementFormDefault="qualified">
	<!-- Der Namespace musste geändert werden, da die Definitionen mit denen der Filterspezifikation kollidieren --> 
	<xsd:complexType name="Arithmetic_OperatorsType">
		<xsd:choice maxOccurs="unbounded">
			<xsd:element ref="ogcFC:Simple_Arithmetic"/>
			<xsd:element name="Functions" type="ogcFC:FunctionsType"/>
		</xsd:choice>
	</xsd:complexType>
	<xsd:element name="BBOX">
		<xsd:complexType/>
	</xsd:element>
	<xsd:element name="Between">
		<xsd:complexType/>
	</xsd:element>
	<xsd:element name="Beyond">
		<xsd:complexType/>
	</xsd:element>
	<xsd:complexType name="Comparison_OperatorsType">
		<xsd:choice maxOccurs="unbounded">
			<xsd:element ref="ogcFC:Simple_Comparisons"/>
			<xsd:element ref="ogcFC:Like"/>
			<xsd:element ref="ogcFC:Between"/>
			<xsd:element ref="ogcFC:NullCheck"/>
		</xsd:choice>
	</xsd:complexType>
	<xsd:element name="Contains">
		<xsd:complexType/>
	</xsd:element>
	<xsd:element name="Crosses">
		<xsd:complexType/>
	</xsd:element>
	<xsd:element name="Disjoint">
		<xsd:complexType/>
	</xsd:element>
	<xsd:element name="DWithin">
		<xsd:complexType/>
	</xsd:element>
	<xsd:element name="Equals">
		<xsd:complexType/>
	</xsd:element>
	<xsd:element name="Filter_Capabilities">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element name="Spatial_Capabilities" type="ogcFC:Spatial_CapabilitiesType"/>
				<xsd:element name="Scalar_Capabilities" type="ogcFC:Scalar_CapabilitiesType"/>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>
	<xsd:complexType name="Function_NameType">
		<xsd:simpleContent>
			<xsd:extension base="xsd:string">
				<xsd:attribute name="nArgs" type="xsd:string" use="required"/>
			</xsd:extension>
		</xsd:simpleContent>
	</xsd:complexType>
	<xsd:complexType name="Function_NamesType">
		<xsd:sequence maxOccurs="unbounded">
			<xsd:element name="Function_Name" type="ogcFC:Function_NameType"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="FunctionsType">
		<xsd:sequence>
			<xsd:element name="Function_Names" type="ogcFC:Function_NamesType"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:element name="Intersect">
		<xsd:complexType/>
	</xsd:element>
	<xsd:element name="Like">
		<xsd:complexType/>
	</xsd:element>
	<xsd:element name="Logical_Operators">
		<xsd:complexType/>
	</xsd:element>
	<xsd:element name="NullCheck">
		<xsd:complexType/>
	</xsd:element>
	<xsd:element name="Overlaps">
		<xsd:complexType/>
	</xsd:element>
	<xsd:complexType name="Scalar_CapabilitiesType">
		<xsd:choice maxOccurs="unbounded">
			<xsd:element ref="ogcFC:Logical_Operators"/>
			<xsd:element name="Comparison_Operators" type="ogcFC:Comparison_OperatorsType"/>
			<xsd:element name="Arithmetic_Operators" type="ogcFC:Arithmetic_OperatorsType"/>
		</xsd:choice>
	</xsd:complexType>
	<xsd:element name="Simple_Arithmetic">
		<xsd:complexType/>
	</xsd:element>
	<xsd:element name="Simple_Comparisons">
		<xsd:complexType/>
	</xsd:element>
	<xsd:complexType name="Spatial_CapabilitiesType">
		<xsd:sequence>
			<xsd:element name="Spatial_Operators" type="ogcFC:Spatial_OperatorsType"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Spatial_OperatorsType">
		<xsd:choice maxOccurs="unbounded">
			<xsd:element ref="ogcFC:BBOX"/>
			<xsd:element ref="ogcFC:Equals"/>
			<xsd:element ref="ogcFC:Disjoint"/>
			<xsd:element ref="ogcFC:Intersect"/>
			<xsd:element ref="ogcFC:Touches"/>
			<xsd:element ref="ogcFC:Crosses"/>
			<xsd:element ref="ogcFC:Within"/>
			<xsd:element ref="ogcFC:Contains"/>
			<xsd:element ref="ogcFC:Overlaps"/>
			<xsd:element ref="ogcFC:Beyond"/>
			<xsd:element ref="ogcFC:DWithin"/>
		</xsd:choice>
	</xsd:complexType>
	<xsd:element name="Touches">
		<xsd:complexType/>
	</xsd:element>
	<xsd:element name="Within">
		<xsd:complexType/>
	</xsd:element>
</xsd:schema>
