source: RevitalizationWS/schemas/filter/trunk/src/main/resources/filter.xsd @ 7382

Subversion URL: http://proj.badc.rl.ac.uk/svn/ndg/RevitalizationWS/schemas/filter/trunk/src/main/resources/filter.xsd@7382
Revision 7382, 10.0 KB checked in by mnagni, 10 years ago (diff)

version 1.1.0 of the OGC Filter library

  • Property svn:mime-type set to text/plain
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<xsd:schema targetNamespace="http://www.opengis.net/ogc"
3   xmlns:ogc="http://www.opengis.net/ogc"
4   xmlns:gml="http://www.opengis.net/gml"
5   xmlns:xsd="http://www.w3.org/2001/XMLSchema"
6   elementFormDefault="qualified"
7   version="1.1.1">
8
9   <xsd:annotation>
10      <xsd:documentation>
11         This XML Schema defines OGC query filter capabilities documents.
12
13         filter is an OGC Standard.
14         Copyright (c) 2002,2003,2004,2010 Open Geospatial Consortium, Inc. All Rights Reserved.
15         To obtain additional rights of use, visit http://www.opengeospatial.org/legal/ .
16
17         Updated: 2010-01-22
18      </xsd:documentation>
19   </xsd:annotation>
20
21   <xsd:include schemaLocation="expr.xsd"/>
22   <xsd:include schemaLocation="sort.xsd"/>
23   <xsd:include schemaLocation="filterCapabilities.xsd"/>
24
25   <xsd:import namespace="http://www.opengis.net/gml" schemaLocation="http://schemas.opengis.net/gml/3.1.1/base/geometryAggregates.xsd"/>
26
27   <xsd:element name="_Id" type="ogc:AbstractIdType" abstract="true"/>
28   <xsd:element name="FeatureId"
29                type="ogc:FeatureIdType"
30                substitutionGroup="ogc:_Id"/>
31   <xsd:element name="GmlObjectId"
32                type="ogc:GmlObjectIdType"
33                substitutionGroup="ogc:_Id"/>
34
35   <xsd:element name="Filter" type="ogc:FilterType"/>
36   <xsd:complexType name="FilterType">
37      <xsd:choice>
38         <xsd:element ref="ogc:spatialOps"/>
39         <xsd:element ref="ogc:comparisonOps"/>
40         <xsd:element ref="ogc:logicOps"/>
41         <xsd:element ref="ogc:_Id" maxOccurs="unbounded"/>
42      </xsd:choice>
43   </xsd:complexType>
44
45   <xsd:element name="comparisonOps"
46                type="ogc:ComparisonOpsType"
47                abstract="true"/>
48   <xsd:element name="PropertyIsEqualTo"
49                type="ogc:BinaryComparisonOpType"
50                substitutionGroup="ogc:comparisonOps"/>
51   <xsd:element name="PropertyIsNotEqualTo"
52                type="ogc:BinaryComparisonOpType"
53                substitutionGroup="ogc:comparisonOps"/>
54   <xsd:element name="PropertyIsLessThan"
55                type="ogc:BinaryComparisonOpType"
56                substitutionGroup="ogc:comparisonOps"/>
57   <xsd:element name="PropertyIsGreaterThan"
58                type="ogc:BinaryComparisonOpType"
59                substitutionGroup="ogc:comparisonOps"/>
60   <xsd:element name="PropertyIsLessThanOrEqualTo"
61                type="ogc:BinaryComparisonOpType"
62                substitutionGroup="ogc:comparisonOps"/>
63   <xsd:element name="PropertyIsGreaterThanOrEqualTo"
64                type="ogc:BinaryComparisonOpType"
65                substitutionGroup="ogc:comparisonOps"/>
66   <xsd:element name="PropertyIsLike"
67                type="ogc:PropertyIsLikeType"
68                substitutionGroup="ogc:comparisonOps"/>
69   <xsd:element name="PropertyIsNull"
70                type="ogc:PropertyIsNullType"
71                substitutionGroup="ogc:comparisonOps"/>
72   <xsd:element name="PropertyIsBetween"
73                type="ogc:PropertyIsBetweenType"
74                substitutionGroup="ogc:comparisonOps"/>
75   <xsd:complexType name="ComparisonOpsType" abstract="true"/>
76   <xsd:element name="spatialOps" type="ogc:SpatialOpsType" abstract="true"/>
77   <xsd:element name="Equals"
78                type="ogc:BinarySpatialOpType"
79                substitutionGroup="ogc:spatialOps"/>
80   <xsd:element name="Disjoint"
81                type="ogc:BinarySpatialOpType"
82                substitutionGroup="ogc:spatialOps"/>
83   <xsd:element name="Touches"
84                type="ogc:BinarySpatialOpType"
85                substitutionGroup="ogc:spatialOps"/>
86   <xsd:element name="Within"
87                type="ogc:BinarySpatialOpType"
88                substitutionGroup="ogc:spatialOps"/>
89   <xsd:element name="Overlaps"
90                type="ogc:BinarySpatialOpType"
91                substitutionGroup="ogc:spatialOps"/>
92   <xsd:element name="Crosses"
93                type="ogc:BinarySpatialOpType"
94                substitutionGroup="ogc:spatialOps"/>
95   <xsd:element name="Intersects"
96                type="ogc:BinarySpatialOpType"
97                substitutionGroup="ogc:spatialOps"/>
98   <xsd:element name="Contains"
99                type="ogc:BinarySpatialOpType"
100                substitutionGroup="ogc:spatialOps"/>
101   <xsd:element name="DWithin"
102                type="ogc:DistanceBufferType"
103                substitutionGroup="ogc:spatialOps"/>
104   <xsd:element name="Beyond"
105                type="ogc:DistanceBufferType"
106                substitutionGroup="ogc:spatialOps"/>
107   <xsd:element name="BBOX"
108                type="ogc:BBOXType"
109                substitutionGroup="ogc:spatialOps"/>
110   <xsd:complexType name="SpatialOpsType" abstract="true"/>
111   <xsd:element name="logicOps" type="ogc:LogicOpsType" abstract="true"/>
112   <xsd:element name="And"
113                type="ogc:BinaryLogicOpType"
114                substitutionGroup="ogc:logicOps"/>
115   <xsd:element name="Or"
116                type="ogc:BinaryLogicOpType"
117                substitutionGroup="ogc:logicOps"/>
118   <xsd:element name="Not"
119                type="ogc:UnaryLogicOpType"
120                substitutionGroup="ogc:logicOps"/>
121   <xsd:complexType name="LogicOpsType" abstract="true"/>
122   <xsd:complexType name="AbstractIdType" abstract="true"/>
123   <xsd:complexType name="FeatureIdType">
124      <xsd:complexContent>
125         <xsd:extension base="ogc:AbstractIdType">
126            <xsd:attribute name="fid" type="xsd:ID" use="required"/>
127         </xsd:extension>
128      </xsd:complexContent>
129   </xsd:complexType>
130   <xsd:complexType name="GmlObjectIdType">
131      <xsd:complexContent>
132         <xsd:extension base="ogc:AbstractIdType">
133            <xsd:attribute ref="gml:id" use="required"/>
134         </xsd:extension>
135      </xsd:complexContent>
136   </xsd:complexType>
137   <xsd:complexType name="BinaryComparisonOpType">
138      <xsd:complexContent>
139         <xsd:extension base="ogc:ComparisonOpsType">
140            <xsd:sequence>
141               <xsd:element ref="ogc:expression" minOccurs="2" maxOccurs="2"/>
142            </xsd:sequence>
143            <xsd:attribute name="matchCase" type="xsd:boolean"
144                           use="optional" default="true"/>
145         </xsd:extension>
146      </xsd:complexContent>
147   </xsd:complexType>
148   <xsd:complexType name="PropertyIsLikeType">
149      <xsd:complexContent>
150         <xsd:extension base="ogc:ComparisonOpsType">
151            <xsd:sequence>
152               <xsd:element ref="ogc:PropertyName"/>
153               <xsd:element ref="ogc:Literal"/>
154            </xsd:sequence>
155            <xsd:attribute name="wildCard" type="xsd:string" use="required"/>
156            <xsd:attribute name="singleChar" type="xsd:string" use="required"/>
157            <xsd:attribute name="escapeChar" type="xsd:string" use="required"/>
158         </xsd:extension>
159      </xsd:complexContent>
160   </xsd:complexType>
161   <xsd:complexType name="PropertyIsNullType">
162      <xsd:complexContent>
163         <xsd:extension base="ogc:ComparisonOpsType">
164            <xsd:sequence>
165               <xsd:element ref="ogc:PropertyName"/>
166            </xsd:sequence>
167         </xsd:extension>
168      </xsd:complexContent>
169   </xsd:complexType>
170   <xsd:complexType name="PropertyIsBetweenType">
171      <xsd:complexContent>
172         <xsd:extension base="ogc:ComparisonOpsType">
173            <xsd:sequence>
174               <xsd:element ref="ogc:expression"/>
175               <xsd:element name="LowerBoundary" type="ogc:LowerBoundaryType"/>
176               <xsd:element name="UpperBoundary" type="ogc:UpperBoundaryType"/>
177            </xsd:sequence>
178         </xsd:extension>
179      </xsd:complexContent>
180   </xsd:complexType>
181   <xsd:complexType name="LowerBoundaryType">
182      <xsd:choice>
183         <xsd:element ref="ogc:expression"/>
184      </xsd:choice>
185   </xsd:complexType>
186   <xsd:complexType name="UpperBoundaryType">
187      <xsd:sequence>
188         <xsd:element ref="ogc:expression"/>
189      </xsd:sequence>
190   </xsd:complexType>
191   <xsd:complexType name="BinarySpatialOpType">
192      <xsd:complexContent>
193         <xsd:extension base="ogc:SpatialOpsType">
194            <xsd:sequence>
195               <xsd:element ref="ogc:PropertyName"/>
196               <xsd:choice>
197                  <xsd:element ref="gml:_Geometry"/>
198                  <xsd:element ref="gml:Envelope"/>
199               </xsd:choice>
200            </xsd:sequence>
201         </xsd:extension>
202      </xsd:complexContent>
203   </xsd:complexType>
204   <xsd:complexType name="BBOXType">
205      <xsd:complexContent>
206         <xsd:extension base="ogc:SpatialOpsType">
207            <xsd:sequence>
208               <xsd:element ref="ogc:PropertyName"/>
209               <xsd:element ref="gml:Envelope"/>
210            </xsd:sequence>
211         </xsd:extension>
212      </xsd:complexContent>
213   </xsd:complexType>
214   <xsd:complexType name="DistanceBufferType">
215      <xsd:complexContent>
216         <xsd:extension base="ogc:SpatialOpsType">
217            <xsd:sequence>
218               <xsd:element ref="ogc:PropertyName"/>
219               <xsd:element ref="gml:_Geometry"/>
220               <xsd:element name="Distance" type="ogc:DistanceType"/>
221            </xsd:sequence>
222         </xsd:extension>
223      </xsd:complexContent>
224   </xsd:complexType>
225   <xsd:complexType name="DistanceType">
226      <xsd:attribute name="units" type="xsd:string" use="required"/>
227   </xsd:complexType>
228   <xsd:complexType name="BinaryLogicOpType">
229      <xsd:complexContent>
230         <xsd:extension base="ogc:LogicOpsType">
231            <xsd:choice minOccurs="2" maxOccurs="unbounded">
232               <xsd:element ref="ogc:comparisonOps"/>
233               <xsd:element ref="ogc:spatialOps"/>
234               <xsd:element ref="ogc:logicOps"/>
235            </xsd:choice>
236         </xsd:extension>
237      </xsd:complexContent>
238   </xsd:complexType>
239   <xsd:complexType name="UnaryLogicOpType">
240      <xsd:complexContent>
241         <xsd:extension base="ogc:LogicOpsType">
242            <xsd:sequence>
243               <xsd:choice>
244                  <xsd:element ref="ogc:comparisonOps"/>
245                  <xsd:element ref="ogc:spatialOps"/>
246                  <xsd:element ref="ogc:logicOps"/>
247               </xsd:choice>
248            </xsd:sequence>
249         </xsd:extension>
250      </xsd:complexContent>
251   </xsd:complexType>
252</xsd:schema>
Note: See TracBrowser for help on using the repository browser.