|
1 |
<?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="º"/>
|
|
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"/>
|