svn-gvsig-desktop / branches / v2_0_0_prep / libraries / libGPE / testdata / CityGML.xsd @ 21425
History | View | Annotate | Download (109 KB)
1 | 18288 | jpiera | <?xml version="1.0" encoding="UTF-8"?> |
---|---|---|---|
2 | <!-- CityGML Version No. 0.3.0, May 31th, 2006--> |
||
3 | <!-- CityGML - GML3 application schema for the 3D city model of the Special Interest Group 3D (SIG 3D) of GDI NRW--> |
||
4 | <!-- Editors: Dr. Gerhard Groeger & Dr. Thomas H. Kolbe, Institute for Cartography and Geoinformation, University of Bonn --> |
||
5 | <!-- For further information see: www.citygml.org --> |
||
6 | <!-- For the history of changes and additions to this CityGML schema see file history.txt --> |
||
7 | <xs:schema targetNamespace="http://www.citygml.org/citygml/1/0/0" xmlns="http://www.citygml.org/citygml/1/0/0" xmlns:xAL="urn:oasis:names:tc:ciq:xsdschema:xAL:2.0" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:gml="http://www.opengis.net/gml" xmlns:xlink="http://www.w3.org/1999/xlink" elementFormDefault="qualified" attributeFormDefault="unqualified"> |
||
8 | <xs:import namespace="http://www.opengis.net/gml" schemaLocation="3.1.1/base/gml.xsd"/> |
||
9 | <xs:import namespace="urn:oasis:names:tc:ciq:xsdschema:xAL:2.0" schemaLocation="xAL/xAL.xsd"/> |
||
10 | <!-- ========================================================================================= --> |
||
11 | <!-- ======================Root Element: CityModel================================================ --> |
||
12 | <!-- ========================================================================================= --> |
||
13 | <xs:complexType name="CityModelType"> |
||
14 | <xs:annotation> |
||
15 | <xs:documentation>Type describing the "root" element of any city model file. It is a |
||
16 | collection whose members are restricted to be features of a city model. All features |
||
17 | are included as cityObjectMember. |
||
18 | </xs:documentation> |
||
19 | </xs:annotation> |
||
20 | <xs:complexContent> |
||
21 | <xs:extension base="gml:AbstractFeatureCollectionType"> |
||
22 | <xs:sequence/> |
||
23 | </xs:extension> |
||
24 | </xs:complexContent> |
||
25 | </xs:complexType> |
||
26 | <!-- ========================================================================================= --> |
||
27 | <xs:element name="CityModel" type="CityModelType" substitutionGroup="gml:_FeatureCollection"/> |
||
28 | <!-- ========================================================================================= --> |
||
29 | <!-- =======================================CityModel Members ================================== --> |
||
30 | <!-- ========================================================================================= --> |
||
31 | <xs:element name="cityObjectMember" type="gml:FeaturePropertyType" substitutionGroup="gml:featureMember"/> |
||
32 | <!-- ========================================================================================= --> |
||
33 | <!-- ==================================CityObject: Base Class of all Features========================== --> |
||
34 | <!-- ========================================================================================= --> |
||
35 | <xs:complexType name="_CityObjectType" abstract="true"> |
||
36 | <xs:annotation> |
||
37 | <xs:documentation>Type describing the abstract superclass of most CityGML features. |
||
38 | Its purpose is to provide a creation and a termination date as well as a reference |
||
39 | to corresponding objects in other information systems and gerneric attributes. |
||
40 | A generalization relation may be used to relate features, which represent the |
||
41 | same real-world object in different Levels-of-Detail, i.e. a feature and its generalized |
||
42 | counterpart(s). The direction of this relation is from the feature to the corresponding |
||
43 | generalized feature. |
||
44 | </xs:documentation> |
||
45 | </xs:annotation> |
||
46 | <xs:complexContent> |
||
47 | <xs:extension base="gml:AbstractFeatureType"> |
||
48 | <xs:sequence> |
||
49 | <xs:element name="creationDate" type="xs:date" minOccurs="0"/> |
||
50 | <xs:element name="terminationDate" type="xs:date" minOccurs="0"/> |
||
51 | <xs:element name="externalReference" type="ExternalReferenceType" minOccurs="0" maxOccurs="unbounded"/> |
||
52 | <xs:element ref="_genericAttribute" minOccurs="0" maxOccurs="unbounded"/> |
||
53 | <xs:element name="generalizesTo" type="GeneralizationRelationType" minOccurs="0" maxOccurs="unbounded"/> |
||
54 | </xs:sequence> |
||
55 | </xs:extension> |
||
56 | </xs:complexContent> |
||
57 | </xs:complexType> |
||
58 | <!-- ========================================================================================= --> |
||
59 | <xs:element name="_CityObject" type="_CityObjectType" abstract="true" substitutionGroup="gml:_Feature"/> |
||
60 | <!-- ========================================================================================= --> |
||
61 | <xs:complexType name="GeneralizationRelationType"> |
||
62 | <xs:annotation> |
||
63 | <xs:documentation>Denotes the relation of an CityObject to its corresponding CityObject |
||
64 | in higher LoD, i.e. to the CityObjects representing the same real world object in |
||
65 | higher LoD. </xs:documentation> |
||
66 | </xs:annotation> |
||
67 | <xs:complexContent> |
||
68 | <xs:restriction base="gml:AssociationType"> |
||
69 | <xs:sequence minOccurs="0"> |
||
70 | <xs:element ref="_CityObject"/> |
||
71 | </xs:sequence> |
||
72 | <xs:attributeGroup ref="gml:AssociationAttributeGroup"/> |
||
73 | </xs:restriction> |
||
74 | </xs:complexContent> |
||
75 | </xs:complexType> |
||
76 | <!-- ========================================================================================== --> |
||
77 | <!-- ========================================================================================== --> |
||
78 | <!-- ===========================EXTERNAL REFERENCES (all LoD)=================================== --> |
||
79 | <!-- ========================================================================================== --> |
||
80 | <xs:complexType name="ExternalReferenceType"> |
||
81 | <xs:annotation> |
||
82 | <xs:documentation>Type describing the reference to an corresponding object in an other |
||
83 | information system, for example in the german cadastre ALKIS, the german topographic |
||
84 | information system or ATKIS, ot the british OS mastermap. The reference consists of |
||
85 | the name of the external information system, represented by an URI, and the |
||
86 | reference of the external object, given either by a string or by an URI. |
||
87 | If the informationSystem element is missing in the ExternalReference, |
||
88 | the ExternalObjectReference must be an URI, which contains an indication |
||
89 | of the informationSystem. |
||
90 | </xs:documentation> |
||
91 | </xs:annotation> |
||
92 | <xs:sequence> |
||
93 | <xs:element name="informationSystem" type="xs:anyURI" minOccurs="0"/> |
||
94 | <xs:element name="externalObject" type="ExternalObjectReferenceType"/> |
||
95 | </xs:sequence> |
||
96 | </xs:complexType> |
||
97 | <!-- ========================================================================================== --> |
||
98 | <xs:complexType name="ExternalObjectReferenceType"> |
||
99 | <xs:choice> |
||
100 | <xs:element name="name" type="xs:string"/> |
||
101 | <xs:element name="uri" type="xs:anyURI"/> |
||
102 | </xs:choice> |
||
103 | </xs:complexType> |
||
104 | <!-- ========================================================================================== --> |
||
105 | <!-- ========================================================================================= --> |
||
106 | <!-- ==================================Generic CityObjects and Attributes=============================--> |
||
107 | <!-- ========================================================================================== --> |
||
108 | <!-- ========================================================================================== --> |
||
109 | <xs:complexType name="_GenericAttributeType" abstract="true"> |
||
110 | <xs:annotation> |
||
111 | <xs:documentation> Generic (user defined) attributes may be used to represent attributes |
||
112 | which are not covered explicitly by the CityGML schema. Generic attributes should be |
||
113 | used with care; they should only be used if there is no appropiate attribute available in the schema. |
||
114 | Oherwise, problems concerning semantic interoperability may arise. |
||
115 | A generic attribute has a name and a value, which has further |
||
116 | subclasses (IntAttrribute, StringAttribute, ...). |
||
117 | </xs:documentation> |
||
118 | </xs:annotation> |
||
119 | <xs:sequence/> |
||
120 | <xs:attribute name="name" type="xs:string" use="required"/> |
||
121 | </xs:complexType> |
||
122 | <!-- ========================================================================================== --> |
||
123 | <xs:element name="_genericAttribute" type="_GenericAttributeType" abstract="true"/> |
||
124 | <!-- ========================================================================================== --> |
||
125 | <xs:complexType name="StringAttributeType"> |
||
126 | <xs:annotation> |
||
127 | <xs:documentation/> |
||
128 | </xs:annotation> |
||
129 | <xs:complexContent> |
||
130 | <xs:extension base="_GenericAttributeType"> |
||
131 | <xs:sequence> |
||
132 | <xs:element name="value" type="xs:string"/> |
||
133 | </xs:sequence> |
||
134 | </xs:extension> |
||
135 | </xs:complexContent> |
||
136 | </xs:complexType> |
||
137 | <!-- ========================================================================================== --> |
||
138 | <xs:element name="stringAttribute" type="StringAttributeType" substitutionGroup="_genericAttribute"/> |
||
139 | <!-- ========================================================================================== --> |
||
140 | <xs:complexType name="IntAttributeType"> |
||
141 | <xs:annotation> |
||
142 | <xs:documentation/> |
||
143 | </xs:annotation> |
||
144 | <xs:complexContent> |
||
145 | <xs:extension base="_GenericAttributeType"> |
||
146 | <xs:sequence> |
||
147 | <xs:element name="value" type="xs:integer"/> |
||
148 | </xs:sequence> |
||
149 | </xs:extension> |
||
150 | </xs:complexContent> |
||
151 | </xs:complexType> |
||
152 | <!-- ========================================================================================== --> |
||
153 | <xs:element name="intAttribute" type="IntAttributeType" substitutionGroup="_genericAttribute"/> |
||
154 | <!-- ========================================================================================== --> |
||
155 | <xs:complexType name="DoubleAttributeType"> |
||
156 | <xs:annotation> |
||
157 | <xs:documentation/> |
||
158 | </xs:annotation> |
||
159 | <xs:complexContent> |
||
160 | <xs:extension base="_GenericAttributeType"> |
||
161 | <xs:sequence> |
||
162 | <xs:element name="value" type="xs:double"/> |
||
163 | </xs:sequence> |
||
164 | </xs:extension> |
||
165 | </xs:complexContent> |
||
166 | </xs:complexType> |
||
167 | <!-- ========================================================================================== --> |
||
168 | <xs:element name="doubleAttribute" type="DoubleAttributeType" substitutionGroup="_genericAttribute"/> |
||
169 | <!-- ========================================================================================== --> |
||
170 | <xs:complexType name="DateAttributeType"> |
||
171 | <xs:annotation> |
||
172 | <xs:documentation/> |
||
173 | </xs:annotation> |
||
174 | <xs:complexContent> |
||
175 | <xs:extension base="_GenericAttributeType"> |
||
176 | <xs:sequence> |
||
177 | <xs:element name="value" type="xs:date"/> |
||
178 | </xs:sequence> |
||
179 | </xs:extension> |
||
180 | </xs:complexContent> |
||
181 | </xs:complexType> |
||
182 | <!-- ========================================================================================== --> |
||
183 | <xs:element name="dateAttribute" type="DateAttributeType" substitutionGroup="_genericAttribute"/> |
||
184 | <!-- ========================================================================================== --> |
||
185 | <xs:complexType name="UriAttributeType"> |
||
186 | <xs:annotation> |
||
187 | <xs:documentation/> |
||
188 | </xs:annotation> |
||
189 | <xs:complexContent> |
||
190 | <xs:extension base="_GenericAttributeType"> |
||
191 | <xs:sequence> |
||
192 | <xs:element name="value" type="xs:anyURI"/> |
||
193 | </xs:sequence> |
||
194 | </xs:extension> |
||
195 | </xs:complexContent> |
||
196 | </xs:complexType> |
||
197 | <!-- ========================================================================================== --> |
||
198 | <xs:element name="uriAttribute" type="UriAttributeType" substitutionGroup="_genericAttribute"/> |
||
199 | <!-- ========================================================================================== --> |
||
200 | <xs:complexType name="GenericCityObjectType"> |
||
201 | <xs:annotation> |
||
202 | <xs:documentation/> |
||
203 | </xs:annotation> |
||
204 | <xs:complexContent> |
||
205 | <xs:extension base="_CityObjectType"> |
||
206 | <xs:sequence> |
||
207 | <xs:element name="class" type="xs:string" minOccurs="0"/> |
||
208 | <xs:element name="function" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> |
||
209 | <xs:element name="usage" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> |
||
210 | <xs:element name="lod0Geometry" type="gml:GeometryPropertyType" minOccurs="0"/> |
||
211 | <xs:element name="lod1Geometry" type="gml:GeometryPropertyType" minOccurs="0"/> |
||
212 | <xs:element name="lod2Geometry" type="gml:GeometryPropertyType" minOccurs="0"/> |
||
213 | <xs:element name="lod3Geometry" type="gml:GeometryPropertyType" minOccurs="0"/> |
||
214 | <xs:element name="lod4Geometry" type="gml:GeometryPropertyType" minOccurs="0"/> |
||
215 | <xs:element name="lod0TerrainIntersection" type="gml:MultiCurvePropertyType" minOccurs="0"/> |
||
216 | <xs:element name="lod1TerrainIntersection" type="gml:MultiCurvePropertyType" minOccurs="0"/> |
||
217 | <xs:element name="lod2TerrainIntersection" type="gml:MultiCurvePropertyType" minOccurs="0"/> |
||
218 | <xs:element name="lod3TerrainIntersection" type="gml:MultiCurvePropertyType" minOccurs="0"/> |
||
219 | <xs:element name="lod4TerrainIntersection" type="gml:MultiCurvePropertyType" minOccurs="0"/> |
||
220 | <xs:element name="lod0ImplicitRepresentation" type="ImplicitRepresentationPropertyType" minOccurs="0"/> |
||
221 | <xs:element name="lod1ImplicitRepresentation" type="ImplicitRepresentationPropertyType" minOccurs="0"/> |
||
222 | <xs:element name="lod2ImplicitRepresentation" type="ImplicitRepresentationPropertyType" minOccurs="0"/> |
||
223 | <xs:element name="lod3ImplicitRepresentation" type="ImplicitRepresentationPropertyType" minOccurs="0"/> |
||
224 | <xs:element name="lod4ImplicitRepresentation" type="ImplicitRepresentationPropertyType" minOccurs="0"/> |
||
225 | </xs:sequence> |
||
226 | </xs:extension> |
||
227 | </xs:complexContent> |
||
228 | </xs:complexType> |
||
229 | <!-- ========================================================================================== --> |
||
230 | <xs:element name="GenericCityObject" type="GenericCityObjectType" substitutionGroup="_CityObject"/> |
||
231 | <!-- ========================================================================================== --> |
||
232 | <!-- ========================================================================================== --> |
||
233 | <!-- =======================================GROUPS============================================ --> |
||
234 | <!-- ========================================================================================== --> |
||
235 | <!-- ========================================================================================== --> |
||
236 | <!-- ========================================================================================== --> |
||
237 | <xs:complexType name="CityObjectGroupType"> |
||
238 | <xs:annotation> |
||
239 | <xs:documentation> A group may be used to aggregate arbitrary CityObjects |
||
240 | according to some user-defined criteria. Examples for groups are the buildings in a |
||
241 | specific region, the result of a query, or objects put together for visualization |
||
242 | purposes. Each group has a name (inherited from AbstractGMLType), functions (e.g., |
||
243 | building group), a class and zero or more usages. A geometry may optionally be attached to a group, if |
||
244 | the geometry of the whole group differs from the geometry of the parts. Each member |
||
245 | of a group may be qualified by a role name, reflecting the role each cityObject |
||
246 | plays in the context of the group. |
||
247 | As subclass of _CityObject, a CityObjectGroup inherits all attributes and relations, in particular |
||
248 | an id, names, external references, generic attributes and generalization relations. |
||
249 | As CityObjectGroup itself is a CityObject, it may also contain groups. |
||
250 | </xs:documentation> |
||
251 | </xs:annotation> |
||
252 | <xs:complexContent> |
||
253 | <xs:extension base="_CityObjectType"> |
||
254 | <xs:sequence> |
||
255 | <xs:element name="class" type="xs:string" minOccurs="0"/> |
||
256 | <xs:element name="function" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> |
||
257 | <xs:element name="usage" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> |
||
258 | <xs:element name="groupMember" type="CityObjectGroupMemberType" minOccurs="0" maxOccurs="unbounded"/> |
||
259 | <xs:element name="geometry" type="gml:GeometryPropertyType" minOccurs="0"/> |
||
260 | </xs:sequence> |
||
261 | </xs:extension> |
||
262 | </xs:complexContent> |
||
263 | </xs:complexType> |
||
264 | <!-- ========================================================================================== --> |
||
265 | <xs:element name="CityObjectGroup" type="CityObjectGroupType" substitutionGroup="_CityObject"/> |
||
266 | <!-- ========================================================================================== --> |
||
267 | <!-- ========================================================================================== --> |
||
268 | <!-- ======================Type for Aggregation of Group Members===================================== --> |
||
269 | <!-- ========================================================================================== --> |
||
270 | <xs:complexType name="CityObjectGroupMemberType"> |
||
271 | <xs:annotation> |
||
272 | <xs:documentation>Denotes the relation of a group to its members, which are |
||
273 | CityObjects. Since an association attribute group for enabling the use of references |
||
274 | is provided, the relation may either be given by a reference to a city object defined alsewhere, or by |
||
275 | inlining of the complete city object. </xs:documentation> |
||
276 | </xs:annotation> |
||
277 | <xs:complexContent> |
||
278 | <xs:extension base="gml:AssociationType"> |
||
279 | <xs:attribute name="role" type="xs:string"/> |
||
280 | </xs:extension> |
||
281 | </xs:complexContent> |
||
282 | </xs:complexType> |
||
283 | <!-- ========================================================================================== --> |
||
284 | <!-- ======================================== Sites ============================================= --> |
||
285 | <!-- ========================================================================================== --> |
||
286 | <xs:complexType name="_SiteType" abstract="true"> |
||
287 | <xs:annotation> |
||
288 | <xs:documentation>Type describing the abstract superclass for buildings, facilities, |
||
289 | etc. Future extensions of CityGML like bridges and tunnels would be modelled as |
||
290 | subclasses of _Site. The german translation of site is 'Anlage'. |
||
291 | As subclass of _CityObject, a _Site inherits all attributes and relations, in particular |
||
292 | an id, names, external references, generic attributes and generalization relations. |
||
293 | </xs:documentation> |
||
294 | </xs:annotation> |
||
295 | <xs:complexContent> |
||
296 | <xs:extension base="_CityObjectType"/> |
||
297 | </xs:complexContent> |
||
298 | </xs:complexType> |
||
299 | <!-- ========================================================================================== --> |
||
300 | <xs:element name="_Site" type="_SiteType" abstract="true" substitutionGroup="_CityObject"/> |
||
301 | <!-- ========================================================================================== --> |
||
302 | <!-- ===================================BUILDINGS (all LoD)======================================= --> |
||
303 | <!-- ========================================================================================== --> |
||
304 | <xs:complexType name="_AbstractBuildingType" abstract="true"> |
||
305 | <xs:annotation> |
||
306 | <xs:documentation>Type describing the thematic and geometric attributes and the |
||
307 | associations of buildings. It is an abstract type, only its subclasses Building and |
||
308 | BuildingPart can be instantiated. An _AbstractBuilding may consist of BuildingParts, |
||
309 | which are again _AbstractBuildings by inheritance. Thus an aggregation hierarchy |
||
310 | between _AbstractBuildings of arbitrary depth may be specified. In such an |
||
311 | hierarchy, top elements are Buildings, while all other elements are BuildingParts. |
||
312 | Each element of such a hierarchy may have all attributes and geometries of |
||
313 | _AbstractBuildings. It must, however, be assured than no inconsistencies occur (for |
||
314 | example, if the geometry of a Building does not correspond to the geometries of its |
||
315 | parts, of if the roof type of a Building is saddle roof, while its parts have an hip |
||
316 | roof). </xs:documentation> |
||
317 | </xs:annotation> |
||
318 | <xs:complexContent> |
||
319 | <xs:extension base="_SiteType"> |
||
320 | <xs:sequence> |
||
321 | <xs:annotation> |
||
322 | <xs:documentation> The name will be represented by gml:name (inherited from |
||
323 | _GML) . list order for storeyHeightsAboveground: first floor, second |
||
324 | floor,... list order for storeyHeightsBelowground: first floor below |
||
325 | ground, second floor below ground,... The lodXMultiSurface must |
||
326 | be used, if the geometry of a building is just a collection of |
||
327 | surfaces bounding a solid, but not a topologically clean solid boundary |
||
328 | necessary for GML3 solid boundaries. |
||
329 | </xs:documentation> |
||
330 | </xs:annotation> |
||
331 | <xs:element name="class" type="BuildingClassType" minOccurs="0"/> |
||
332 | <xs:element name="function" type="BuildingFunctionType" minOccurs="0" maxOccurs="unbounded"/> |
||
333 | <xs:element name="usage" type="BuildingUsageType" minOccurs="0" maxOccurs="unbounded"/> |
||
334 | <xs:element name="yearOfConstruction" type="xs:gYear" minOccurs="0"/> |
||
335 | <xs:element name="roofType" type="RoofTypeType" minOccurs="0"/> |
||
336 | <xs:element name="measuredHeight" type="gml:LengthType" minOccurs="0"/> |
||
337 | <xs:element name="storeysAboveGround" type="xs:nonNegativeInteger" minOccurs="0"/> |
||
338 | <xs:element name="storeysBelowGround" type="xs:nonNegativeInteger" minOccurs="0"/> |
||
339 | <xs:element name="storeyHeightsAboveGround" type="gml:MeasureOrNullListType" minOccurs="0"/> |
||
340 | <xs:element name="storeyHeightsBelowGround" type="gml:MeasureOrNullListType" minOccurs="0"/> |
||
341 | <xs:element name="lod1Solid" type="gml:SolidPropertyType" minOccurs="0"/> |
||
342 | <xs:element name="lod1MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
343 | <xs:element name="lod1TerrainIntersection" type="gml:MultiCurvePropertyType" minOccurs="0"/> |
||
344 | <xs:element name="lod2Solid" type="gml:SolidPropertyType" minOccurs="0"/> |
||
345 | <xs:element name="lod2MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
346 | <xs:element name="lod2MultiCurve" type="gml:MultiCurvePropertyType" minOccurs="0"/> |
||
347 | <xs:element name="lod2TerrainIntersection" type="gml:MultiCurvePropertyType" minOccurs="0"/> |
||
348 | <xs:element name="outerBuildingInstallation" type="BuildingInstallationPropertyType" minOccurs="0" maxOccurs="unbounded"/> |
||
349 | <xs:element name="boundedBy" type="BoundarySurfacePropertyType" minOccurs="0" maxOccurs="unbounded"/> |
||
350 | <xs:element name="lod3Solid" type="gml:SolidPropertyType" minOccurs="0"/> |
||
351 | <xs:element name="lod3MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
352 | <xs:element name="lod3MultiCurve" type="gml:MultiCurvePropertyType" minOccurs="0"/> |
||
353 | <xs:element name="lod3TerrainIntersection" type="gml:MultiCurvePropertyType" minOccurs="0"/> |
||
354 | <xs:element name="lod4Solid" type="gml:SolidPropertyType" minOccurs="0"/> |
||
355 | <xs:element name="lod4MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
356 | <xs:element name="lod4MultiCurve" type="gml:MultiCurvePropertyType" minOccurs="0"/> |
||
357 | <xs:element name="lod4TerrainIntersection" type="gml:MultiCurvePropertyType" minOccurs="0"/> |
||
358 | <xs:element name="interiorRoom" type="InteriorRoomPropertyType" minOccurs="0" maxOccurs="unbounded"/> |
||
359 | <xs:element name="consistsOfBuildingPart" type="BuildingPartPropertyType" minOccurs="0" maxOccurs="unbounded"/> |
||
360 | <xs:element name="address" type="AddressPropertyType" minOccurs="0" maxOccurs="unbounded"/> |
||
361 | </xs:sequence> |
||
362 | </xs:extension> |
||
363 | </xs:complexContent> |
||
364 | </xs:complexType> |
||
365 | <!-- ========================================================================================== --> |
||
366 | <xs:element name="_AbstractBuilding" type="_AbstractBuildingType" abstract="true" substitutionGroup="_Site"/> |
||
367 | <!-- ========================================================================================== --> |
||
368 | <xs:simpleType name="BuildingClassType"> |
||
369 | <xs:annotation> |
||
370 | <xs:documentation> Class of a building. The values of this type are defined in a the XML |
||
371 | file "CityGML_ExternalCodeLists.xml", according to the dictionary concept of GML3. |
||
372 | </xs:documentation> |
||
373 | </xs:annotation> |
||
374 | <xs:restriction base="xs:string"/> |
||
375 | </xs:simpleType> |
||
376 | <!-- ========================================================================================== --> |
||
377 | <xs:simpleType name="BuildingFunctionType"> |
||
378 | <xs:annotation> |
||
379 | <xs:documentation> Intended function of a building. The values of this type are defined in the XML |
||
380 | file "CityGML_ExternalCodeLists.xml", according to the dictionary concept of GML3. |
||
381 | The values may be adopted from ALKIS, the german standard for cadastre modelling. |
||
382 | If the cadastre models from other countries differ in the building functions, |
||
383 | these values may be compiled in another codelist to be used with CityGML. |
||
384 | </xs:documentation> |
||
385 | </xs:annotation> |
||
386 | <xs:restriction base="xs:string"/> |
||
387 | </xs:simpleType> |
||
388 | <!-- ========================================================================================== --> |
||
389 | <xs:simpleType name="BuildingUsageType"> |
||
390 | <xs:annotation> |
||
391 | <xs:documentation> Actual usage of a building. The values of this type are defined in a the XML |
||
392 | file "CityGML_ExternalCodeLists.xml", according to the dictionary concept of GML3.. |
||
393 | </xs:documentation> |
||
394 | </xs:annotation> |
||
395 | <xs:restriction base="xs:string"/> |
||
396 | </xs:simpleType> |
||
397 | <!-- ========================================================================================== --> |
||
398 | <xs:simpleType name="RoofTypeType"> |
||
399 | <xs:annotation> |
||
400 | <xs:documentation>Roof Types. The values of this type are defined in a XML file, |
||
401 | according to the dictionary concept of GML3.</xs:documentation> |
||
402 | </xs:annotation> |
||
403 | <xs:restriction base="xs:string"/> |
||
404 | </xs:simpleType> |
||
405 | <!-- ========================================================================================== --> |
||
406 | <xs:complexType name="BuildingPartType"> |
||
407 | <xs:complexContent> |
||
408 | <xs:extension base="_AbstractBuildingType"/> |
||
409 | </xs:complexContent> |
||
410 | </xs:complexType> |
||
411 | <!-- ========================================================================================== --> |
||
412 | <xs:element name="BuildingPart" type="BuildingPartType" substitutionGroup="_AbstractBuilding"/> |
||
413 | <!-- ========================================================================================== --> |
||
414 | <xs:complexType name="BuildingType"> |
||
415 | <xs:complexContent> |
||
416 | <xs:extension base="_AbstractBuildingType"> |
||
417 | <xs:sequence/> |
||
418 | </xs:extension> |
||
419 | </xs:complexContent> |
||
420 | </xs:complexType> |
||
421 | <!-- ========================================================================================== --> |
||
422 | <xs:element name="Building" type="BuildingType" substitutionGroup="_AbstractBuilding"/> |
||
423 | <!-- ========================================================================================== --> |
||
424 | <xs:complexType name="BuildingPartPropertyType"> |
||
425 | <xs:annotation> |
||
426 | <xs:documentation>Denotes the relation of an _AbstractBuilding to its building parts. The |
||
427 | gml:AssociationType attribute group for enabling the |
||
428 | use of refs is not repeated in the restriction and thus omitted. The building part |
||
429 | has to be given inline, i.e. explicitely in this property. The reason for this inline definition is |
||
430 | that no BuildingPart is used by more than one building, thus the use or references to building |
||
431 | parts defined elsewhere is prohibited. |
||
432 | </xs:documentation> |
||
433 | </xs:annotation> |
||
434 | <xs:complexContent> |
||
435 | <xs:restriction base="gml:AssociationType"> |
||
436 | <xs:sequence> |
||
437 | <xs:element ref="BuildingPart"/> |
||
438 | </xs:sequence> |
||
439 | </xs:restriction> |
||
440 | </xs:complexContent> |
||
441 | </xs:complexType> |
||
442 | <!-- ========================================================================================== --> |
||
443 | <xs:complexType name="BuildingInstallationType"> |
||
444 | <xs:annotation> |
||
445 | <xs:documentation>A BuildingInstallation (German translation is 'Gebäudecharakteristik') |
||
446 | is a part of a Building which has not the significance of a BuildingPart. Examples |
||
447 | are stairs, antennas, balconies or small roofs. |
||
448 | As subclass of _CityObject, a BuildingInstallation inherits all attributes and relations, in particular |
||
449 | an id, names, external references, generic attributes and generalization relations. |
||
450 | </xs:documentation> |
||
451 | </xs:annotation> |
||
452 | <xs:complexContent> |
||
453 | <xs:extension base="_CityObjectType"> |
||
454 | <xs:sequence> |
||
455 | <xs:element name="class" type="BuildingInstallationClassType" minOccurs="0"/> |
||
456 | <xs:element name="function" type="BuildingInstallationFunctionType" minOccurs="0" maxOccurs="unbounded"/> |
||
457 | <xs:element name="usage" type="BuildingInstallationUsageType" minOccurs="0" maxOccurs="unbounded"/> |
||
458 | <xs:element name="lod2Geometry" type="gml:GeometryPropertyType" minOccurs="0"/> |
||
459 | <xs:element name="lod3Geometry" type="gml:GeometryPropertyType" minOccurs="0"/> |
||
460 | <xs:element name="lod4Geometry" type="gml:GeometryPropertyType" minOccurs="0"/> |
||
461 | </xs:sequence> |
||
462 | </xs:extension> |
||
463 | </xs:complexContent> |
||
464 | </xs:complexType> |
||
465 | <!-- ========================================================================================== --> |
||
466 | <xs:element name="BuildingInstallation" type="BuildingInstallationType" substitutionGroup="_CityObject"/> |
||
467 | <!-- ========================================================================================== --> |
||
468 | <xs:simpleType name="BuildingInstallationClassType"> |
||
469 | <xs:annotation> |
||
470 | <xs:documentation>Class of a building installation. The values of this type are defined |
||
471 | in the XML file CityGML_ExternalCodeLists.xml, according to the dictionary concept |
||
472 | of GML3. </xs:documentation> |
||
473 | </xs:annotation> |
||
474 | <xs:restriction base="xs:string"/> |
||
475 | </xs:simpleType> |
||
476 | <!-- ========================================================================================== --> |
||
477 | <xs:simpleType name="BuildingInstallationFunctionType"> |
||
478 | <xs:annotation> |
||
479 | <xs:documentation>Function of a building installation. The values of this type are |
||
480 | defined in the XML file CityGML_ExternalCodeLists.xml, according to the dictionary |
||
481 | concept of GML3. </xs:documentation> |
||
482 | </xs:annotation> |
||
483 | <xs:restriction base="xs:string"/> |
||
484 | </xs:simpleType> |
||
485 | <!-- ========================================================================================== --> |
||
486 | <xs:simpleType name="BuildingInstallationUsageType"> |
||
487 | <xs:annotation> |
||
488 | <xs:documentation>Actual Usage of a building installation. The values of this type are |
||
489 | defined in the XML file CityGML_ExternalCodeLists.xml, according to the dictionary |
||
490 | concept of GML3. </xs:documentation> |
||
491 | </xs:annotation> |
||
492 | <xs:restriction base="xs:string"/> |
||
493 | </xs:simpleType> |
||
494 | <!-- ========================================================================================== --> |
||
495 | <xs:complexType name="BuildingInstallationPropertyType"> |
||
496 | <xs:annotation> |
||
497 | <xs:documentation>Denotes the relation of an AbstractBuilding to its building |
||
498 | installations. The gml:AssociationType attribute group for enabling the |
||
499 | use of refs is not repeated in the restriction and thus omitted. The building installation |
||
500 | has to be given inline, i.e. explicitely in this property. The reason for this inline definition is |
||
501 | that no installation of a building is used by more than one building, thus the use or references to building |
||
502 | installations defined elsewhere is prohibited. |
||
503 | </xs:documentation> |
||
504 | </xs:annotation> |
||
505 | <xs:complexContent> |
||
506 | <xs:restriction base="gml:AssociationType"> |
||
507 | <xs:sequence> |
||
508 | <xs:element ref="BuildingInstallation"/> |
||
509 | </xs:sequence> |
||
510 | </xs:restriction> |
||
511 | </xs:complexContent> |
||
512 | </xs:complexType> |
||
513 | <!-- ========================================================================================== --> |
||
514 | <!-- ========================SURFACES OF BUILDINGS AND ROOMS( LoD2 to LOD4)=====================--> |
||
515 | <!-- ========================================================================================== --> |
||
516 | <xs:complexType name="_BoundarySurfaceType" abstract="true"> |
||
517 | <xs:annotation> |
||
518 | <xs:documentation>A BoundarySurface (German translation is 'Begrenzungsfläche') is a |
||
519 | thematic object which classifies surfaces bounding a building or a room. The |
||
520 | geometry of a BoundarySurface is given by MultiSurfaces. |
||
521 | As it is a subclass of _CityObject, it inherits all atributes and relations, in particular |
||
522 | the external references, the generic attributes, and the generalization relations. |
||
523 | </xs:documentation> |
||
524 | </xs:annotation> |
||
525 | <xs:complexContent> |
||
526 | <xs:extension base="_CityObjectType"> |
||
527 | <xs:sequence> |
||
528 | <xs:element name="lod2MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
529 | <xs:element name="lod3MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
530 | <xs:element name="lod4MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
531 | <xs:element name="opening" type="OpeningPropertyType" minOccurs="0" maxOccurs="unbounded"/> |
||
532 | </xs:sequence> |
||
533 | </xs:extension> |
||
534 | </xs:complexContent> |
||
535 | </xs:complexType> |
||
536 | <!-- ========================================================================================== --> |
||
537 | <xs:element name="_BoundarySurface" type="_BoundarySurfaceType" abstract="true" substitutionGroup="_CityObject"/> |
||
538 | <!-- ========================================================================================== --> |
||
539 | <xs:complexType name="RoofSurfaceType"> |
||
540 | <xs:complexContent> |
||
541 | <xs:extension base="_BoundarySurfaceType"/> |
||
542 | </xs:complexContent> |
||
543 | </xs:complexType> |
||
544 | <!-- ========================================================================================== --> |
||
545 | <xs:element name="RoofSurface" type="RoofSurfaceType" substitutionGroup="_BoundarySurface"/> |
||
546 | <!-- ========================================================================================== --> |
||
547 | <xs:complexType name="WallSurfaceType"> |
||
548 | <xs:complexContent> |
||
549 | <xs:extension base="_BoundarySurfaceType"> |
||
550 | <xs:sequence/> |
||
551 | </xs:extension> |
||
552 | </xs:complexContent> |
||
553 | </xs:complexType> |
||
554 | <!-- ========================================================================================== --> |
||
555 | <xs:element name="WallSurface" type="WallSurfaceType" substitutionGroup="_BoundarySurface"/> |
||
556 | <!-- ========================================================================================== --> |
||
557 | <xs:complexType name="GroundSurfaceType"> |
||
558 | <xs:complexContent> |
||
559 | <xs:extension base="_BoundarySurfaceType"/> |
||
560 | </xs:complexContent> |
||
561 | </xs:complexType> |
||
562 | <!-- ========================================================================================== --> |
||
563 | <xs:element name="GroundSurface" type="GroundSurfaceType" substitutionGroup="_BoundarySurface"/> |
||
564 | <!-- ========================================================================================== --> |
||
565 | <xs:complexType name="ClosureSurfaceType"> |
||
566 | <xs:complexContent> |
||
567 | <xs:extension base="_BoundarySurfaceType"/> |
||
568 | </xs:complexContent> |
||
569 | </xs:complexType> |
||
570 | <!-- ========================================================================================== --> |
||
571 | <xs:element name="ClosureSurface" type="ClosureSurfaceType" substitutionGroup="_BoundarySurface"/> |
||
572 | <!-- ========================================================================================== --> |
||
573 | <!-- ===================================LoD4 only Surfaces=========================================== --> |
||
574 | <!-- ========================================================================================== --> |
||
575 | <xs:complexType name="FloorSurfaceType"> |
||
576 | <xs:complexContent> |
||
577 | <xs:extension base="_BoundarySurfaceType"/> |
||
578 | </xs:complexContent> |
||
579 | </xs:complexType> |
||
580 | <!-- ========================================================================================== --> |
||
581 | <xs:element name="FloorSurface" type="FloorSurfaceType" substitutionGroup="_BoundarySurface"/> |
||
582 | <!-- ========================================================================================== --> |
||
583 | <xs:complexType name="InteriorWallSurfaceType"> |
||
584 | <xs:complexContent> |
||
585 | <xs:extension base="_BoundarySurfaceType"/> |
||
586 | </xs:complexContent> |
||
587 | </xs:complexType> |
||
588 | <!-- ========================================================================================== --> |
||
589 | <xs:element name="InteriorWallSurface" type="InteriorWallSurfaceType" substitutionGroup="_BoundarySurface"/> |
||
590 | <!-- ========================================================================================== --> |
||
591 | <xs:complexType name="CeilingSurfaceType"> |
||
592 | <xs:complexContent> |
||
593 | <xs:extension base="_BoundarySurfaceType"/> |
||
594 | </xs:complexContent> |
||
595 | </xs:complexType> |
||
596 | <!-- ========================================================================================== --> |
||
597 | <xs:element name="CeilingSurface" type="CeilingSurfaceType" substitutionGroup="_BoundarySurface"/> |
||
598 | <!-- ========================================================================================== --> |
||
599 | <!-- ========================================================================================== --> |
||
600 | <!-- =============================Relation of Buildings/Rooms to its bounding Surfaces=================== --> |
||
601 | <!-- ========================================================================================== --> |
||
602 | <xs:complexType name="BoundarySurfacePropertyType"> |
||
603 | <xs:annotation> |
||
604 | <xs:documentation>Denotes the relation of an Building or Room to its bounding thematic |
||
605 | surfaces (walls, roofs, ..). There is no differentiation between interior surfaces |
||
606 | bounding rooms and outer ones bounding buildings (one reason is, that |
||
607 | ClosureSurfaces belong to both types). It has to be made sure by additional |
||
608 | integrity constraints that, e.g. a building is not related to CeilingSurfaces or a |
||
609 | room not to RoofSurfaces. |
||
610 | </xs:documentation> |
||
611 | </xs:annotation> |
||
612 | <xs:complexContent> |
||
613 | <xs:restriction base="gml:AssociationType"> |
||
614 | <xs:sequence minOccurs="0"> |
||
615 | <xs:element ref="_BoundarySurface"/> |
||
616 | </xs:sequence> |
||
617 | <xs:attributeGroup ref="gml:AssociationAttributeGroup"/> |
||
618 | </xs:restriction> |
||
619 | </xs:complexContent> |
||
620 | </xs:complexType> |
||
621 | <!-- ========================================================================================== --> |
||
622 | <!-- ================================Openings (LoD3 and LoD4 only)================================= --> |
||
623 | <!-- ========================================================================================== --> |
||
624 | <xs:complexType name="OpeningPropertyType"> |
||
625 | <xs:annotation> |
||
626 | <xs:documentation>Denotes the relation of an BondarySurface to its openings (doors, |
||
627 | windows). </xs:documentation> |
||
628 | </xs:annotation> |
||
629 | <xs:complexContent> |
||
630 | <xs:restriction base="gml:AssociationType"> |
||
631 | <xs:sequence minOccurs="0"> |
||
632 | <xs:element ref="_Opening"/> |
||
633 | </xs:sequence> |
||
634 | <xs:attributeGroup ref="gml:AssociationAttributeGroup"/> |
||
635 | </xs:restriction> |
||
636 | </xs:complexContent> |
||
637 | </xs:complexType> |
||
638 | <!-- ========================================================================================== --> |
||
639 | <xs:complexType name="_OpeningType" abstract="true"> |
||
640 | <xs:annotation> |
||
641 | <xs:documentation> Type for openings (doors, windows) in walls. Used in LoD3 and LoD4 |
||
642 | only. As subclass of _CityObject, an _Opening inherits all attributes and relations, in particular |
||
643 | an id, names, external references, generic attributes and generalization relations. |
||
644 | </xs:documentation> |
||
645 | </xs:annotation> |
||
646 | <xs:complexContent> |
||
647 | <xs:extension base="_CityObjectType"> |
||
648 | <xs:sequence> |
||
649 | <xs:element name="lod3MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
650 | <xs:element name="lod4MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
651 | </xs:sequence> |
||
652 | </xs:extension> |
||
653 | </xs:complexContent> |
||
654 | </xs:complexType> |
||
655 | <!-- ========================================================================================== --> |
||
656 | <xs:element name="_Opening" type="_OpeningType" abstract="true" substitutionGroup="_CityObject"/> |
||
657 | <!-- ========================================================================================== --> |
||
658 | <xs:complexType name="WindowType"> |
||
659 | <xs:annotation> |
||
660 | <xs:documentation> Type for windows in walls. Used in LoD3 and LoD4 only . |
||
661 | As subclass of _CityObject, a window inherits all attributes and relations, in particular |
||
662 | an id, names, external references, generic attributes and generalization relations. |
||
663 | </xs:documentation> |
||
664 | </xs:annotation> |
||
665 | <xs:complexContent> |
||
666 | <xs:extension base="_OpeningType"> |
||
667 | <xs:sequence/> |
||
668 | </xs:extension> |
||
669 | </xs:complexContent> |
||
670 | </xs:complexType> |
||
671 | <!-- ========================================================================================== --> |
||
672 | <xs:element name="Window" type="WindowType" substitutionGroup="_Opening"/> |
||
673 | <!-- ========================================================================================== --> |
||
674 | <xs:complexType name="DoorType"> |
||
675 | <xs:annotation> |
||
676 | <xs:documentation> Type for doors in walls. Used in LoD3 and LoD4 only . |
||
677 | As subclass of _CityObject, a Door inherits all attributes and relations, in particular |
||
678 | an id, names, external references, generic attributes and generalization relations. |
||
679 | </xs:documentation> |
||
680 | </xs:annotation> |
||
681 | <xs:complexContent> |
||
682 | <xs:extension base="_OpeningType"> |
||
683 | <xs:sequence> |
||
684 | <xs:element name="address" type="AddressPropertyType" minOccurs="0" maxOccurs="unbounded"/> |
||
685 | </xs:sequence> |
||
686 | </xs:extension> |
||
687 | </xs:complexContent> |
||
688 | </xs:complexType> |
||
689 | <!-- ========================================================================================== --> |
||
690 | <xs:element name="Door" type="DoorType" substitutionGroup="_Opening"/> |
||
691 | <!-- ========================================================================================== --> |
||
692 | <!-- ====================================ROOMS (LoD4 only)====================================== --> |
||
693 | <!-- ========================================================================================== --> |
||
694 | <xs:complexType name="RoomType"> |
||
695 | <xs:annotation> |
||
696 | <xs:documentation>A Room is a thematic object for modelling the closed parts inside a |
||
697 | building. It has to be closed, if necessary by using closure surfaces. The geometry |
||
698 | may be either a solid, or a MultiSurface if the boundary is not topologically clean. |
||
699 | The room connectivity may be derived by detecting shared thematic openings |
||
700 | or closure surfaces: two rooms are connected if both use the same opening object or the same |
||
701 | closure surface. The thematic surfaces bounding a room are referenced by |
||
702 | the boundedBy property. |
||
703 | As subclass of _CityObject, a Room inherits all attributes and relations, in particular |
||
704 | an id, names, external references, generic attributes and generalization relations. |
||
705 | </xs:documentation> |
||
706 | </xs:annotation> |
||
707 | <xs:complexContent> |
||
708 | <xs:extension base="_CityObjectType"> |
||
709 | <xs:sequence> |
||
710 | <xs:element name="class" type="RoomClassType" minOccurs="0"/> |
||
711 | <xs:element name="function" type="RoomFunctionType" minOccurs="0" maxOccurs="unbounded"/> |
||
712 | <xs:element name="usage" type="RoomUsageType" minOccurs="0" maxOccurs="unbounded"/> |
||
713 | <xs:element name="lod4Solid" type="gml:SolidPropertyType" minOccurs="0"/> |
||
714 | <xs:element name="lod4MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
715 | <xs:element name="boundedBy" type="BoundarySurfacePropertyType" minOccurs="0" maxOccurs="unbounded"/> |
||
716 | <xs:element name="interiorFurniture" type="InteriorFurniturePropertyType" minOccurs="0" maxOccurs="unbounded"/> |
||
717 | <xs:element name="interiorBuildingInstallation" type="BuildingInstallationPropertyType" minOccurs="0" maxOccurs="unbounded"/> |
||
718 | </xs:sequence> |
||
719 | </xs:extension> |
||
720 | </xs:complexContent> |
||
721 | </xs:complexType> |
||
722 | <!-- ========================================================================================== --> |
||
723 | <xs:element name="Room" type="RoomType" substitutionGroup="_CityObject"/> |
||
724 | <!-- ========================================================================================== --> |
||
725 | <xs:simpleType name="RoomClassType"> |
||
726 | <xs:annotation> |
||
727 | <xs:documentation>Class of a room . The values of this type are defined in the XML file |
||
728 | CityGML_ExternalCodeLists.xml, according to the dictionary concept of GML3. |
||
729 | </xs:documentation> |
||
730 | </xs:annotation> |
||
731 | <xs:restriction base="xs:string"/> |
||
732 | </xs:simpleType> |
||
733 | <!-- ========================================================================================== --> |
||
734 | <xs:simpleType name="RoomFunctionType"> |
||
735 | <xs:annotation> |
||
736 | <xs:documentation>Function of a room. The values of this type are defined in the XML |
||
737 | file CityGML_ExternalCodeLists.xml, according to the dictionary concept of GML3. |
||
738 | </xs:documentation> |
||
739 | </xs:annotation> |
||
740 | <xs:restriction base="xs:string"/> |
||
741 | </xs:simpleType> |
||
742 | <!-- ========================================================================================== --> |
||
743 | <xs:simpleType name="RoomUsageType"> |
||
744 | <xs:annotation> |
||
745 | <xs:documentation>Actual Usage of a room. The values of this type are defined in the XML |
||
746 | file CityGML_ExternalCodeLists.xml, according to the dictionary concept of GML3. |
||
747 | </xs:documentation> |
||
748 | </xs:annotation> |
||
749 | <xs:restriction base="xs:string"/> |
||
750 | </xs:simpleType> |
||
751 | <!-- ========================================================================================== --> |
||
752 | <xs:complexType name="BuildingFurnitureType"> |
||
753 | <xs:annotation> |
||
754 | <xs:documentation>Type for building furnitures. As subclass of _CityObject, a BuildingFurniture inherits all |
||
755 | attributes and relations, in particular an id, names, external references, generic attributes |
||
756 | and generalization relations. |
||
757 | </xs:documentation> |
||
758 | </xs:annotation> |
||
759 | <xs:complexContent> |
||
760 | <xs:extension base="_CityObjectType"> |
||
761 | <xs:sequence> |
||
762 | <xs:element name="class" type="BuildingFurnitureClassType" minOccurs="0"/> |
||
763 | <xs:element name="function" type="BuildingFurnitureFunctionType" minOccurs="0" maxOccurs="unbounded"/> |
||
764 | <xs:element name="usage" type="BuildingFurnitureUsageType" minOccurs="0" maxOccurs="unbounded"/> |
||
765 | <xs:element name="lod4Geometry" type="gml:GeometryPropertyType" minOccurs="0"/> |
||
766 | <xs:element name="lod4ImplicitRepresentation" type="ImplicitRepresentationPropertyType" minOccurs="0"/> |
||
767 | </xs:sequence> |
||
768 | </xs:extension> |
||
769 | </xs:complexContent> |
||
770 | </xs:complexType> |
||
771 | <!-- ========================================================================================== --> |
||
772 | <xs:element name="BuildingFurniture" type="BuildingFurnitureType" substitutionGroup="_CityObject"/> |
||
773 | <!-- ========================================================================================== --> |
||
774 | <xs:simpleType name="BuildingFurnitureClassType"> |
||
775 | <xs:annotation> |
||
776 | <xs:documentation> Class of a building furniture. The values of this type are defined |
||
777 | in a XML file, according to the dictionary concept of GML3. </xs:documentation> |
||
778 | </xs:annotation> |
||
779 | <xs:restriction base="xs:string"/> |
||
780 | </xs:simpleType> |
||
781 | <!-- ========================================================================================== --> |
||
782 | <xs:simpleType name="BuildingFurnitureFunctionType"> |
||
783 | <xs:annotation> |
||
784 | <xs:documentation> Function of a building furniture. The values of this type are defined |
||
785 | in a XML file, according to the dictionary concept of GML3. </xs:documentation> |
||
786 | </xs:annotation> |
||
787 | <xs:restriction base="xs:string"/> |
||
788 | </xs:simpleType> |
||
789 | <!-- ========================================================================================== --> |
||
790 | <xs:simpleType name="BuildingFurnitureUsageType"> |
||
791 | <xs:annotation> |
||
792 | <xs:documentation> Actual Usage of a building Furniture. The values of this type are |
||
793 | defined in a XML file, according to the dictionary concept of GML3. |
||
794 | </xs:documentation> |
||
795 | </xs:annotation> |
||
796 | <xs:restriction base="xs:string"/> |
||
797 | </xs:simpleType> |
||
798 | <!-- ========================================================================================== --> |
||
799 | <!-- ========================================================================================== --> |
||
800 | <!-- ============================Relation of Building to Rooms (LoD4 only)============================= --> |
||
801 | <!-- ========================================================================================== --> |
||
802 | <!-- ========================================================================================== --> |
||
803 | <xs:complexType name="InteriorRoomPropertyType"> |
||
804 | <xs:annotation> |
||
805 | <xs:documentation>Denotes the relation of an AbstractBuilding to its rooms. The |
||
806 | gml:AssociationType attribute group for enabling the use of refs is not repeated in |
||
807 | the restriction and thus omitted. The room has to be given inline within this |
||
808 | property, not by reference. </xs:documentation> |
||
809 | </xs:annotation> |
||
810 | <xs:complexContent> |
||
811 | <xs:restriction base="gml:AssociationType"> |
||
812 | <xs:sequence> |
||
813 | <xs:element ref="Room"/> |
||
814 | </xs:sequence> |
||
815 | </xs:restriction> |
||
816 | </xs:complexContent> |
||
817 | </xs:complexType> |
||
818 | <!-- ========================================================================================== --> |
||
819 | <xs:complexType name="InteriorFurniturePropertyType"> |
||
820 | <xs:annotation> |
||
821 | <xs:documentation>Denotes the relation of a room to its interior furnitures (movable). |
||
822 | The gml:AssociationType attribute group for enabling the use of refs is not repeated |
||
823 | in the restriction and thus omitted. The BuildingFurniture has to be given |
||
824 | inline within this property, not by reference. </xs:documentation> |
||
825 | </xs:annotation> |
||
826 | <xs:complexContent> |
||
827 | <xs:restriction base="gml:AssociationType"> |
||
828 | <xs:sequence> |
||
829 | <xs:element ref="BuildingFurniture"/> |
||
830 | </xs:sequence> |
||
831 | </xs:restriction> |
||
832 | </xs:complexContent> |
||
833 | </xs:complexType> |
||
834 | <!-- ========================================================================================== --> |
||
835 | <!--==================== ================== Address (all LoD) ====================================== --> |
||
836 | <!-- ======================================uses xAL Standard====================================== --> |
||
837 | <!-- ========================================================================================== --> |
||
838 | <xs:complexType name="AddressPropertyType"> |
||
839 | <xs:annotation> |
||
840 | <xs:documentation>Denotes the relation of an AbstractBuilding or a Door to its Addresses. |
||
841 | </xs:documentation> |
||
842 | </xs:annotation> |
||
843 | <xs:complexContent> |
||
844 | <xs:restriction base="gml:AssociationType"> |
||
845 | <xs:sequence minOccurs="0"> |
||
846 | <xs:element ref="Address"/> |
||
847 | </xs:sequence> |
||
848 | <xs:attributeGroup ref="gml:AssociationAttributeGroup"/> |
||
849 | </xs:restriction> |
||
850 | </xs:complexContent> |
||
851 | </xs:complexType> |
||
852 | <!-- ========================================================================================== --> |
||
853 | <xs:complexType name="AddressType"> |
||
854 | <xs:annotation> |
||
855 | <xs:documentation>Type for addresses. It references the xAL address standard issued by the |
||
856 | OASIS consortium. |
||
857 | Please note, that addresses are modelled as GML features. Every address can be assigned zero or more |
||
858 | 2D or 3D point geometries (one gml:MultiPoint geometry) locating the entrance(s). |
||
859 | </xs:documentation> |
||
860 | </xs:annotation> |
||
861 | <xs:complexContent> |
||
862 | <xs:extension base="gml:AbstractFeatureType"> |
||
863 | <xs:sequence> |
||
864 | <xs:element name="xalAddress" type="xalAddressPropertyType"/> |
||
865 | <xs:element name="multiPoint" type="gml:MultiPointPropertyType" minOccurs="0"/> |
||
866 | </xs:sequence> |
||
867 | </xs:extension> |
||
868 | </xs:complexContent> |
||
869 | </xs:complexType> |
||
870 | <!-- ========================================================================================== --> |
||
871 | <xs:element name="Address" type="AddressType" substitutionGroup="gml:_Feature"/> |
||
872 | <!-- ========================================================================================== --> |
||
873 | <xs:complexType name="xalAddressPropertyType"> |
||
874 | <xs:annotation> |
||
875 | <xs:documentation>Denotes the relation of an Address feature to the xAL address element.</xs:documentation> |
||
876 | </xs:annotation> |
||
877 | <xs:sequence> |
||
878 | <xs:element ref="xAL:AddressDetails"/> |
||
879 | </xs:sequence> |
||
880 | </xs:complexType> |
||
881 | <!-- ========================================================================================== --> |
||
882 | <!-- ======================================MATERIAL/TEXTURES================================== --> |
||
883 | <!-- ========================================================================================== --> |
||
884 | <xs:complexType name="TexturedSurfaceType"> |
||
885 | <xs:annotation> |
||
886 | <xs:documentation> |
||
887 | The concept of positioning textures on surfaces complies with the standard X3D. |
||
888 | Because there has been no appropriate texturing concept in GML3, CityGML adds the class |
||
889 | TexturedSurface to the geometry model of GML 3. A texture is specified as a raster image referenced by an |
||
890 | URI, and can be an arbitrary resource, even in the internet. Textures are positioned by employing the concept of |
||
891 | texture coordinates, i.e. each texture coordinate matches with exactly one 3D coordinate of the TexturedSurface. |
||
892 | The use of texture coordinates allows an exact positioning and trimming of the texture on the surface geometry. |
||
893 | Each surface may be assigned one or more appearances, each refering to one side of the surface. |
||
894 | </xs:documentation> |
||
895 | </xs:annotation> |
||
896 | <xs:complexContent> |
||
897 | <xs:extension base="gml:OrientableSurfaceType"> |
||
898 | <xs:sequence> |
||
899 | <xs:element ref="appearance" maxOccurs="unbounded"/> |
||
900 | </xs:sequence> |
||
901 | </xs:extension> |
||
902 | </xs:complexContent> |
||
903 | </xs:complexType> |
||
904 | <!-- ========================================================================================== --> |
||
905 | <xs:element name="TexturedSurface" type="TexturedSurfaceType" substitutionGroup="gml:OrientableSurface"/> |
||
906 | <!-- ========================================================================================== --> |
||
907 | <xs:element name="appearance" type="_AppearancePropertyType"/> |
||
908 | <!-- ========================================================================================== --> |
||
909 | <xs:complexType name="_AppearancePropertyType"> |
||
910 | <xs:annotation> |
||
911 | <xs:documentation> A property that has an _Appearance as its value domain, which can |
||
912 | either be a Material (Color,...) or a Texture. The _Appearance Element can either |
||
913 | be encapsulated in an element of this type or an XLink reference to a remote |
||
914 | _Appearance element (where remote includes geometry elements located elsewhere in |
||
915 | the same document). Either the reference or the contained element must be given, but |
||
916 | neither both nor none. |
||
917 | The side of the surface the _Appearance refers to is given by the orientation attribute, |
||
918 | which refers to the corresponding sign attribute of the orientable surface: |
||
919 | + means the side with positive orientation, and - the side with negative orientation. |
||
920 | </xs:documentation> |
||
921 | </xs:annotation> |
||
922 | <xs:sequence> |
||
923 | <xs:element ref="_Appearance" minOccurs="0"/> |
||
924 | </xs:sequence> |
||
925 | <xs:attribute name="orientation" type="gml:SignType" default="+"/> |
||
926 | <xs:attributeGroup ref="gml:AssociationAttributeGroup"/> |
||
927 | </xs:complexType> |
||
928 | <!-- ========================================================================================== --> |
||
929 | <xs:complexType name="_AppearanceType" abstract="true"> |
||
930 | <xs:annotation> |
||
931 | <xs:documentation> This abstract type is the parent type of MaterialType and |
||
932 | SimpleTextureType. It is derived from gml:AbstractGMLType, thus |
||
933 | it inherits the attribute gml:id and may be referenced by an appearanceProperty, |
||
934 | although it is defined elsewhere in another appearanceProperty. |
||
935 | </xs:documentation> |
||
936 | </xs:annotation> |
||
937 | <xs:complexContent> |
||
938 | <xs:extension base="gml:AbstractGMLType"/> |
||
939 | </xs:complexContent> |
||
940 | </xs:complexType> |
||
941 | <!-- ========================================================================================== --> |
||
942 | <xs:element name="_Appearance" type="_AppearanceType" abstract="true" substitutionGroup="gml:_GML"/> |
||
943 | <!-- ========================================================================================== --> |
||
944 | <xs:complexType name="MaterialType"> |
||
945 | <xs:annotation> |
||
946 | <xs:documentation> Adopted from X3D standard (http://www.web3d.org/x3d/) |
||
947 | </xs:documentation> |
||
948 | </xs:annotation> |
||
949 | <xs:complexContent> |
||
950 | <xs:extension base="_AppearanceType"> |
||
951 | <xs:sequence> |
||
952 | <xs:element name="shininess" type="doubleBetween0and1" minOccurs="0"/> |
||
953 | <xs:element name="transparency" type="doubleBetween0and1" minOccurs="0"/> |
||
954 | <xs:element name="ambientIntensity" type="doubleBetween0and1" minOccurs="0"/> |
||
955 | <xs:element name="specularColor" type="Color" minOccurs="0"/> |
||
956 | <xs:element name="diffuseColor" type="Color" minOccurs="0"/> |
||
957 | <xs:element name="emissiveColor" type="Color" minOccurs="0"/> |
||
958 | </xs:sequence> |
||
959 | </xs:extension> |
||
960 | </xs:complexContent> |
||
961 | </xs:complexType> |
||
962 | <!-- ========================================================================================== --> |
||
963 | <xs:element name="Material" type="MaterialType" substitutionGroup="_Appearance"/> |
||
964 | <!-- ========================================================================================== --> |
||
965 | <xs:complexType name="SimpleTextureType"> |
||
966 | <xs:annotation> |
||
967 | <xs:documentation> Adopted from X3D standard (http://www.web3d.org/x3d/). |
||
968 | ToDo: repeat |
||
969 | </xs:documentation> |
||
970 | </xs:annotation> |
||
971 | <xs:complexContent> |
||
972 | <xs:extension base="_AppearanceType"> |
||
973 | <xs:sequence> |
||
974 | <xs:element name="textureMap" type="xs:anyURI"/> |
||
975 | <xs:element name="textureCoordinates" type="gml:doubleList"/> |
||
976 | <xs:element name="textureType" type="TextureTypeType" minOccurs="0"/> |
||
977 | <xs:element name="repeat" type="xs:boolean" minOccurs="0"/> |
||
978 | </xs:sequence> |
||
979 | </xs:extension> |
||
980 | </xs:complexContent> |
||
981 | </xs:complexType> |
||
982 | <!-- ========================================================================================== --> |
||
983 | <xs:element name="SimpleTexture" type="SimpleTextureType" substitutionGroup="_Appearance"/> |
||
984 | <!-- ========================================================================================== --> |
||
985 | <xs:simpleType name="Color"> |
||
986 | <xs:annotation> |
||
987 | <xs:documentation> List of three values (red, green, blue), separated by spaces. The |
||
988 | values must be in the range between zero and one. </xs:documentation> |
||
989 | </xs:annotation> |
||
990 | <xs:restriction base="doubleBetween0and1List"> |
||
991 | <xs:minLength value="3"/> |
||
992 | <xs:maxLength value="3"/> |
||
993 | </xs:restriction> |
||
994 | </xs:simpleType> |
||
995 | <!-- ========================================================================================== --> |
||
996 | <xs:simpleType name="TextureTypeType"> |
||
997 | <xs:annotation> |
||
998 | <xs:documentation> |
||
999 | Textures can be qualified by the attribute textureType. |
||
1000 | The textureType differentiates between textures, which are specific for a certain object and |
||
1001 | are only used for that object (specific), and prototypic textures being typical for that kind of |
||
1002 | object and are used many times for all objects of that kind (typical). A typical texture may |
||
1003 | be replaced by a specific, if available. Textures may also be classified as unknown. |
||
1004 | </xs:documentation> |
||
1005 | </xs:annotation> |
||
1006 | <xs:restriction base="xs:string"> |
||
1007 | <xs:enumeration value="specific"/> |
||
1008 | <xs:enumeration value="typical"/> |
||
1009 | <xs:enumeration value="unknown"/> |
||
1010 | </xs:restriction> |
||
1011 | </xs:simpleType> |
||
1012 | <!-- ========================================================================================== --> |
||
1013 | <!-- ========================================================================================== --> |
||
1014 | <!--======================================Transportation Model ==================================== --> |
||
1015 | <!-- ========================================================================================== --> |
||
1016 | <!-- ========================================================================================== --> |
||
1017 | <xs:complexType name="_TransportationObjectType" abstract="true"> |
||
1018 | <xs:annotation> |
||
1019 | <xs:documentation>Type describing the abstract superclass for transportation objects. |
||
1020 | </xs:documentation> |
||
1021 | </xs:annotation> |
||
1022 | <xs:complexContent> |
||
1023 | <xs:extension base="_CityObjectType"/> |
||
1024 | </xs:complexContent> |
||
1025 | </xs:complexType> |
||
1026 | <!-- ========================================================================================== --> |
||
1027 | <xs:element name="_TransportationObject" type="_CityObjectType" substitutionGroup="_CityObject"/> |
||
1028 | <!-- ========================================================================================== --> |
||
1029 | <xs:complexType name="TransportationComplexType"> |
||
1030 | <xs:annotation> |
||
1031 | <xs:documentation>Type describing transportation complexes, which are aggregated |
||
1032 | features, e.g. roads, which consist of parts (traffic areas, e.g. pedestrian path, |
||
1033 | and auxiliary traffic areas). |
||
1034 | As subclass of _CityObject, a TransportationComplex inherits all attributes and relations, in particular |
||
1035 | an id, names, external references, generic attributes and generalization relations. |
||
1036 | </xs:documentation> |
||
1037 | </xs:annotation> |
||
1038 | <xs:complexContent> |
||
1039 | <xs:extension base="_TransportationObjectType"> |
||
1040 | <xs:sequence> |
||
1041 | <xs:element name="function" type="TransportationComplexFunctionType" minOccurs="0" maxOccurs="unbounded"/> |
||
1042 | <xs:element name="usage" type="TransportationComplexUsageType" minOccurs="0" maxOccurs="unbounded"/> |
||
1043 | <xs:element name="trafficArea" type="TrafficAreaPropertyType" minOccurs="0" maxOccurs="unbounded"/> |
||
1044 | <xs:element name="auxiliaryTrafficArea" type="AuxiliaryTrafficAreaPropertyType" minOccurs="0" maxOccurs="unbounded"/> |
||
1045 | <xs:element name="lod0Network" type="gml:GeometricComplexPropertyType" minOccurs="0" maxOccurs="unbounded"/> |
||
1046 | <xs:element name="lod1MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
1047 | <xs:element name="lod2MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
1048 | <xs:element name="lod3MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
1049 | <xs:element name="lod4MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
1050 | </xs:sequence> |
||
1051 | </xs:extension> |
||
1052 | </xs:complexContent> |
||
1053 | </xs:complexType> |
||
1054 | <!-- ========================================================================================== --> |
||
1055 | <xs:element name="TransportationComplex" type="TransportationComplexType" substitutionGroup="_TransportationObject"/> |
||
1056 | <!-- ========================================================================================== --> |
||
1057 | <xs:complexType name="TrafficAreaType"> |
||
1058 | <xs:annotation> |
||
1059 | <xs:documentation>Type describing the class for traffic Areas. |
||
1060 | Traffic areas are the surfaces where traffic actually takes place. |
||
1061 | As subclass of _CityObject, a TrafficArea inherits all attributes and relations, in particular |
||
1062 | an id, names, external references, generic attributes and generalization relations. |
||
1063 | </xs:documentation> |
||
1064 | </xs:annotation> |
||
1065 | <xs:complexContent> |
||
1066 | <xs:extension base="_TransportationObjectType"> |
||
1067 | <xs:sequence> |
||
1068 | <xs:element name="usage" type="TrafficAreaUsageType" minOccurs="0" maxOccurs="unbounded"/> |
||
1069 | <xs:element name="function" type="TrafficAreaFunctionType" minOccurs="0" maxOccurs="unbounded"/> |
||
1070 | <xs:element name="surfaceMaterial" type="TrafficSurfaceMaterialType" minOccurs="0"/> |
||
1071 | <xs:element name="lod2MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
1072 | <xs:element name="lod3MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
1073 | <xs:element name="lod4MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
1074 | </xs:sequence> |
||
1075 | </xs:extension> |
||
1076 | </xs:complexContent> |
||
1077 | </xs:complexType> |
||
1078 | <!-- ========================================================================================== --> |
||
1079 | <xs:element name="TrafficArea" type="TrafficAreaType" substitutionGroup="_TransportationObject"/> |
||
1080 | <!-- ========================================================================================== --> |
||
1081 | <xs:complexType name="AuxiliaryTrafficAreaType"> |
||
1082 | <xs:annotation> |
||
1083 | <xs:documentation>Type describing the class for auxiliary traffic Areas. |
||
1084 | These are the surfaces where no traffic actually takes place, but which |
||
1085 | belong to a transportation object. Examples are kerbstones, road markings and grass stripes. |
||
1086 | As subclass of _CityObject, an AuxiliaryTrafficArea inherits all attributes and relations, in particular |
||
1087 | an id, names, external references, generic attributes and generalization relations. |
||
1088 | </xs:documentation> |
||
1089 | </xs:annotation> |
||
1090 | <xs:complexContent> |
||
1091 | <xs:extension base="_TransportationObjectType"> |
||
1092 | <xs:sequence> |
||
1093 | <xs:element name="function" type="AuxiliaryTrafficAreaFunctionType" minOccurs="0" maxOccurs="unbounded"/> |
||
1094 | <xs:element name="surfaceMaterial" type="TrafficSurfaceMaterialType" minOccurs="0"/> |
||
1095 | <xs:element name="lod2MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
1096 | <xs:element name="lod3MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
1097 | <xs:element name="lod4MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
1098 | </xs:sequence> |
||
1099 | </xs:extension> |
||
1100 | </xs:complexContent> |
||
1101 | </xs:complexType> |
||
1102 | <!-- ========================================================================================== --> |
||
1103 | <xs:element name="AuxiliaryTrafficArea" type="AuxiliaryTrafficAreaType" substitutionGroup="_TransportationObject"/> |
||
1104 | <!-- ========================================================================================== --> |
||
1105 | <xs:complexType name="TrafficAreaPropertyType"> |
||
1106 | <xs:annotation> |
||
1107 | <xs:documentation>Denotes the relation of a transportation complex to its parts, which |
||
1108 | are traffic areas in this case. Since an attribute group for enabling the use of |
||
1109 | references is provided, the relation may be given by a reference to an an element |
||
1110 | defined elsewhere or by the complete TrafficArea inline. |
||
1111 | </xs:documentation> |
||
1112 | </xs:annotation> |
||
1113 | <xs:complexContent> |
||
1114 | <xs:restriction base="gml:AssociationType"> |
||
1115 | <xs:sequence minOccurs="0"> |
||
1116 | <xs:element ref="TrafficArea"/> |
||
1117 | </xs:sequence> |
||
1118 | <xs:attributeGroup ref="gml:AssociationAttributeGroup"/> |
||
1119 | </xs:restriction> |
||
1120 | </xs:complexContent> |
||
1121 | </xs:complexType> |
||
1122 | <!-- ========================================================================================== --> |
||
1123 | <xs:complexType name="AuxiliaryTrafficAreaPropertyType"> |
||
1124 | <xs:annotation> |
||
1125 | <xs:documentation>Denotes the relation of an Transportation Complex to its parts, which |
||
1126 | are AuxiliaryTrafficAreas in this case . Since an attribute group for enabling the |
||
1127 | use of references is provided, the relation may be given by a reference to a AuxiliaryTrafficArea |
||
1128 | defined elsewhere or by the inline definition of an AuxiliaryTrafficArea. |
||
1129 | </xs:documentation> |
||
1130 | </xs:annotation> |
||
1131 | <xs:complexContent> |
||
1132 | <xs:restriction base="gml:AssociationType"> |
||
1133 | <xs:sequence minOccurs="0"> |
||
1134 | <xs:element ref="AuxiliaryTrafficArea"/> |
||
1135 | </xs:sequence> |
||
1136 | <xs:attributeGroup ref="gml:AssociationAttributeGroup"/> |
||
1137 | </xs:restriction> |
||
1138 | </xs:complexContent> |
||
1139 | </xs:complexType> |
||
1140 | <!-- ============================Subtypes of Transportation Complex=============================== --> |
||
1141 | <xs:complexType name="TrackType"> |
||
1142 | <xs:annotation> |
||
1143 | <xs:documentation>Type describing the class for tracks. A track is a small path |
||
1144 | mainly used by pedestrians. |
||
1145 | As subclass of _CityObject, a Track inherits all attributes and relations, in particular |
||
1146 | an id, names, external references, generic attributes and generalization relations. |
||
1147 | </xs:documentation> |
||
1148 | </xs:annotation> |
||
1149 | <xs:complexContent> |
||
1150 | <xs:extension base="TransportationComplexType"> |
||
1151 | <xs:sequence/> |
||
1152 | </xs:extension> |
||
1153 | </xs:complexContent> |
||
1154 | </xs:complexType> |
||
1155 | <!-- ========================================================================================== --> |
||
1156 | <xs:element name="Track" type="TrackType" substitutionGroup="TransportationComplex"/> |
||
1157 | <!-- ========================================================================================== --> |
||
1158 | <xs:complexType name="RoadType"> |
||
1159 | <xs:annotation> |
||
1160 | <xs:documentation>Type describing the class for roads. As subclass of _CityObject, a Road inherits |
||
1161 | all attributes and relations, in particular an id, names, external references, generic attributes and |
||
1162 | generalization relations. |
||
1163 | </xs:documentation> |
||
1164 | </xs:annotation> |
||
1165 | <xs:complexContent> |
||
1166 | <xs:extension base="TransportationComplexType"> |
||
1167 | <xs:sequence/> |
||
1168 | </xs:extension> |
||
1169 | </xs:complexContent> |
||
1170 | </xs:complexType> |
||
1171 | <!-- ========================================================================================== --> |
||
1172 | <xs:element name="Road" type="RoadType" substitutionGroup="TransportationComplex"/> |
||
1173 | <!-- ========================================================================================== --> |
||
1174 | <xs:complexType name="RailwayType"> |
||
1175 | <xs:annotation> |
||
1176 | <xs:documentation>Type describing the class for railways. As subclass of _CityObject, a Railway inherits all attributes |
||
1177 | and relations, in particular an id, names, external references, generic attributes and generalization relations. |
||
1178 | </xs:documentation> |
||
1179 | </xs:annotation> |
||
1180 | <xs:complexContent> |
||
1181 | <xs:extension base="TransportationComplexType"> |
||
1182 | <xs:sequence/> |
||
1183 | </xs:extension> |
||
1184 | </xs:complexContent> |
||
1185 | </xs:complexType> |
||
1186 | <!-- ========================================================================================== --> |
||
1187 | <xs:element name="Railway" type="RailwayType" substitutionGroup="TransportationComplex"/> |
||
1188 | <!-- ========================================================================================== --> |
||
1189 | <xs:complexType name="SquareType"> |
||
1190 | <xs:annotation> |
||
1191 | <xs:documentation>Type describing the class for squares. A square is an open area commonly found in |
||
1192 | cities (like a plaza). As subclass of _CityObject, a Square inherits all attributes and relations, in particular |
||
1193 | an id, names, external references, generic attributes and generalization relations. |
||
1194 | </xs:documentation> |
||
1195 | </xs:annotation> |
||
1196 | <xs:complexContent> |
||
1197 | <xs:extension base="TransportationComplexType"> |
||
1198 | <xs:sequence/> |
||
1199 | </xs:extension> |
||
1200 | </xs:complexContent> |
||
1201 | </xs:complexType> |
||
1202 | <!-- ========================================================================================== --> |
||
1203 | <xs:element name="Square" type="SquareType" substitutionGroup="TransportationComplex"/> |
||
1204 | <!-- ========================================================================================== --> |
||
1205 | <xs:simpleType name="TransportationComplexFunctionType"> |
||
1206 | <xs:annotation> |
||
1207 | <xs:documentation>Function of a transportation complex. The values of this type are |
||
1208 | defined in the XML file CityGML_ExternalCodeLists.xml, according to the dictionary |
||
1209 | concept of GML3. </xs:documentation> |
||
1210 | </xs:annotation> |
||
1211 | <xs:restriction base="xs:string"/> |
||
1212 | </xs:simpleType> |
||
1213 | <!-- ========================================================================================== --> |
||
1214 | <xs:simpleType name="TransportationComplexUsageType"> |
||
1215 | <xs:annotation> |
||
1216 | <xs:documentation>Actual Usage of a transportation complex. The values of this type are |
||
1217 | defined in the XML file CityGML_ExternalCodeLists.xml, according to the dictionary |
||
1218 | concept of GML3. </xs:documentation> |
||
1219 | </xs:annotation> |
||
1220 | <xs:restriction base="xs:string"/> |
||
1221 | </xs:simpleType> |
||
1222 | <!-- ========================================================================================== --> |
||
1223 | <xs:simpleType name="TrafficAreaFunctionType"> |
||
1224 | <xs:annotation> |
||
1225 | <xs:documentation>Function of a traffic area. The values of this type are defined in the |
||
1226 | XML file CityGML_ExternalCodeLists.xml, according to the dictionary concept of GML3. |
||
1227 | </xs:documentation> |
||
1228 | </xs:annotation> |
||
1229 | <xs:restriction base="xs:string"/> |
||
1230 | </xs:simpleType> |
||
1231 | <!-- ========================================================================================== --> |
||
1232 | <xs:simpleType name="AuxiliaryTrafficAreaFunctionType"> |
||
1233 | <xs:annotation> |
||
1234 | <xs:documentation>Function of an auxiliary traffic area. The values of this type are |
||
1235 | defined in the XML file CityGML_ExternalCodeLists.xml, according to the dictionary |
||
1236 | concept of GML3. </xs:documentation> |
||
1237 | </xs:annotation> |
||
1238 | <xs:restriction base="xs:string"/> |
||
1239 | </xs:simpleType> |
||
1240 | <!-- ========================================================================================== --> |
||
1241 | <xs:simpleType name="TrafficAreaUsageType"> |
||
1242 | <xs:annotation> |
||
1243 | <xs:documentation>Usage of a traffic area. The values of this type are defined in the |
||
1244 | XML file CityGML_ExternalCodeLists.xml, according to the dictionary concept of GML3. |
||
1245 | </xs:documentation> |
||
1246 | </xs:annotation> |
||
1247 | <xs:restriction base="xs:string"/> |
||
1248 | </xs:simpleType> |
||
1249 | <!-- ========================================================================================== --> |
||
1250 | <xs:simpleType name="TrafficSurfaceMaterialType"> |
||
1251 | <xs:annotation> |
||
1252 | <xs:documentation>Type for surface materials of transportation objects. The values of |
||
1253 | this type are defined in the XML file CityGML_ExternalCodeLists.xml, according to |
||
1254 | the dictionary concept of GML3. </xs:documentation> |
||
1255 | </xs:annotation> |
||
1256 | <xs:restriction base="xs:string"/> |
||
1257 | </xs:simpleType> |
||
1258 | <!-- ========================================================================================== --> |
||
1259 | <!-- ========================================================================================== --> |
||
1260 | <!-- ==========================================Vegetation Model=================================== --> |
||
1261 | <!-- ========================================================================================== --> |
||
1262 | <!-- ========================================================================================== --> |
||
1263 | <!-- ========================================================================================== --> |
||
1264 | <xs:complexType name="_VegetationObjectType" abstract="true"> |
||
1265 | <xs:annotation> |
||
1266 | <xs:documentation>Type describing the abstract superclass for vegetation objects. A |
||
1267 | subclass is either a SolitaryVegetationObject or a PlantCover. |
||
1268 | </xs:documentation> |
||
1269 | </xs:annotation> |
||
1270 | <xs:complexContent> |
||
1271 | <xs:extension base="_CityObjectType"/> |
||
1272 | </xs:complexContent> |
||
1273 | </xs:complexType> |
||
1274 | <!-- ========================================================================================== --> |
||
1275 | <xs:element name="_VegetationObject" type="_VegetationObjectType" substitutionGroup="_CityObject"/> |
||
1276 | <!-- ========================================================================================== --> |
||
1277 | <xs:complexType name="PlantCoverType"> |
||
1278 | <xs:annotation> |
||
1279 | <xs:documentation>Type describing Plant Covers resp. Biotopes (German translation: Vegetation). |
||
1280 | As subclass of _CityObject, a VegetationObject inherits all attributes and relations, in particular |
||
1281 | an id, names, external references, generic attributes and generalization relations. |
||
1282 | </xs:documentation> |
||
1283 | </xs:annotation> |
||
1284 | <xs:complexContent> |
||
1285 | <xs:extension base="_VegetationObjectType"> |
||
1286 | <xs:sequence> |
||
1287 | <xs:element name="class" type="PlantCoverClassType" minOccurs="0"/> |
||
1288 | <xs:element name="function" type="PlantCoverFunctionType" minOccurs="0" maxOccurs="unbounded"/> |
||
1289 | <xs:element name="averageHeight" type="gml:LengthType" minOccurs="0"/> |
||
1290 | <xs:element name="lod1MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
1291 | <xs:element name="lod2MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
1292 | <xs:element name="lod3MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
1293 | <xs:element name="lod4MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
1294 | <xs:element name="lod1MultiSolid" type="gml:MultiSolidPropertyType" minOccurs="0"/> |
||
1295 | <xs:element name="lod2MultiSolid" type="gml:MultiSolidPropertyType" minOccurs="0"/> |
||
1296 | <xs:element name="lod3MultiSolid" type="gml:MultiSolidPropertyType" minOccurs="0"/> |
||
1297 | </xs:sequence> |
||
1298 | </xs:extension> |
||
1299 | </xs:complexContent> |
||
1300 | </xs:complexType> |
||
1301 | <!-- ========================================================================================== --> |
||
1302 | <xs:element name="PlantCover" type="PlantCoverType" substitutionGroup="_VegetationObject"/> |
||
1303 | <!-- ========================================================================================== --> |
||
1304 | <xs:simpleType name="PlantCoverClassType"> |
||
1305 | <xs:annotation> |
||
1306 | <xs:documentation>Class of a PlantCover. The values of this type are defined in the XML |
||
1307 | file CityGML_ExternalCodeLists.xml, according to the dictionary concept of GML3. |
||
1308 | </xs:documentation> |
||
1309 | </xs:annotation> |
||
1310 | <xs:restriction base="xs:string"/> |
||
1311 | </xs:simpleType> |
||
1312 | <!-- ========================================================================================== --> |
||
1313 | <xs:simpleType name="PlantCoverFunctionType"> |
||
1314 | <xs:annotation> |
||
1315 | <xs:documentation>Function of a PlantCover. The values of this type are defined in the |
||
1316 | XML file CityGML_ExternalCodeLists.xml, according to the dictionary concept of GML3. |
||
1317 | </xs:documentation> |
||
1318 | </xs:annotation> |
||
1319 | <xs:restriction base="xs:string"/> |
||
1320 | </xs:simpleType> |
||
1321 | <!-- ========================================================================================== --> |
||
1322 | <xs:complexType name="SolitaryVegetationObjectType"> |
||
1323 | <xs:annotation> |
||
1324 | <xs:documentation>Type describing solitary vegetation objects, e.g., trees. Its geometry |
||
1325 | is either defined explicitly by a GML 3 geometry with absolute coordinates, or in the case |
||
1326 | of multiple occurences of the same vegetation object, implicitly by a reference to a |
||
1327 | shape definition and a transformation. The shape definition may be given in an external file. |
||
1328 | As subclass of _CityObject, a SolitaryVegetationObject inherits all attributes and relations, in particular |
||
1329 | an id, names, external references, generic attributes and generalization relations. |
||
1330 | </xs:documentation> |
||
1331 | </xs:annotation> |
||
1332 | <xs:complexContent> |
||
1333 | <xs:extension base="_VegetationObjectType"> |
||
1334 | <xs:sequence> |
||
1335 | <xs:element name="class" type="PlantClassType" minOccurs="0"/> |
||
1336 | <xs:element name="function" type="PlantFunctionType" minOccurs="0" maxOccurs="unbounded"/> |
||
1337 | <xs:element name="species" type="SpeciesType" minOccurs="0"/> |
||
1338 | <xs:element name="height" type="gml:LengthType" minOccurs="0"/> |
||
1339 | <xs:element name="trunkDiameter" type="gml:LengthType" minOccurs="0"/> |
||
1340 | <xs:element name="crownDiameter" type="gml:LengthType" minOccurs="0"/> |
||
1341 | <xs:element name="lod1Geometry" type="gml:GeometryPropertyType" minOccurs="0"/> |
||
1342 | <xs:element name="lod2Geometry" type="gml:GeometryPropertyType" minOccurs="0"/> |
||
1343 | <xs:element name="lod3Geometry" type="gml:GeometryPropertyType" minOccurs="0"/> |
||
1344 | <xs:element name="lod4Geometry" type="gml:GeometryPropertyType" minOccurs="0"/> |
||
1345 | <xs:element name="lod1ImplicitRepresentation" type="ImplicitRepresentationPropertyType" minOccurs="0"/> |
||
1346 | <xs:element name="lod2ImplicitRepresentation" type="ImplicitRepresentationPropertyType" minOccurs="0"/> |
||
1347 | <xs:element name="lod3ImplicitRepresentation" type="ImplicitRepresentationPropertyType" minOccurs="0"/> |
||
1348 | <xs:element name="lod4ImplicitRepresentation" type="ImplicitRepresentationPropertyType" minOccurs="0"/> |
||
1349 | </xs:sequence> |
||
1350 | </xs:extension> |
||
1351 | </xs:complexContent> |
||
1352 | </xs:complexType> |
||
1353 | <!-- ========================================================================================== --> |
||
1354 | <xs:element name="SolitaryVegetationObject" type="SolitaryVegetationObjectType" substitutionGroup="_VegetationObject"/> |
||
1355 | <!-- ========================================================================================== --> |
||
1356 | <xs:simpleType name="PlantClassType"> |
||
1357 | <xs:annotation> |
||
1358 | <xs:documentation>Class of a PlantType. The values of this type are defined in the XML |
||
1359 | file CityGML_ExternalCodeLists.xml, according to the dictionary concept of GML3. |
||
1360 | </xs:documentation> |
||
1361 | </xs:annotation> |
||
1362 | <xs:restriction base="xs:string"/> |
||
1363 | </xs:simpleType> |
||
1364 | <!-- ========================================================================================== --> |
||
1365 | <xs:simpleType name="PlantFunctionType"> |
||
1366 | <xs:annotation> |
||
1367 | <xs:documentation>Function of a PlantType. The values of this type are defined in the |
||
1368 | XML file CityGML_ExternalCodeLists.xml, according to the dictionary concept of GML3. |
||
1369 | </xs:documentation> |
||
1370 | </xs:annotation> |
||
1371 | <xs:restriction base="xs:string"/> |
||
1372 | </xs:simpleType> |
||
1373 | <!-- ========================================================================================== --> |
||
1374 | <xs:simpleType name="SpeciesType"> |
||
1375 | <xs:annotation> |
||
1376 | <xs:documentation>Type of a Species. The values of this type are defined in the XML file |
||
1377 | CityGML_ExternalCodeLists.xml, according to the dictionary concept of GML3. |
||
1378 | </xs:documentation> |
||
1379 | </xs:annotation> |
||
1380 | <xs:restriction base="xs:string"/> |
||
1381 | </xs:simpleType> |
||
1382 | <!-- ========================================================================================== --> |
||
1383 | <xs:complexType name="ImplicitRepresentationPropertyType"> |
||
1384 | <xs:annotation> |
||
1385 | <xs:documentation> A property that has a Implicit Representation as its value domain, |
||
1386 | which is a representation of a geometry by referencing a prototype and transforming |
||
1387 | it to its real position in space. </xs:documentation> |
||
1388 | </xs:annotation> |
||
1389 | <xs:complexContent> |
||
1390 | <xs:restriction base="gml:AssociationType"> |
||
1391 | <xs:sequence minOccurs="0"> |
||
1392 | <xs:element ref="ImplicitGeometry"/> |
||
1393 | </xs:sequence> |
||
1394 | <xs:attributeGroup ref="gml:AssociationAttributeGroup"/> |
||
1395 | </xs:restriction> |
||
1396 | </xs:complexContent> |
||
1397 | </xs:complexType> |
||
1398 | <!-- ========================================================================================== --> |
||
1399 | <xs:complexType name="ImplicitGeometryType"> |
||
1400 | <xs:annotation> |
||
1401 | <xs:documentation> Type for the implicit representation of a geometry. |
||
1402 | An implicit geometry is a geometric object, where the shape is stored only once as a prototypical geometry, |
||
1403 | e.g. a tree or other vegetation object, a traffic light or a traffic sign. |
||
1404 | This prototypic geometry object is re-used or referenced many times, wherever the corresponding feature |
||
1405 | occurs in the 3D city model. Each occurrence is represented by a link to the prototypic shape geometry |
||
1406 | (in a local cartesian coordinate system), by a transforma-tion matrix that is multiplied with each 3D |
||
1407 | coordinate tuple of the prototype, and by an anchor point denoting the base point of the object in the |
||
1408 | world coordinate reference system. In order to determine the absolute coordinates of an implicit geometry, |
||
1409 | the anchor point coordinates have to be added to the matrix multiplication results. The transformation |
||
1410 | matrix accounts for the intended rotation, scaling, and local translation of the prototype. |
||
1411 | It is a 4x4 matrix that is multiplied with the prototype coordinates using homogeneous coordinates, i.e. (x,y,z,1). |
||
1412 | This way even a projection might be modeled by the transformation matrix. |
||
1413 | The concept of implicit geometries is an enhancement of the geometry model of GML3. |
||
1414 | </xs:documentation> |
||
1415 | </xs:annotation> |
||
1416 | <xs:complexContent> |
||
1417 | <xs:extension base="gml:AbstractGMLType"> |
||
1418 | <xs:sequence> |
||
1419 | <xs:element name="mimeType" type="MimeTypeType" minOccurs="0"/> |
||
1420 | <xs:element name="transformationMatrix" type="TransformationMatrixType" minOccurs="0"/> |
||
1421 | <xs:element name="libraryObject" type="xs:anyURI" minOccurs="0"/> |
||
1422 | <xs:element name="relativeGMLGeometry" type="gml:GeometryPropertyType" minOccurs="0"/> |
||
1423 | <xs:element name="referencePoint" type="gml:PointPropertyType"/> |
||
1424 | </xs:sequence> |
||
1425 | </xs:extension> |
||
1426 | </xs:complexContent> |
||
1427 | </xs:complexType> |
||
1428 | <!-- ========================================================================================== --> |
||
1429 | <xs:element name="ImplicitGeometry" type="ImplicitGeometryType" substitutionGroup="gml:_GML"/> |
||
1430 | <!-- ========================================================================================== --> |
||
1431 | <xs:simpleType name="MimeTypeType"> |
||
1432 | <xs:annotation> |
||
1433 | <xs:documentation>MIME type of a geometry in an external library file. MIME types are defined by the |
||
1434 | IETF (Internet Engineering Task Force). The values of this type |
||
1435 | are defined in the XML file CityGML_ExternalCodeLists.xml, according to the |
||
1436 | dictionary concept of GML3. </xs:documentation> |
||
1437 | </xs:annotation> |
||
1438 | <xs:restriction base="xs:string"/> |
||
1439 | </xs:simpleType> |
||
1440 | <!-- ========================================================================================== --> |
||
1441 | <!-- ========================================================================================== --> |
||
1442 | <!-- ========================================================================================== --> |
||
1443 | <!-- ==========================================Water Bodies Model================================ --> |
||
1444 | <!-- ========================================================================================== --> |
||
1445 | <!-- ========================================================================================== --> |
||
1446 | <!-- ========================================================================================== --> |
||
1447 | <xs:complexType name="_WaterObjectType" abstract="true"> |
||
1448 | <xs:annotation> |
||
1449 | <xs:documentation>Type describing the abstract superclass for water objects. |
||
1450 | As subclass of _CityObject, a _WaterObject inherits all attributes and relations, in particular |
||
1451 | an id, names, external references, generic attributes and generalization relations. |
||
1452 | </xs:documentation> |
||
1453 | </xs:annotation> |
||
1454 | <xs:complexContent> |
||
1455 | <xs:extension base="_CityObjectType"/> |
||
1456 | </xs:complexContent> |
||
1457 | </xs:complexType> |
||
1458 | <!-- ========================================================================================== --> |
||
1459 | <xs:element name="_WaterObject" type="_WaterObjectType" substitutionGroup="_CityObject"/> |
||
1460 | <!-- ========================================================================================== --> |
||
1461 | <xs:complexType name="WaterBodyType"> |
||
1462 | <xs:annotation> |
||
1463 | <xs:documentation>Type describing Water Bodies, e.g., lakes, rivers. |
||
1464 | As subclass of _CityObject, a WaterBody inherits all attributes and relations, in particular |
||
1465 | an id, names, external references, generic attributes and generalization relations. |
||
1466 | </xs:documentation> |
||
1467 | </xs:annotation> |
||
1468 | <xs:complexContent> |
||
1469 | <xs:extension base="_WaterObjectType"> |
||
1470 | <xs:sequence> |
||
1471 | <xs:element name="class" type="WaterBodyClassType" minOccurs="0"/> |
||
1472 | <xs:element name="function" type="WaterBodyFunctionType" minOccurs="0" maxOccurs="unbounded"/> |
||
1473 | <xs:element name="usage" type="WaterBodyUsageType" minOccurs="0" maxOccurs="unbounded"/> |
||
1474 | <xs:element name="lod0MultiCurve" type="gml:MultiCurvePropertyType" minOccurs="0"/> |
||
1475 | <xs:element name="lod0MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
1476 | <xs:element name="lod1MultiCurve" type="gml:MultiCurvePropertyType" minOccurs="0"/> |
||
1477 | <xs:element name="lod1MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
1478 | <xs:element name="lod1Solid" type="gml:SolidPropertyType" minOccurs="0"/> |
||
1479 | <xs:element name="lod2Solid" type="gml:SolidPropertyType" minOccurs="0"/> |
||
1480 | <xs:element name="lod3Solid" type="gml:SolidPropertyType" minOccurs="0"/> |
||
1481 | <xs:element name="lod4Solid" type="gml:SolidPropertyType" minOccurs="0"/> |
||
1482 | <xs:element name="boundedBy" type="BoundedByWaterSurfacePropertyType" minOccurs="0" maxOccurs="unbounded"/> |
||
1483 | </xs:sequence> |
||
1484 | </xs:extension> |
||
1485 | </xs:complexContent> |
||
1486 | </xs:complexType> |
||
1487 | <!-- ========================================================================================== --> |
||
1488 | <xs:element name="WaterBody" type="WaterBodyType" substitutionGroup="_WaterObject"/> |
||
1489 | <!-- ========================================================================================== --> |
||
1490 | <xs:simpleType name="WaterBodyClassType"> |
||
1491 | <xs:annotation> |
||
1492 | <xs:documentation>Class of a Water Body. The values of this type are defined in the XML |
||
1493 | file CityGML_ExternalCodeLists.xml, according to the dictionary concept of GML3. |
||
1494 | </xs:documentation> |
||
1495 | </xs:annotation> |
||
1496 | <xs:restriction base="xs:string"/> |
||
1497 | </xs:simpleType> |
||
1498 | <!-- ========================================================================================== --> |
||
1499 | <xs:simpleType name="WaterBodyFunctionType"> |
||
1500 | <xs:annotation> |
||
1501 | <xs:documentation>Function of a Water Body. The values of this type are defined in the |
||
1502 | XML file CityGML_ExternalCodeLists.xml, according to the dictionary concept of GML3. |
||
1503 | </xs:documentation> |
||
1504 | </xs:annotation> |
||
1505 | <xs:restriction base="xs:string"/> |
||
1506 | </xs:simpleType> |
||
1507 | <!-- ========================================================================================== --> |
||
1508 | <xs:simpleType name="WaterBodyUsageType"> |
||
1509 | <xs:annotation> |
||
1510 | <xs:documentation>Actual usage of a water body. The values of this type are defined in |
||
1511 | the XML file CityGML_ExternalCodeLists.xml, according to the dictionary concept of |
||
1512 | GML3. </xs:documentation> |
||
1513 | </xs:annotation> |
||
1514 | <xs:restriction base="xs:string"/> |
||
1515 | </xs:simpleType> |
||
1516 | <!-- ========================================================================================== --> |
||
1517 | <xs:complexType name="BoundedByWaterSurfacePropertyType"> |
||
1518 | <xs:annotation> |
||
1519 | <xs:documentation> A type for a property of a Water Body denoting its boundary, which is a water surface. |
||
1520 | Since an attribute group for enabling the use of references is provided, the relation may be given |
||
1521 | by a reference to a WaterBoundarySurface |
||
1522 | defined elsewhere or by the inline definition of a WaterBoundarySurface. |
||
1523 | </xs:documentation> |
||
1524 | </xs:annotation> |
||
1525 | <xs:complexContent> |
||
1526 | <xs:restriction base="gml:AssociationType"> |
||
1527 | <xs:sequence minOccurs="0"> |
||
1528 | <xs:element ref="_WaterBoundarySurface"/> |
||
1529 | </xs:sequence> |
||
1530 | <xs:attributeGroup ref="gml:AssociationAttributeGroup"/> |
||
1531 | </xs:restriction> |
||
1532 | </xs:complexContent> |
||
1533 | </xs:complexType> |
||
1534 | <!-- ========================================================================================== --> |
||
1535 | <xs:complexType name="_WaterBoundarySurfaceType" abstract="true"> |
||
1536 | <xs:annotation> |
||
1537 | <xs:documentation>A WaterBoundarySurface is a thematic object which classifies surfaces |
||
1538 | bounding a water body. </xs:documentation> |
||
1539 | </xs:annotation> |
||
1540 | <xs:complexContent> |
||
1541 | <xs:extension base="_CityObjectType"> |
||
1542 | <xs:sequence> |
||
1543 | <xs:element name="lod2Surface" type="gml:SurfacePropertyType" minOccurs="0"/> |
||
1544 | <xs:element name="lod3Surface" type="gml:SurfacePropertyType" minOccurs="0"/> |
||
1545 | <xs:element name="lod4Surface" type="gml:SurfacePropertyType" minOccurs="0"/> |
||
1546 | </xs:sequence> |
||
1547 | </xs:extension> |
||
1548 | </xs:complexContent> |
||
1549 | </xs:complexType> |
||
1550 | <!-- ========================================================================================== --> |
||
1551 | <xs:element name="_WaterBoundarySurface" type="_WaterBoundarySurfaceType" abstract="true" substitutionGroup="_CityObject"/> |
||
1552 | <!-- ========================================================================================== --> |
||
1553 | <xs:simpleType name="WaterLevelType"> |
||
1554 | <xs:annotation> |
||
1555 | <xs:documentation>Type for the specification of the level of a water surface. |
||
1556 | The optional attribute waterLevel of a WaterSurface can be used to describe the water level, |
||
1557 | for which the given 3D surface geometry was acquired. This is especially important, when the |
||
1558 | water body is influenced by the tide. The values of this type are defined in the XML |
||
1559 | file CityGML_ExternalCodeLists.xml, according to the dictionary concept of GML3. |
||
1560 | </xs:documentation> |
||
1561 | </xs:annotation> |
||
1562 | <xs:restriction base="xs:string"/> |
||
1563 | </xs:simpleType> |
||
1564 | <!-- ========================================================================================== --> |
||
1565 | <xs:complexType name="WaterSurfaceType"> |
||
1566 | <xs:annotation> |
||
1567 | <xs:documentation>Type describing the surface of a water body, which separates |
||
1568 | the water from the air. As subclass of _CityObject, a WaterSurface inherits all attributes and relations, in particular |
||
1569 | an id, names, external references, generic attributes and generalization relations. |
||
1570 | </xs:documentation> |
||
1571 | </xs:annotation> |
||
1572 | <xs:complexContent> |
||
1573 | <xs:extension base="_WaterBoundarySurfaceType"> |
||
1574 | <xs:sequence> |
||
1575 | <xs:element name="waterLevel" type="WaterLevelType" minOccurs="0"/> |
||
1576 | </xs:sequence> |
||
1577 | </xs:extension> |
||
1578 | </xs:complexContent> |
||
1579 | </xs:complexType> |
||
1580 | <!-- ========================================================================================== --> |
||
1581 | <xs:element name="WaterSurface" type="WaterSurfaceType" substitutionGroup="_WaterBoundarySurface"/> |
||
1582 | <!-- ========================================================================================== --> |
||
1583 | <xs:complexType name="WaterGroundSurfaceType"> |
||
1584 | <xs:annotation> |
||
1585 | <xs:documentation>Type describing the ground surface of a water body, i.e. the boundary |
||
1586 | to the digital terrain model. As subclass of _CityObject, a WaterGroundSurface |
||
1587 | inherits all attributes and relations, in particular |
||
1588 | an id, names, external references, generic attributes and generalization relations. |
||
1589 | </xs:documentation> |
||
1590 | </xs:annotation> |
||
1591 | <xs:complexContent> |
||
1592 | <xs:extension base="_WaterBoundarySurfaceType"> |
||
1593 | <xs:sequence/> |
||
1594 | </xs:extension> |
||
1595 | </xs:complexContent> |
||
1596 | </xs:complexType> |
||
1597 | <!-- ========================================================================================== --> |
||
1598 | <xs:element name="WaterGroundSurface" type="WaterGroundSurfaceType" substitutionGroup="_WaterBoundarySurface"/> |
||
1599 | <!-- ========================================================================================== --> |
||
1600 | <xs:complexType name="WaterClosureSurfaceType"> |
||
1601 | <xs:annotation> |
||
1602 | <xs:documentation>Type describing the closure surface between water bodys. |
||
1603 | As subclass of _CityObject, a WaterClosureSurface inherits all attributes and relations, in particular |
||
1604 | an id, names, external references, generic attributes and generalization relations. |
||
1605 | </xs:documentation> |
||
1606 | </xs:annotation> |
||
1607 | <xs:complexContent> |
||
1608 | <xs:extension base="_WaterBoundarySurfaceType"> |
||
1609 | <xs:sequence/> |
||
1610 | </xs:extension> |
||
1611 | </xs:complexContent> |
||
1612 | </xs:complexType> |
||
1613 | <!-- ========================================================================================== --> |
||
1614 | <xs:element name="WaterClosureSurface" type="WaterClosureSurfaceType" substitutionGroup="_WaterBoundarySurface"/> |
||
1615 | <!-- ========================================================================================== --> |
||
1616 | <!-- ========================================================================================== --> |
||
1617 | <!-- ========================================================================================== --> |
||
1618 | <!-- ==========================================Land Use ======================================== --> |
||
1619 | <!-- ========================================================================================== --> |
||
1620 | <!-- ========================================================================================== --> |
||
1621 | <xs:complexType name="LandUseType"> |
||
1622 | <xs:annotation> |
||
1623 | <xs:documentation>Type describing the class for Land Use in all LoD. LandUse objects describe areas |
||
1624 | of the earth’s surface dedicated to a specific land use. The geometry must consist of 3-D surfaces. |
||
1625 | As subclass of _CityObject, a LandUse inherits all attributes and relations, in particular |
||
1626 | an id, names, external references, generic attributes and generalization relations. |
||
1627 | </xs:documentation> |
||
1628 | </xs:annotation> |
||
1629 | <xs:complexContent> |
||
1630 | <xs:extension base="_CityObjectType"> |
||
1631 | <xs:sequence> |
||
1632 | <xs:element name="class" type="LandUseClassType" minOccurs="0"/> |
||
1633 | <xs:element name="function" type="LandUseFunctionType" minOccurs="0" maxOccurs="unbounded"/> |
||
1634 | <xs:element name="usage" type="LandUseUsageType" minOccurs="0" maxOccurs="unbounded"/> |
||
1635 | <xs:element name="lod0MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
1636 | <xs:element name="lod1MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
1637 | <xs:element name="lod2MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
1638 | <xs:element name="lod3MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
1639 | <xs:element name="lod4MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/> |
||
1640 | </xs:sequence> |
||
1641 | </xs:extension> |
||
1642 | </xs:complexContent> |
||
1643 | </xs:complexType> |
||
1644 | <!-- ========================================================================================== --> |
||
1645 | <xs:element name="LandUse" type="LandUseType" substitutionGroup="_CityObject"/> |
||
1646 | <!-- ========================================================================================== --> |
||
1647 | <xs:simpleType name="LandUseClassType"> |
||
1648 | <xs:annotation> |
||
1649 | <xs:documentation>Class of a Landuse. The values of this type are defined in the XML |
||
1650 | file CityGML_ExternalCodeLists.xml, according to the dictionary concept of GML3. |
||
1651 | </xs:documentation> |
||
1652 | </xs:annotation> |
||
1653 | <xs:restriction base="xs:string"/> |
||
1654 | </xs:simpleType> |
||
1655 | <!-- ========================================================================================== --> |
||
1656 | <xs:simpleType name="LandUseFunctionType"> |
||
1657 | <xs:annotation> |
||
1658 | <xs:documentation>Function of a Landuse. The values of this type are defined in the XML |
||
1659 | file CityGML_ExternalCodeLists.xml, according to the dictionary concept of GML3. |
||
1660 | </xs:documentation> |
||
1661 | </xs:annotation> |
||
1662 | <xs:restriction base="xs:string"/> |
||
1663 | </xs:simpleType> |
||
1664 | <!-- ========================================================================================== --> |
||
1665 | <xs:simpleType name="LandUseUsageType"> |
||
1666 | <xs:annotation> |
||
1667 | <xs:documentation>Usage of a Landuse. The values of this type are defined in the XML |
||
1668 | file CityGML_ExternalCodeLists.xml, according to the dictionary concept of GML3. |
||
1669 | </xs:documentation> |
||
1670 | </xs:annotation> |
||
1671 | <xs:restriction base="xs:string"/> |
||
1672 | </xs:simpleType> |
||
1673 | <!-- ========================================================================================== --> |
||
1674 | <!-- =========================================City Model Furnitures================================= --> |
||
1675 | <!-- ========================================================================================== --> |
||
1676 | <xs:complexType name="CityFurnitureType"> |
||
1677 | <xs:annotation> |
||
1678 | <xs:documentation>Type describing city furnitures, like traffic lights, benches, ... |
||
1679 | As subclass of _CityObject, a CityFurniture inherits all attributes and relations, in particular |
||
1680 | an id, names, external references, generic attributes and generalization relations. |
||
1681 | </xs:documentation> |
||
1682 | </xs:annotation> |
||
1683 | <xs:complexContent> |
||
1684 | <xs:extension base="_CityObjectType"> |
||
1685 | <xs:sequence> |
||
1686 | <xs:element name="class" type="CityFurnitureClassType" minOccurs="0"/> |
||
1687 | <xs:element name="function" type="CityFurnitureFunctionType" minOccurs="0" maxOccurs="unbounded"/> |
||
1688 | <xs:element name="lod1Geometry" type="gml:GeometryPropertyType" minOccurs="0"/> |
||
1689 | <xs:element name="lod2Geometry" type="gml:GeometryPropertyType" minOccurs="0"/> |
||
1690 | <xs:element name="lod3Geometry" type="gml:GeometryPropertyType" minOccurs="0"/> |
||
1691 | <xs:element name="lod4Geometry" type="gml:GeometryPropertyType" minOccurs="0"/> |
||
1692 | <xs:element name="lod1ImplicitRepresentation" type="ImplicitRepresentationPropertyType" minOccurs="0"/> |
||
1693 | <xs:element name="lod2ImplicitRepresentation" type="ImplicitRepresentationPropertyType" minOccurs="0"/> |
||
1694 | <xs:element name="lod3ImplicitRepresentation" type="ImplicitRepresentationPropertyType" minOccurs="0"/> |
||
1695 | <xs:element name="lod4ImplicitRepresentation" type="ImplicitRepresentationPropertyType" minOccurs="0"/> |
||
1696 | </xs:sequence> |
||
1697 | </xs:extension> |
||
1698 | </xs:complexContent> |
||
1699 | </xs:complexType> |
||
1700 | <!-- ========================================================================================== --> |
||
1701 | <xs:element name="CityFurniture" type="CityFurnitureType" substitutionGroup="_CityObject"/> |
||
1702 | <!-- ========================================================================================== --> |
||
1703 | <xs:simpleType name="CityFurnitureFunctionType"> |
||
1704 | <xs:annotation> |
||
1705 | <xs:documentation>Function of a Furniture. The values of this type are defined in the |
||
1706 | XML file CityGML_ExternalCodeLists.xml, according to the dictionary concept of GML3. |
||
1707 | </xs:documentation> |
||
1708 | </xs:annotation> |
||
1709 | <xs:restriction base="xs:string"/> |
||
1710 | </xs:simpleType> |
||
1711 | <!-- ========================================================================================== --> |
||
1712 | <xs:simpleType name="CityFurnitureClassType"> |
||
1713 | <xs:annotation> |
||
1714 | <xs:documentation>Class of a Furniture. The values of this type are defined in the XML |
||
1715 | file CityGML_ExternalCodeLists.xml, according to the dictionary concept of GML3. |
||
1716 | </xs:documentation> |
||
1717 | </xs:annotation> |
||
1718 | <xs:restriction base="xs:string"/> |
||
1719 | </xs:simpleType> |
||
1720 | <!-- ========================================================================================== --> |
||
1721 | <!-- ========================================================================================== --> |
||
1722 | <!-- =========================================Digital Terrain Model================================= --> |
||
1723 | <!-- ========================================================================================== --> |
||
1724 | <!-- ========================================================================================== --> |
||
1725 | <xs:complexType name="ReliefFeatureType"> |
||
1726 | <xs:annotation> |
||
1727 | <xs:documentation>Type describing the features of the Digital Terrain Model. |
||
1728 | As subclass of _CityObject, a ReliefFeature inherits all attributes and relations, in particular |
||
1729 | an id, names, external references, generic attributes and generalization relations. |
||
1730 | </xs:documentation> |
||
1731 | </xs:annotation> |
||
1732 | <xs:complexContent> |
||
1733 | <xs:extension base="_CityObjectType"> |
||
1734 | <xs:sequence> |
||
1735 | <xs:element name="lod" type="integerBetween0and4"/> |
||
1736 | <xs:element name="reliefComponent" type="ReliefComponentPropertyType" maxOccurs="unbounded"/> |
||
1737 | </xs:sequence> |
||
1738 | </xs:extension> |
||
1739 | </xs:complexContent> |
||
1740 | </xs:complexType> |
||
1741 | <!-- ========================================================================================== --> |
||
1742 | <xs:element name="ReliefFeature" type="ReliefFeatureType" substitutionGroup="_CityObject"/> |
||
1743 | <!-- ========================================================================================== --> |
||
1744 | <xs:complexType name="_ReliefComponentType" abstract="true"> |
||
1745 | <xs:annotation> |
||
1746 | <xs:documentation>Type describing the vomponents of a relief feature - either a TIN, a |
||
1747 | Grid, mass points or break lines. |
||
1748 | As subclass of _CityObject, a ReliefComponent inherits all attributes and relations, in particular |
||
1749 | an id, names, external references, generic attributes and generalization relations. |
||
1750 | </xs:documentation> |
||
1751 | </xs:annotation> |
||
1752 | <xs:complexContent> |
||
1753 | <xs:extension base="_CityObjectType"> |
||
1754 | <xs:sequence> |
||
1755 | <xs:element name="lod" type="integerBetween0and4"/> |
||
1756 | <xs:element name="extent" type="gml:PolygonPropertyType" minOccurs="0"/> |
||
1757 | </xs:sequence> |
||
1758 | </xs:extension> |
||
1759 | </xs:complexContent> |
||
1760 | </xs:complexType> |
||
1761 | <!-- ========================================================================================== --> |
||
1762 | <xs:element name="_ReliefComponent" type="_ReliefComponentType" abstract="true" substitutionGroup="_CityObject"/> |
||
1763 | <!-- ========================================================================================== --> |
||
1764 | <xs:complexType name="ReliefComponentPropertyType"> |
||
1765 | <xs:annotation> |
||
1766 | <xs:documentation>Denotes the relation of a relief feature to its components. The |
||
1767 | relation may be given by a reference to a component definede elsewhere or by the complete inline |
||
1768 | definition of a component. |
||
1769 | </xs:documentation> |
||
1770 | </xs:annotation> |
||
1771 | <xs:complexContent> |
||
1772 | <xs:restriction base="gml:AssociationType"> |
||
1773 | <xs:sequence minOccurs="0"> |
||
1774 | <xs:element ref="_ReliefComponent"/> |
||
1775 | </xs:sequence> |
||
1776 | <xs:attributeGroup ref="gml:AssociationAttributeGroup"/> |
||
1777 | </xs:restriction> |
||
1778 | </xs:complexContent> |
||
1779 | </xs:complexType> |
||
1780 | <!-- ========================================================================================== --> |
||
1781 | <xs:complexType name="TINReliefType"> |
||
1782 | <xs:annotation> |
||
1783 | <xs:documentation>Type describing the TIN component of a relief feature. |
||
1784 | As subclass of _CityObject, a TINRelief inherits all attributes and relations, in particular |
||
1785 | an id, names, external references, generic attributes and generalization relations. |
||
1786 | </xs:documentation> |
||
1787 | </xs:annotation> |
||
1788 | <xs:complexContent> |
||
1789 | <xs:extension base="_ReliefComponentType"> |
||
1790 | <xs:sequence> |
||
1791 | <xs:element name="tin" type="tinPropertyType"/> |
||
1792 | </xs:sequence> |
||
1793 | </xs:extension> |
||
1794 | </xs:complexContent> |
||
1795 | </xs:complexType> |
||
1796 | <!-- ========================================================================================== --> |
||
1797 | <xs:element name="TINRelief" type="TINReliefType" substitutionGroup="_ReliefComponent"/> |
||
1798 | <!-- ========================================================================================== --> |
||
1799 | <xs:complexType name="RasterReliefType"> |
||
1800 | <xs:annotation> |
||
1801 | <xs:documentation>Type describing the raster component of a relief feature. |
||
1802 | As subclass of _CityObject, a RasterRelief inherits all attributes and relations, in particular |
||
1803 | an id, names, external references, generic attributes and generalization relations. |
||
1804 | </xs:documentation> |
||
1805 | </xs:annotation> |
||
1806 | <xs:complexContent> |
||
1807 | <xs:extension base="_ReliefComponentType"> |
||
1808 | <xs:sequence> |
||
1809 | <xs:element name="grid" type="gridPropertyType"/> |
||
1810 | </xs:sequence> |
||
1811 | </xs:extension> |
||
1812 | </xs:complexContent> |
||
1813 | </xs:complexType> |
||
1814 | <!-- ========================================================================================== --> |
||
1815 | <xs:element name="RasterRelief" type="RasterReliefType" substitutionGroup="_ReliefComponent"/> |
||
1816 | <!-- ========================================================================================== --> |
||
1817 | <xs:complexType name="MassPointReliefType"> |
||
1818 | <xs:annotation> |
||
1819 | <xs:documentation>Type describing the mass point component of a relief feature. |
||
1820 | As subclass of _CityObject, a MassPoint Relief inherits all attributes and relations, in particular |
||
1821 | an id, names, external references, generic attributes and generalization relations. |
||
1822 | </xs:documentation> |
||
1823 | </xs:annotation> |
||
1824 | <xs:complexContent> |
||
1825 | <xs:extension base="_ReliefComponentType"> |
||
1826 | <xs:sequence> |
||
1827 | <xs:element name="reliefPoints" type="gml:MultiPointPropertyType"/> |
||
1828 | </xs:sequence> |
||
1829 | </xs:extension> |
||
1830 | </xs:complexContent> |
||
1831 | </xs:complexType> |
||
1832 | <!-- ========================================================================================== --> |
||
1833 | <xs:element name="MassPointRelief" type="MassPointReliefType" substitutionGroup="_ReliefComponent"/> |
||
1834 | <!-- ========================================================================================== --> |
||
1835 | <xs:complexType name="BreaklineReliefType"> |
||
1836 | <xs:annotation> |
||
1837 | <xs:documentation>Type describing the break line Component of a relief feature. A break |
||
1838 | line relief consists of break lines or ridgeOrValleyLines (German Translation: |
||
1839 | Geripplinie) |
||
1840 | As subclass of _CityObject, a BreaklineRelief inherits all attributes and relations, in particular |
||
1841 | an id, names, external references, generic attributes and generalization relations. |
||
1842 | </xs:documentation> |
||
1843 | </xs:annotation> |
||
1844 | <xs:complexContent> |
||
1845 | <xs:extension base="_ReliefComponentType"> |
||
1846 | <xs:sequence> |
||
1847 | <xs:choice> |
||
1848 | <xs:element name="ridgeOrValleyLines" type="gml:MultiCurvePropertyType" minOccurs="0"/> |
||
1849 | <xs:element name="breaklines" type="gml:MultiCurvePropertyType" minOccurs="0"/> |
||
1850 | </xs:choice> |
||
1851 | </xs:sequence> |
||
1852 | </xs:extension> |
||
1853 | </xs:complexContent> |
||
1854 | </xs:complexType> |
||
1855 | <!-- ========================================================================================== --> |
||
1856 | <xs:element name="BreaklineRelief" type="BreaklineReliefType" substitutionGroup="_ReliefComponent"/> |
||
1857 | <!-- ========================================================================================== --> |
||
1858 | <xs:complexType name="tinPropertyType"> |
||
1859 | <xs:complexContent> |
||
1860 | <xs:restriction base="gml:AssociationType"> |
||
1861 | <xs:sequence minOccurs="0"> |
||
1862 | <xs:element ref="gml:TriangulatedSurface"/> |
||
1863 | </xs:sequence> |
||
1864 | <xs:attributeGroup ref="gml:AssociationAttributeGroup"/> |
||
1865 | </xs:restriction> |
||
1866 | </xs:complexContent> |
||
1867 | </xs:complexType> |
||
1868 | <!-- ========================================================================================== --> |
||
1869 | <xs:complexType name="gridPropertyType"> |
||
1870 | <xs:complexContent> |
||
1871 | <xs:restriction base="gml:AssociationType"> |
||
1872 | <xs:sequence minOccurs="0"> |
||
1873 | <xs:element ref="gml:RectifiedGridCoverage"/> |
||
1874 | </xs:sequence> |
||
1875 | <xs:attributeGroup ref="gml:AssociationAttributeGroup"/> |
||
1876 | </xs:restriction> |
||
1877 | </xs:complexContent> |
||
1878 | </xs:complexType> |
||
1879 | <!-- ========================================================================================== --> |
||
1880 | <!-- ============= The height values of the grid are represented by Elevation elements, which have a height ======= --> |
||
1881 | <!-- ============= value and a unit of measurement, e.g. meter. ======= --> |
||
1882 | <!-- ========================================================================================== --> |
||
1883 | <xs:element name="Elevation" type="gml:LengthType" substitutionGroup="gml:_Object"/> |
||
1884 | <!-- ========================================================================================== --> |
||
1885 | <!-- ========================================================================================== --> |
||
1886 | <!-- ==========================================Miscellaneous===================================== --> |
||
1887 | <!-- ========================================================================================== --> |
||
1888 | <!-- ========================================================================================== --> |
||
1889 | <xs:simpleType name="doubleBetween0and1"> |
||
1890 | <xs:annotation> |
||
1891 | <xs:documentation>Type for values, which are greater or equal than 0 and less or equal |
||
1892 | than 1. Used for color encoding, for example. </xs:documentation> |
||
1893 | </xs:annotation> |
||
1894 | <xs:restriction base="xs:double"> |
||
1895 | <xs:minInclusive value="0"/> |
||
1896 | <xs:maxInclusive value="1"/> |
||
1897 | </xs:restriction> |
||
1898 | </xs:simpleType> |
||
1899 | <!-- ========================================================================================== --> |
||
1900 | <xs:simpleType name="doubleBetween0and1List"> |
||
1901 | <xs:annotation> |
||
1902 | <xs:documentation>List for double values, which are greater or equal than 0 and less or |
||
1903 | equal than 1. Used for color encoding, for example. </xs:documentation> |
||
1904 | </xs:annotation> |
||
1905 | <xs:list itemType="doubleBetween0and1"/> |
||
1906 | </xs:simpleType> |
||
1907 | <!-- ========================================================================================== --> |
||
1908 | <xs:simpleType name="TransformationMatrixType"> |
||
1909 | <xs:annotation> |
||
1910 | <xs:documentation>Used for implicit geometries. The Transformation matrix is a 4 by 4 |
||
1911 | matrix, thus it must be a list with 16 items. The order the matrix element are |
||
1912 | represented is row-major, i. e. the first 4 elements represent the first row, the |
||
1913 | fifth to the eight element the second row,... |
||
1914 | </xs:documentation> |
||
1915 | </xs:annotation> |
||
1916 | <xs:restriction base="gml:doubleList"> |
||
1917 | <xs:minLength value="16"/> |
||
1918 | <xs:maxLength value="16"/> |
||
1919 | </xs:restriction> |
||
1920 | </xs:simpleType> |
||
1921 | <!-- ========================================================================================== --> |
||
1922 | <xs:simpleType name="integerBetween0and4"> |
||
1923 | <xs:annotation> |
||
1924 | <xs:documentation>Type for integer values, which are greater or equal than 0 and less or |
||
1925 | equal than 4. Used for encoding of the LoD number. </xs:documentation> |
||
1926 | </xs:annotation> |
||
1927 | <xs:restriction base="xs:integer"> |
||
1928 | <xs:minInclusive value="0"/> |
||
1929 | <xs:maxInclusive value="4"/> |
||
1930 | </xs:restriction> |
||
1931 | </xs:simpleType> |
||
1932 | <!-- ========================================================================================== --> |
||
1933 | </xs:schema> |