Commit 072f26cf authored by Claus Nagel's avatar Claus Nagel
Browse files

No commit message

No commit message
parents
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="lib" path="lib/activation.jar"/>
<classpathentry kind="lib" path="lib/jaxb-api.jar"/>
<classpathentry kind="lib" path="lib/jaxb-impl.jar"/>
<classpathentry kind="lib" path="lib/jaxb-xjc.jar"/>
<classpathentry kind="lib" path="lib/jaxb1-impl.jar"/>
<classpathentry kind="lib" path="lib/jsr173_1.0_api.jar"/>
<classpathentry kind="lib" path="lib/args4j-2.0.9.jar"/>
<classpathentry kind="output" path="bin"/>
</classpath>
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
<?xml version="1.0" encoding="UTF-8"?>
<!-- CityGML Version No. 1.0.0, May 19th, 2008-->
<!-- CityGML - GML3 application schema for the 3D city model of the Special Interest Group 3D (SIG 3D) of GDI NRW-->
<!-- Editors: PD Dr. Gerhard Groeger, Institute for Geodesy and Geoinformation, University of Bonn & -->
<!-- Prof. Dr. Thomas H. Kolbe, Institute for Geodesy and Geoinformation Science, Technical University of Berlin -->
<!-- For further information see: www.citygml.org -->
<!-- For the history of changes and additions to this CityGML schema see file history.txt -->
<xs:schema xmlns="http://www.opengis.net/citygml/cityfurniture/1.0" xmlns:core="http://www.opengis.net/citygml/1.0"
xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:gml="http://www.opengis.net/gml"
targetNamespace="http://www.opengis.net/citygml/cityfurniture/1.0" elementFormDefault="qualified"
attributeFormDefault="unqualified">
<xs:import namespace="http://www.opengis.net/gml" schemaLocation="../../GML/3.1.1/base/gml.xsd"/>
<xs:import namespace="http://www.opengis.net/citygml/1.0" schemaLocation="cityGMLBase.xsd"/>
<!-- ========================================================================================= -->
<!-- ===================================CityGML CityFurniture module ============================== -->
<!-- ========================================================================================= -->
<xs:complexType name="CityFurnitureType">
<xs:annotation>
<xs:documentation>Type describing city furnitures, like traffic lights, benches, ... As subclass of _CityObject, a
CityFurniture inherits all attributes and relations, in particular an id, names, external references, and
generalization relations. </xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="core:AbstractCityObjectType">
<xs:sequence>
<xs:element name="class" type="CityFurnitureClassType" minOccurs="0"/>
<xs:element name="function" type="CityFurnitureFunctionType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="lod1Geometry" type="gml:GeometryPropertyType" minOccurs="0"/>
<xs:element name="lod2Geometry" type="gml:GeometryPropertyType" minOccurs="0"/>
<xs:element name="lod3Geometry" type="gml:GeometryPropertyType" minOccurs="0"/>
<xs:element name="lod4Geometry" type="gml:GeometryPropertyType" minOccurs="0"/>
<xs:element name="lod1TerrainIntersection" type="gml:MultiCurvePropertyType" minOccurs="0"/>
<xs:element name="lod2TerrainIntersection" type="gml:MultiCurvePropertyType" minOccurs="0"/>
<xs:element name="lod3TerrainIntersection" type="gml:MultiCurvePropertyType" minOccurs="0"/>
<xs:element name="lod4TerrainIntersection" type="gml:MultiCurvePropertyType" minOccurs="0"/>
<xs:element name="lod1ImplicitRepresentation" type="core:ImplicitRepresentationPropertyType" minOccurs="0"/>
<xs:element name="lod2ImplicitRepresentation" type="core:ImplicitRepresentationPropertyType" minOccurs="0"/>
<xs:element name="lod3ImplicitRepresentation" type="core:ImplicitRepresentationPropertyType" minOccurs="0"/>
<xs:element name="lod4ImplicitRepresentation" type="core:ImplicitRepresentationPropertyType" minOccurs="0"/>
<xs:element ref="_GenericApplicationPropertyOfCityFurniture" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="CityFurniture" type="CityFurnitureType" substitutionGroup="core:_CityObject"/>
<!-- ========================================================================================= -->
<xs:element name="_GenericApplicationPropertyOfCityFurniture" type="xs:anyType" abstract="true"/>
<!-- ========================================================================================= -->
<xs:simpleType name="CityFurnitureFunctionType">
<xs:annotation>
<xs:documentation>Function of a Furniture. The values of this type are defined in the XML file
CityFurnitureFunctionType.xml, according to the dictionary concept of GML3. </xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<!-- ========================================================================================= -->
<xs:simpleType name="CityFurnitureClassType">
<xs:annotation>
<xs:documentation>Class of a Furniture. The values of this type are defined in the XML file
CityFurnitureClassType.xml, according to the dictionary concept of GML3. </xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<!-- ========================================================================================= -->
</xs:schema>
This diff is collapsed.
<?xml version="1.0" encoding="UTF-8"?>
<!-- CityGML Version No. 1.0.0, May 19th, 2008-->
<!-- CityGML - GML3 application schema for the 3D city model of the Special Interest Group 3D (SIG 3D) of GDI NRW-->
<!-- Editors: PD Dr. Gerhard Groeger, Institute for Geodesy and Geoinformation, University of Bonn & -->
<!-- Prof. Dr. Thomas H. Kolbe, Institute for Geodesy and Geoinformation Science, Technical University of Berlin -->
<!-- For further information see: www.citygml.org -->
<!-- For the history of changes and additions to this CityGML schema see file history.txt -->
<xs:schema xmlns="http://www.opengis.net/citygml/cityobjectgroup/1.0" xmlns:core="http://www.opengis.net/citygml/1.0"
xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:gml="http://www.opengis.net/gml"
targetNamespace="http://www.opengis.net/citygml/cityobjectgroup/1.0" elementFormDefault="qualified"
attributeFormDefault="unqualified">
<xs:import namespace="http://www.opengis.net/gml" schemaLocation="../../GML/3.1.1/base/gml.xsd"/>
<xs:import namespace="http://www.opengis.net/citygml/1.0" schemaLocation="cityGMLBase.xsd"/>
<!-- ========================================================================================= -->
<!-- =============================CityGML CityObjectGroup module ================================== -->
<!-- ========================================================================================= -->
<xs:complexType name="CityObjectGroupType">
<xs:annotation>
<xs:documentation> A group may be used to aggregate arbitrary CityObjects according to some user-defined criteria.
Examples for groups are the buildings in a specific region, the result of a query, or objects put together for
visualization purposes. Each group has a name (inherited from AbstractGMLType), functions (e.g., building group),
a class and zero or more usages. A geometry may optionally be attached to a group, if the geometry of the whole
group differs from the geometry of the parts. Each member of a group may be qualified by a role name, reflecting
the role each CityObject plays in the context of the group. As subclass of _CityObject, a CityObjectGroup inherits
all attributes and relations, in particular an id, names, external references, and generalization relations. As
CityObjectGroup itself is a CityObject, it may also be contained by another group. </xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="core:AbstractCityObjectType">
<xs:sequence>
<xs:element name="class" type="xs:string" minOccurs="0"/>
<xs:element name="function" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="usage" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="groupMember" type="CityObjectGroupMemberType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="parent" type="CityObjectGroupParentType" minOccurs="0"/>
<xs:element name="geometry" type="gml:GeometryPropertyType" minOccurs="0"/>
<xs:element ref="_GenericApplicationPropertyOfCityObjectGroup" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="CityObjectGroup" type="CityObjectGroupType" substitutionGroup="core:_CityObject"/>
<!-- ========================================================================================= -->
<xs:element name="_GenericApplicationPropertyOfCityObjectGroup" type="xs:anyType" abstract="true"/>
<!-- ========================================================================================= -->
<!-- ======================Type for Aggregation of Group Members==================================== -->
<!-- ========================================================================================= -->
<xs:complexType name="CityObjectGroupMemberType">
<xs:annotation>
<xs:documentation>Denotes the relation of a CityObjectGroup to its members, which are _CityObjects. The
CityObjectGroupMemberType element must either carry a reference to a _CityObject object or contain a _CityObject
object inline, but neither both nor none. </xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element ref="core:_CityObject"/>
</xs:sequence>
<xs:attribute name="role" type="xs:string"/>
<xs:attributeGroup ref="gml:AssociationAttributeGroup"/>
</xs:complexType>
<!-- ========================================================================================= -->
<!-- ======================Type for Parent Property ================================================ -->
<!-- ========================================================================================= -->
<xs:complexType name="CityObjectGroupParentType">
<xs:annotation>
<xs:documentation>Denotes the relation of a CityObjectGroup to its parent, which is a CityObject. The
CityObjectGroupParentType element must either carry a reference to a _CityObject object or contain a _CityObject
object inline, but neither both nor none. The parent association allows for modelling of a generic hierarchical
grouping concept. Named aggregations of components (CityObjects) can be added to specific CityObjects considered
as the parent object. The parent association links to the aggregate, while the parts are given by the group
members. </xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element ref="core:_CityObject"/>
</xs:sequence>
<xs:attributeGroup ref="gml:AssociationAttributeGroup"/>
</xs:complexType>
<!-- ========================================================================================= -->
</xs:schema>
<?xml version="1.0" encoding="UTF-8"?>
<!-- CityGML Version No. 1.0.0, May 19th, 2008-->
<!-- CityGML - GML3 application schema for the 3D city model of the Special Interest Group 3D (SIG 3D) of GDI NRW-->
<!-- Editors: PD Dr. Gerhard Groeger, Institute for Geodesy and Geoinformation, University of Bonn & -->
<!-- Prof. Dr. Thomas H. Kolbe, Institute for Geodesy and Geoinformation Science, Technical University of Berlin -->
<!-- For further information see: www.citygml.org -->
<!-- For the history of changes and additions to this CityGML schema see file history.txt -->
<xs:schema xmlns="http://www.opengis.net/citygml/generics/1.0" xmlns:core="http://www.opengis.net/citygml/1.0"
xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:gml="http://www.opengis.net/gml"
targetNamespace="http://www.opengis.net/citygml/generics/1.0" elementFormDefault="qualified"
attributeFormDefault="unqualified">
<xs:import namespace="http://www.opengis.net/gml" schemaLocation="../../GML/3.1.1/base/gml.xsd"/>
<xs:import namespace="http://www.opengis.net/citygml/1.0" schemaLocation="cityGMLBase.xsd"/>
<!-- ========================================================================================= -->
<!-- ===============================CityGML Generics module ===================================== -->
<!-- ========================================================================================= -->
<!-- ==================================Generic CityObject ========================================-->
<!-- ========================================================================================= -->
<xs:complexType name="GenericCityObjectType">
<xs:annotation>
<xs:documentation>Generic (user defined) city objects may be used to model features which are not covered explicitly
by the CityGML schema. Generic objects must be used with care; they shall only be used if there is no appropiate
thematic class available in the overall CityGML schema. Oherwise, problems concerning semantic interoperability
may arise. As subclass of _CityObject, a generic city object inherits all attributes and relations, in particular
an id, names, external references, and generalization relations. </xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="core:AbstractCityObjectType">
<xs:sequence>
<xs:element name="class" type="xs:string" minOccurs="0"/>
<xs:element name="function" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="usage" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="lod0Geometry" type="gml:GeometryPropertyType" minOccurs="0"/>
<xs:element name="lod1Geometry" type="gml:GeometryPropertyType" minOccurs="0"/>
<xs:element name="lod2Geometry" type="gml:GeometryPropertyType" minOccurs="0"/>
<xs:element name="lod3Geometry" type="gml:GeometryPropertyType" minOccurs="0"/>
<xs:element name="lod4Geometry" type="gml:GeometryPropertyType" minOccurs="0"/>
<xs:element name="lod0TerrainIntersection" type="gml:MultiCurvePropertyType" minOccurs="0"/>
<xs:element name="lod1TerrainIntersection" type="gml:MultiCurvePropertyType" minOccurs="0"/>
<xs:element name="lod2TerrainIntersection" type="gml:MultiCurvePropertyType" minOccurs="0"/>
<xs:element name="lod3TerrainIntersection" type="gml:MultiCurvePropertyType" minOccurs="0"/>
<xs:element name="lod4TerrainIntersection" type="gml:MultiCurvePropertyType" minOccurs="0"/>
<xs:element name="lod0ImplicitRepresentation" type="core:ImplicitRepresentationPropertyType" minOccurs="0"/>
<xs:element name="lod1ImplicitRepresentation" type="core:ImplicitRepresentationPropertyType" minOccurs="0"/>
<xs:element name="lod2ImplicitRepresentation" type="core:ImplicitRepresentationPropertyType" minOccurs="0"/>
<xs:element name="lod3ImplicitRepresentation" type="core:ImplicitRepresentationPropertyType" minOccurs="0"/>
<xs:element name="lod4ImplicitRepresentation" type="core:ImplicitRepresentationPropertyType" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="GenericCityObject" type="GenericCityObjectType" substitutionGroup="core:_CityObject"/>
<!-- ========================================================================================= -->
<!-- ==================================Generic Attributes=========================================-->
<!-- ========================================================================================= -->
<xs:complexType name="AbstractGenericAttributeType" abstract="true">
<xs:annotation>
<xs:documentation> Generic (user defined) attributes may be used to represent attributes which are not covered
explicitly by the CityGML schema. Generic attributes must be used with care; they shall only be used if there is
no appropiate attribute available in the overall CityGML schema. Oherwise, problems concerning semantic
interoperability may arise. A generic attribute has a name and a value, which has further subclasses
(IntAttrribute, StringAttribute, ...). </xs:documentation>
</xs:annotation>
<xs:sequence/>
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="_genericAttribute" type="AbstractGenericAttributeType" abstract="true"
substitutionGroup="core:_GenericApplicationPropertyOfCityObject"/>
<!-- ========================================================================================= -->
<xs:complexType name="StringAttributeType">
<xs:annotation>
<xs:documentation/>
</xs:annotation>
<xs:complexContent>
<xs:extension base="AbstractGenericAttributeType">
<xs:sequence>
<xs:element name="value" type="xs:string"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="stringAttribute" type="StringAttributeType" substitutionGroup="_genericAttribute"/>
<!-- ========================================================================================= -->
<xs:complexType name="IntAttributeType">
<xs:annotation>
<xs:documentation/>
</xs:annotation>
<xs:complexContent>
<xs:extension base="AbstractGenericAttributeType">
<xs:sequence>
<xs:element name="value" type="xs:integer"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="intAttribute" type="IntAttributeType" substitutionGroup="_genericAttribute"/>
<!-- ========================================================================================= -->
<xs:complexType name="DoubleAttributeType">
<xs:annotation>
<xs:documentation/>
</xs:annotation>
<xs:complexContent>
<xs:extension base="AbstractGenericAttributeType">
<xs:sequence>
<xs:element name="value" type="xs:double"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="doubleAttribute" type="DoubleAttributeType" substitutionGroup="_genericAttribute"/>
<!-- ========================================================================================= -->
<xs:complexType name="DateAttributeType">
<xs:annotation>
<xs:documentation/>
</xs:annotation>
<xs:complexContent>
<xs:extension base="AbstractGenericAttributeType">
<xs:sequence>
<xs:element name="value" type="xs:date"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="dateAttribute" type="DateAttributeType" substitutionGroup="_genericAttribute"/>
<!-- ========================================================================================= -->
<xs:complexType name="UriAttributeType">
<xs:annotation>
<xs:documentation/>
</xs:annotation>
<xs:complexContent>
<xs:extension base="AbstractGenericAttributeType">
<xs:sequence>
<xs:element name="value" type="xs:anyURI"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="uriAttribute" type="UriAttributeType" substitutionGroup="_genericAttribute"/>
<!-- ========================================================================================= -->
</xs:schema>
<?xml version="1.0" encoding="UTF-8"?>
<!-- CityGML Version No. 1.0.0, May 19th, 2008-->
<!-- CityGML - GML3 application schema for the 3D city model of the Special Interest Group 3D (SIG 3D) of GDI NRW-->
<!-- Editors: PD Dr. Gerhard Groeger, Institute for Geodesy and Geoinformation, University of Bonn & -->
<!-- Prof. Dr. Thomas H. Kolbe, Institute for Geodesy and Geoinformation Science, Technical University of Berlin -->
<!-- For further information see: www.citygml.org -->
<!-- For the history of changes and additions to this CityGML schema see file history.txt -->
<xs:schema xmlns="http://www.opengis.net/citygml/landuse/1.0" xmlns:core="http://www.opengis.net/citygml/1.0"
xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:gml="http://www.opengis.net/gml"
targetNamespace="http://www.opengis.net/citygml/landuse/1.0" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:import namespace="http://www.opengis.net/gml" schemaLocation="../../GML/3.1.1/base/gml.xsd"/>
<xs:import namespace="http://www.opengis.net/citygml/1.0" schemaLocation="cityGMLBase.xsd"/>
<!-- ========================================================================================= -->
<!-- ==================================CityGML LandUse module ================================== -->
<!-- ========================================================================================= -->
<xs:complexType name="LandUseType">
<xs:annotation>
<xs:documentation>Type describing the class for Land Use in all LOD. LandUse objects describe areas of the earth’s
surface dedicated to a specific land use. The geometry must consist of 3-D surfaces. As subclass of _CityObject, a
LandUse inherits all attributes and relations, in particular an id, names, external references, and generalization
relations. </xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="core:AbstractCityObjectType">
<xs:sequence>
<xs:element name="class" type="LandUseClassType" minOccurs="0"/>
<xs:element name="function" type="LandUseFunctionType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="usage" type="LandUseUsageType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="lod0MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/>
<xs:element name="lod1MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/>
<xs:element name="lod2MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/>
<xs:element name="lod3MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/>
<xs:element name="lod4MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/>
<xs:element ref="_GenericApplicationPropertyOfLandUse" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="LandUse" type="LandUseType" substitutionGroup="core:_CityObject"/>
<!-- ========================================================================================= -->
<xs:element name="_GenericApplicationPropertyOfLandUse" type="xs:anyType" abstract="true"/>
<!-- ========================================================================================= -->
<xs:simpleType name="LandUseClassType">
<xs:annotation>
<xs:documentation>Class of a Landuse. The values of this type are defined in the XML file LandUseClassType.xml,
according to the dictionary concept of GML3. </xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<!-- ========================================================================================= -->
<xs:simpleType name="LandUseFunctionType">
<xs:annotation>
<xs:documentation>Function of a Landuse. The values of this type are defined in the XML file LandUseFunctionType.xml,
according to the dictionary concept of GML3. </xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<!-- ========================================================================================= -->
<xs:simpleType name="LandUseUsageType">
<xs:annotation>
<xs:documentation>Usage of a Landuse. The values of this type are defined in the XML file LandUseUsageType.xml,
according to the dictionary concept of GML3. </xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<!-- ========================================================================================= -->
</xs:schema>
<?xml version="1.0" encoding="UTF-8"?>
<!-- CityGML Version No. 1.0.0, May 19th, 2008-->
<!-- CityGML - GML3 application schema for the 3D city model of the Special Interest Group 3D (SIG 3D) of GDI NRW-->
<!-- Editors: PD Dr. Gerhard Groeger, Institute for Geodesy and Geoinformation, University of Bonn & -->
<!-- Prof. Dr. Thomas H. Kolbe, Institute for Geodesy and Geoinformation Science, Technical University of Berlin -->
<!-- For further information see: www.citygml.org -->
<!-- For the history of changes and additions to this CityGML schema see file history.txt -->
<xs:schema xmlns="http://www.opengis.net/citygml/relief/1.0" xmlns:core="http://www.opengis.net/citygml/1.0"
xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:gml="http://www.opengis.net/gml"
targetNamespace="http://www.opengis.net/citygml/relief/1.0" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:import namespace="http://www.opengis.net/gml" schemaLocation="../../GML/3.1.1/base/gml.xsd"/>
<xs:import namespace="http://www.opengis.net/citygml/1.0" schemaLocation="cityGMLBase.xsd"/>
<!-- ========================================================================================= -->
<!-- ==================================CityGML Relief module ===================================== -->
<!-- ========================================================================================= -->
<xs:complexType name="ReliefFeatureType">
<xs:annotation>
<xs:documentation>Type describing the features of the Digital Terrain Model. As subclass of _CityObject, a
ReliefFeature inherits all attributes and relations, in particular an id, names, external references, and
generalization relations. </xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="core:AbstractCityObjectType">
<xs:sequence>
<xs:element name="lod" type="core:integerBetween0and4"/>
<xs:element name="reliefComponent" type="ReliefComponentPropertyType" maxOccurs="unbounded"/>
<xs:element ref="_GenericApplicationPropertyOfReliefFeature" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="ReliefFeature" type="ReliefFeatureType" substitutionGroup="core:_CityObject"/>
<!-- ========================================================================================= -->
<xs:element name="_GenericApplicationPropertyOfReliefFeature" type="xs:anyType" abstract="true"/>
<!-- ========================================================================================= -->
<xs:complexType name="AbstractReliefComponentType" abstract="true">
<xs:annotation>
<xs:documentation>Type describing the components of a relief feature - either a TIN, a Grid, mass points or break
lines. As subclass of _CityObject, a ReliefComponent inherits all attributes and relations, in particular an id,
names, external references, and generalization relations. </xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="core:AbstractCityObjectType">
<xs:sequence>
<xs:element name="lod" type="core:integerBetween0and4"/>
<xs:element name="extent" type="gml:PolygonPropertyType" minOccurs="0"/>
<xs:element ref="_GenericApplicationPropertyOfReliefComponent" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="_ReliefComponent" type="AbstractReliefComponentType" abstract="true" substitutionGroup="core:_CityObject"/>
<!-- ========================================================================================= -->
<xs:element name="_GenericApplicationPropertyOfReliefComponent" type="xs:anyType" abstract="true"/>
<!-- ========================================================================================= -->
<xs:complexType name="ReliefComponentPropertyType">
<xs:annotation>
<xs:documentation>Denotes the relation of a ReliefFeature to its components. The ReliefComponentPropertyType element
must either carry a reference to a _ReliefComponent object or contain a _ReliefComponent object inline, but
neither both nor none. </xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:restriction base="gml:AssociationType">
<xs:sequence minOccurs="0">
<xs:element ref="_ReliefComponent"/>
</xs:sequence>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:complexType name="TINReliefType">
<xs:annotation>
<xs:documentation>Type describing the TIN component of a relief feature. As subclass of _CityObject, a TINRelief
inherits all attributes and relations, in particular an id, names, external references, and generalization
relations. </xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="AbstractReliefComponentType">
<xs:sequence>
<xs:element name="tin" type="tinPropertyType"/>
<xs:element ref="_GenericApplicationPropertyOfTinRelief" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="TINRelief" type="TINReliefType" substitutionGroup="_ReliefComponent"/>
<!-- ========================================================================================= -->
<xs:element name="_GenericApplicationPropertyOfTinRelief" type="xs:anyType" abstract="true"/>
<!-- ========================================================================================= -->
<xs:complexType name="RasterReliefType">
<xs:annotation>
<xs:documentation>Type describing the raster component of a relief feature. As subclass of _CityObject, a RasterRelief
inherits all attributes and relations, in particular an id, names, external references, and generalization
relations. </xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="AbstractReliefComponentType">
<xs:sequence>
<xs:element name="grid" type="gridPropertyType"/>
<xs:element ref="_GenericApplicationPropertyOfRasterRelief" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="RasterRelief" type="RasterReliefType" substitutionGroup="_ReliefComponent"/>
<!-- ========================================================================================= -->
<xs:element name="_GenericApplicationPropertyOfRasterRelief" type="xs:anyType" abstract="true"/>
<!-- ========================================================================================= -->
<xs:complexType name="MassPointReliefType">
<xs:annotation>
<xs:documentation>Type describing the mass point component of a relief feature. As subclass of _CityObject, a
MassPoint Relief inherits all attributes and relations, in particular an id, names, external references, and
generalization relations. </xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="AbstractReliefComponentType">
<xs:sequence>
<xs:element name="reliefPoints" type="gml:MultiPointPropertyType"/>
<xs:element ref="_GenericApplicationPropertyOfMassPointRelief" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="MassPointRelief" type="MassPointReliefType" substitutionGroup="_ReliefComponent"/>
<!-- ========================================================================================= -->
<xs:element name="_GenericApplicationPropertyOfMassPointRelief" type="xs:anyType" abstract="true"/>
<!-- ========================================================================================= -->
<xs:complexType name="BreaklineReliefType">
<xs:annotation>
<xs:documentation>Type describing the break line Component of a relief feature. A break line relief consists of break
lines or ridgeOrValleyLines. As subclass of _CityObject, a BreaklineRelief inherits all attributes and relations,
in particular an id, names, external references, and generalization relations. </xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="AbstractReliefComponentType">
<xs:sequence>
<xs:element name="ridgeOrValleyLines" type="gml:MultiCurvePropertyType" minOccurs="0"/>
<xs:element name="breaklines" type="gml:MultiCurvePropertyType" minOccurs="0"/>
<xs:element ref="_GenericApplicationPropertyOfBreaklineRelief" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="BreaklineRelief" type="BreaklineReliefType" substitutionGroup="_ReliefComponent"/>
<!-- ========================================================================================= -->
<xs:element name="_GenericApplicationPropertyOfBreaklineRelief" type="xs:anyType" abstract="true"/>
<!-- ========================================================================================= -->
<xs:complexType name="tinPropertyType">
<xs:annotation>
<xs:documentation>Denotes the relation of a TINRelief to its components. The tinPropertyType element must either carry
a reference to a gml:TriangulatedSurface object or contain a gml:TriangulatedSurface object inline, but neither
both nor none. </xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:restriction base="gml:AssociationType">
<xs:sequence minOccurs="0">
<xs:element ref="gml:TriangulatedSurface"/>
</xs:sequence>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:complexType name="gridPropertyType">
<xs:complexContent>
<xs:annotation>
<xs:documentation>Denotes the relation of a RasterReliefType to its components. The gridPropertyType element must
either carry a reference to a gml:RectifiedGridCoverage object or contain a gml:RectifiedGridCoverage object
inline, but neither both nor none. </xs:documentation>
</xs:annotation>
<xs:restriction base="gml:AssociationType">
<xs:sequence minOccurs="0">
<xs:element ref="gml:RectifiedGridCoverage"/>
</xs:sequence>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<!-- ============= The height values of the grid are represented by Elevation elements, which have a height ====== -->
<!-- ============= value and a unit of measurement, e.g. meter. ====== -->
<!-- ========================================================================================= -->
<xs:element name="Elevation" type="gml:LengthType" substitutionGroup="gml:_Object"/>
<!-- ========================================================================================= -->
</xs:schema>
<?xml version="1.0" encoding="UTF-8"?>
<!-- CityGML Version No. 1.0.0, May 19th, 2008-->
<!-- CityGML - GML3 application schema for the 3D city model of the Special Interest Group 3D (SIG 3D) of GDI NRW-->
<!-- Editors: PD Dr. Gerhard Groeger, Institute for Geodesy and Geoinformation, University of Bonn & -->
<!-- Prof. Dr. Thomas H. Kolbe, Institute for Geodesy and Geoinformation Science, Technical University of Berlin -->
<!-- For further information see: www.citygml.org -->
<!-- For the history of changes and additions to this CityGML schema see file history.txt -->
<xs:schema xmlns="http://www.opengis.net/citygml/texturedsurface/1.0" xmlns:core="http://www.opengis.net/citygml/1.0"
xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:gml="http://www.opengis.net/gml"
targetNamespace="http://www.opengis.net/citygml/texturedsurface/1.0" elementFormDefault="qualified"
attributeFormDefault="unqualified">
<xs:import namespace="http://www.opengis.net/gml" schemaLocation="../../GML/3.1.1/base/gml.xsd"/>
<xs:import namespace="http://www.opengis.net/citygml/1.0" schemaLocation="cityGMLBase.xsd"/>
<!-- ========================================================================================= -->
<!-- ==============================CityGML TexturedSurface module ================================= -->
<!-- ========================================================================================= -->
<!-- ========================================================================================= -->
<!-- ================================MATERIAL/TEXTURES======================================= -->
<!-- =========================DEPRECATED since CityGML version 0.4.0============================== -->
<!-- =======The following types and elements are expected TO BE REMOVED in future CityGML versions========== -->
<!-- ==================Please, only use the CityGML Appearance model instead. ========================== -->
<!-- ========================================================================================= -->
<xs:complexType name="TexturedSurfaceType">
<xs:annotation>
<xs:appinfo>deprecated</xs:appinfo>
<xs:documentation>Deprecated since CityGML version 0.4.0. Use the concepts of the CityGML Appearance module instead.
The concept of positioning textures on surfaces complies with the standard X3D. Because there has been no
appropriate texturing concept in GML3, CityGML adds the class TexturedSurface to the geometry model of GML 3. A
texture is specified as a raster image referenced by an URI, and can be an arbitrary resource, even in the
internet. Textures are positioned by employing the concept of texture coordinates, i.e. each texture coordinate
matches with exactly one 3D coordinate of the TexturedSurface. The use of texture coordinates allows an exact
positioning and trimming of the texture on the surface geometry. Each surface may be assigned one or more
appearances, each refering to one side of the surface. </xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="gml:OrientableSurfaceType">
<xs:sequence>
<xs:element ref="appearance" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="TexturedSurface" type="TexturedSurfaceType" substitutionGroup="gml:OrientableSurface"/>
<!-- ========================================================================================= -->
<xs:element name="appearance" type="AppearancePropertyType"/>
<!-- ========================================================================================= -->
<xs:complexType name="AppearancePropertyType">
<xs:annotation>
<xs:appinfo>deprecated</xs:appinfo>
<xs:documentation>Deprecated since CityGML version 0.4.0. Use the concepts of the CityGML Appearance module instead. A
property that has an _Appearance as its value domain, which can either be a Material (Color,...) or a Texture. The
_Appearance Element can either be encapsulated in an element of this type or an XLink reference to a remote
_Appearance element (where remote geometry elements are located in another document or elsewhere in the same
document). Either the reference or the contained element must be given, but neither both nor none. The side of the
surface the _Appearance refers to is given by the orientation attribute, which refers to the corresponding sign
attribute of the orientable surface: + means the side with positive orientation, and - the side with negative
orientation. </xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0">
<xs:element ref="_Appearance"/>
</xs:sequence>
<xs:attribute name="orientation" type="gml:SignType" default="+"/>
<xs:attributeGroup ref="gml:AssociationAttributeGroup"/>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:complexType name="AbstractAppearanceType" abstract="true">
<xs:annotation>
<xs:appinfo>deprecated</xs:appinfo>
<xs:documentation>Deprecated since CityGML version 0.4.0. Use the concepts of the CityGML Appearance module instead.
This abstract type is the parent type of MaterialType and SimpleTextureType. It is derived from
gml:AbstractGMLType, thus it inherits the attribute gml:id and may be referenced by an appearanceProperty,
although it is defined elsewhere in another appearanceProperty. </xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="gml:AbstractGMLType"/>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="_Appearance" type="AbstractAppearanceType" abstract="true" substitutionGroup="gml:_GML"/>
<!-- ========================================================================================= -->
<xs:complexType name="MaterialType">
<xs:annotation>
<xs:appinfo>deprecated</xs:appinfo>
<xs:documentation>Deprecated since CityGML version 0.4.0. Use the concepts of the CityGML Appearance module instead.
Adopted from X3D standard (http://www.web3d.org/x3d/) </xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="AbstractAppearanceType">
<xs:sequence>
<xs:element name="shininess" type="core:doubleBetween0and1" minOccurs="0"/>
<xs:element name="transparency" type="core:doubleBetween0and1" minOccurs="0"/>
<xs:element name="ambientIntensity" type="core:doubleBetween0and1" minOccurs="0"/>
<xs:element name="specularColor" type="Color" minOccurs="0"/>
<xs:element name="diffuseColor" type="Color" minOccurs="0"/>
<xs:element name="emissiveColor" type="Color" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="Material" type="MaterialType" substitutionGroup="_Appearance"/>
<!-- ========================================================================================= -->
<xs:complexType name="SimpleTextureType">
<xs:annotation>
<xs:appinfo>deprecated</xs:appinfo>
<xs:documentation>Deprecated since CityGML version 0.4.0. Use the concepts of the CityGML Appearance module instead.
Adopted from X3D standard (http://www.web3d.org/x3d/). ToDo: repeat </xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="AbstractAppearanceType">
<xs:sequence>
<xs:element name="textureMap" type="xs:anyURI"/>
<xs:element name="textureCoordinates" type="gml:doubleList"/>
<xs:element name="textureType" type="TextureTypeType" minOccurs="0"/>
<xs:element name="repeat" type="xs:boolean" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="SimpleTexture" type="SimpleTextureType" substitutionGroup="_Appearance"/>
<!-- ========================================================================================= -->
<xs:simpleType name="TextureTypeType">
<xs:annotation>
<xs:appinfo>deprecated</xs:appinfo>
<xs:documentation>Deprecated since CityGML version 0.4.0. Use the concepts of the CityGML Appearance module instead.
Textures can be qualified by the attribute textureType. The textureType differentiates between textures, which are
specific for a certain object and are only used for that object (specific), and prototypic textures being typical
for that kind of object and are used many times for all objects of that kind (typical). A typical texture may be
replaced by a specific, if available. Textures may also be classified as unknown. </xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:enumeration value="specific"/>
<xs:enumeration value="typical"/>
<xs:enumeration value="unknown"/>
</xs:restriction>
</xs:simpleType>
<!-- ========================================================================================= -->
<xs:simpleType name="Color">
<xs:annotation>
<xs:appinfo>deprecated</xs:appinfo>
<xs:documentation>Deprecated since CityGML version 0.4.0. Use the concepts of the CityGML Appearance module instead.
List of three values (red, green, blue), separated by spaces. The values must be in the range between zero and
one. </xs:documentation>
</xs:annotation>
<xs:restriction base="core:doubleBetween0and1List">
<xs:length value="3"/>
</xs:restriction>
</xs:simpleType>
<!-- ========================================================================================= -->
</xs:schema>
<?xml version="1.0" encoding="UTF-8"?>
<!-- CityGML Version No. 1.0.0, May 19th, 2008-->
<!-- CityGML - GML3 application schema for the 3D city model of the Special Interest Group 3D (SIG 3D) of GDI NRW-->
<!-- Editors: PD Dr. Gerhard Groeger, Institute for Geodesy and Geoinformation, University of Bonn & -->
<!-- Prof. Dr. Thomas H. Kolbe, Institute for Geodesy and Geoinformation Science, Technical University of Berlin -->
<!-- For further information see: www.citygml.org -->
<!-- For the history of changes and additions to this CityGML schema see file history.txt -->
<xs:schema xmlns="http://www.opengis.net/citygml/transportation/1.0" xmlns:core="http://www.opengis.net/citygml/1.0"
xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:gml="http://www.opengis.net/gml"
targetNamespace="http://www.opengis.net/citygml/transportation/1.0" elementFormDefault="qualified"
attributeFormDefault="unqualified">
<xs:import namespace="http://www.opengis.net/gml" schemaLocation="../../GML/3.1.1/base/gml.xsd"/>
<xs:import namespace="http://www.opengis.net/citygml/1.0" schemaLocation="cityGMLBase.xsd"/>
<!-- ========================================================================================= -->
<!-- ===========================CityGML Transportation module ===================================== -->
<!-- ========================================================================================= -->
<xs:complexType name="AbstractTransportationObjectType" abstract="true">
<xs:annotation>
<xs:documentation>Type describing the abstract superclass for transportation objects. </xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="core:AbstractCityObjectType">
<xs:sequence>
<xs:element ref="_GenericApplicationPropertyOfTransportationObject" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="_TransportationObject" type="AbstractTransportationObjectType" substitutionGroup="core:_CityObject"/>
<!-- ========================================================================================= -->
<xs:element name="_GenericApplicationPropertyOfTransportationObject" type="xs:anyType" abstract="true"/>
<!-- ========================================================================================= -->
<xs:complexType name="TransportationComplexType">
<xs:annotation>
<xs:documentation>Type describing transportation complexes, which are aggregated features, e.g. roads, which consist
of parts (traffic areas, e.g. pedestrian path, and auxiliary traffic areas). As subclass of _CityObject, a
TransportationComplex inherits all attributes and relations, in particular an id, names, external references, and
generalization relations. </xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="AbstractTransportationObjectType">
<xs:sequence>
<xs:element name="function" type="TransportationComplexFunctionType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="usage" type="TransportationComplexUsageType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="trafficArea" type="TrafficAreaPropertyType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="auxiliaryTrafficArea" type="AuxiliaryTrafficAreaPropertyType" minOccurs="0"
maxOccurs="unbounded"/>
<xs:element name="lod0Network" type="gml:GeometricComplexPropertyType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="lod1MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/>
<xs:element name="lod2MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/>
<xs:element name="lod3MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/>
<xs:element name="lod4MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/>
<xs:element ref="_GenericApplicationPropertyOfTransportationComplex" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="TransportationComplex" type="TransportationComplexType" substitutionGroup="_TransportationObject"/>
<!-- ========================================================================================= -->
<xs:element name="_GenericApplicationPropertyOfTransportationComplex" type="xs:anyType" abstract="true"/>
<!-- ========================================================================================= -->
<xs:complexType name="TrafficAreaType">
<xs:annotation>
<xs:documentation>Type describing the class for traffic Areas. Traffic areas are the surfaces where traffic actually
takes place. As subclass of _CityObject, a TrafficArea inherits all attributes and relations, in particular an id,
names, external references, and generalization relations. </xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="AbstractTransportationObjectType">
<xs:sequence>
<xs:element name="usage" type="TrafficAreaUsageType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="function" type="TrafficAreaFunctionType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="surfaceMaterial" type="TrafficSurfaceMaterialType" minOccurs="0"/>
<xs:element name="lod2MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/>
<xs:element name="lod3MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/>
<xs:element name="lod4MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/>
<xs:element ref="_GenericApplicationPropertyOfTrafficArea" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="TrafficArea" type="TrafficAreaType" substitutionGroup="_TransportationObject"/>
<!-- ========================================================================================= -->
<xs:element name="_GenericApplicationPropertyOfTrafficArea" type="xs:anyType" abstract="true"/>
<!-- ========================================================================================= -->
<xs:complexType name="AuxiliaryTrafficAreaType">
<xs:annotation>
<xs:documentation>Type describing the class for auxiliary traffic Areas. These are the surfaces where no traffic
actually takes place, but which belong to a transportation object. Examples are kerbstones, road markings and
grass stripes. As subclass of _CityObject, an AuxiliaryTrafficArea inherits all attributes and relations, in
particular an id, names, external references, and generalization relations. </xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="AbstractTransportationObjectType">
<xs:sequence>
<xs:element name="function" type="AuxiliaryTrafficAreaFunctionType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="surfaceMaterial" type="TrafficSurfaceMaterialType" minOccurs="0"/>
<xs:element name="lod2MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/>
<xs:element name="lod3MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/>
<xs:element name="lod4MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/>
<xs:element ref="_GenericApplicationPropertyOfAuxiliaryTrafficArea" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="AuxiliaryTrafficArea" type="AuxiliaryTrafficAreaType" substitutionGroup="_TransportationObject"/>
<!-- ========================================================================================= -->
<xs:element name="_GenericApplicationPropertyOfAuxiliaryTrafficArea" type="xs:anyType" abstract="true"/>
<!-- ========================================================================================= -->
<xs:complexType name="TrafficAreaPropertyType">
<xs:annotation>
<xs:documentation>Denotes the relation of TransportationComplex to its parts, which are traffic areas. The
TrafficAreaPropertyType element must either carry a reference to a TrafficArea object or contain a TrafficArea
object inline, but neither both nor none. </xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:restriction base="gml:AssociationType">
<xs:sequence minOccurs="0">
<xs:element ref="TrafficArea"/>
</xs:sequence>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:complexType name="AuxiliaryTrafficAreaPropertyType">
<xs:annotation>
<xs:documentation>Denotes the relation of TransportationComplex to its parts, which are auxiliary traffic areas. The
TrafficAreaPropertyType element must either carry a reference to a TrafficArea object or contain a TrafficArea
object inline, but neither both nor none. </xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:restriction base="gml:AssociationType">
<xs:sequence minOccurs="0">
<xs:element ref="AuxiliaryTrafficArea"/>
</xs:sequence>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<!-- ============================Subtypes of Transportation Complex================================= -->
<!-- ========================================================================================= -->
<xs:complexType name="TrackType">
<xs:annotation>
<xs:documentation>Type describing the class for tracks. A track is a small path mainly used by pedestrians. As
subclass of _CityObject, a Track inherits all attributes and relations, in particular an id, names, external
references, and generalization relations. </xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="TransportationComplexType">
<xs:sequence>
<xs:element ref="_GenericApplicationPropertyOfTrack" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="Track" type="TrackType" substitutionGroup="TransportationComplex"/>
<!-- ========================================================================================= -->
<xs:element name="_GenericApplicationPropertyOfTrack" type="xs:anyType" abstract="true"/>
<!-- ========================================================================================= -->
<xs:complexType name="RoadType">
<xs:annotation>
<xs:documentation>Type describing the class for roads. As subclass of _CityObject, a Road inherits all attributes and
relations, in particular an id, names, external references, and generalization relations. </xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="TransportationComplexType">
<xs:sequence>
<xs:element ref="_GenericApplicationPropertyOfRoad" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="Road" type="RoadType" substitutionGroup="TransportationComplex"/>
<!-- ========================================================================================= -->
<xs:element name="_GenericApplicationPropertyOfRoad" type="xs:anyType" abstract="true"/>
<!-- ========================================================================================= -->
<xs:complexType name="RailwayType">
<xs:annotation>
<xs:documentation>Type describing the class for railways. As subclass of _CityObject, a Railway inherits all
attributes and relations, in particular an id, names, external references, and generalization relations.
</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="TransportationComplexType">
<xs:sequence>
<xs:element ref="_GenericApplicationPropertyOfRailway" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="Railway" type="RailwayType" substitutionGroup="TransportationComplex"/>
<!-- ========================================================================================= -->
<xs:element name="_GenericApplicationPropertyOfRailway" type="xs:anyType" abstract="true"/>
<!-- ========================================================================================= -->
<xs:complexType name="SquareType">
<xs:annotation>
<xs:documentation>Type describing the class for squares. A square is an open area commonly found in cities (like a
plaza). As subclass of _CityObject, a Square inherits all attributes and relations, in particular an id, names,
external references, and generalization relations. </xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="TransportationComplexType">
<xs:sequence>
<xs:element ref="_GenericApplicationPropertyOfSquare" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="Square" type="SquareType" substitutionGroup="TransportationComplex"/>
<!-- ========================================================================================= -->
<xs:element name="_GenericApplicationPropertyOfSquare" type="xs:anyType" abstract="true"/>
<!-- ========================================================================================= -->
<xs:simpleType name="TransportationComplexFunctionType">
<xs:annotation>
<xs:documentation>Function of a transportation complex. The values of this type are defined in the XML file
TransportationComplexFunctionType.xml, according to the dictionary concept of GML3. </xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<!-- ========================================================================================= -->
<xs:simpleType name="TransportationComplexUsageType">
<xs:annotation>
<xs:documentation>Actual Usage of a transportation complex. The values of this type are defined in the XML file
TransportationComplexUsageType.xml, according to the dictionary concept of GML3. </xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<!-- ========================================================================================= -->
<xs:simpleType name="TrafficAreaFunctionType">
<xs:annotation>
<xs:documentation>Function of a traffic area. The values of this type are defined in the XML file
TrafficAreaFunctionType.xml, according to the dictionary concept of GML3. </xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<!-- ========================================================================================= -->
<xs:simpleType name="AuxiliaryTrafficAreaFunctionType">
<xs:annotation>
<xs:documentation>Function of an auxiliary traffic area. The values of this type are defined in the XML file
AuxiliaryTrafficAreaFunctionType.xml, according to the dictionary concept of GML3. </xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<!-- ========================================================================================= -->
<xs:simpleType name="TrafficAreaUsageType">
<xs:annotation>
<xs:documentation>Usage of a traffic area. The values of this type are defined in the XML file
TrafficAreaUsageType.xml, according to the dictionary concept of GML3. </xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<!-- ========================================================================================= -->
<xs:simpleType name="TrafficSurfaceMaterialType">
<xs:annotation>
<xs:documentation>Type for surface materials of transportation objects. The values of this type are defined in the XML
file TrafficSurfaceMaterialType.xml, according to the dictionary concept of GML3. </xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<!-- ========================================================================================= -->
</xs:schema>
<?xml version="1.0" encoding="UTF-8"?>
<!-- CityGML Version No. 1.0.0, May 19th, 2008-->
<!-- CityGML - GML3 application schema for the 3D city model of the Special Interest Group 3D (SIG 3D) of GDI NRW-->
<!-- Editors: PD Dr. Gerhard Groeger, Institute for Geodesy and Geoinformation, University of Bonn & -->
<!-- Prof. Dr. Thomas H. Kolbe, Institute for Geodesy and Geoinformation Science, Technical University of Berlin -->
<!-- For further information see: www.citygml.org -->
<!-- For the history of changes and additions to this CityGML schema see file history.txt -->
<xs:schema xmlns="http://www.opengis.net/citygml/vegetation/1.0" xmlns:core="http://www.opengis.net/citygml/1.0"
xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:gml="http://www.opengis.net/gml"
targetNamespace="http://www.opengis.net/citygml/vegetation/1.0" elementFormDefault="qualified"
attributeFormDefault="unqualified">
<xs:import namespace="http://www.opengis.net/gml" schemaLocation="../../GML/3.1.1/base/gml.xsd"/>
<xs:import namespace="http://www.opengis.net/citygml/1.0" schemaLocation="cityGMLBase.xsd"/>
<!-- ========================================================================================= -->
<!-- ==============================CityGML Vegetation module ===================================== -->
<!-- ========================================================================================= -->
<xs:complexType name="AbstractVegetationObjectType" abstract="true">
<xs:annotation>
<xs:documentation>Type describing the abstract superclass for vegetation objects. A subclass is either a
SolitaryVegetationObject or a PlantCover. </xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="core:AbstractCityObjectType">
<xs:sequence>
<xs:element ref="_GenericApplicationPropertyOfVegetationObject" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="_VegetationObject" type="AbstractVegetationObjectType" substitutionGroup="core:_CityObject"/>
<!-- ========================================================================================= -->
<xs:element name="_GenericApplicationPropertyOfVegetationObject" type="xs:anyType" abstract="true"/>
<!-- ========================================================================================= -->
<xs:complexType name="PlantCoverType">
<xs:annotation>
<xs:documentation>Type describing Plant Covers resp. Biotopes. As subclass of _CityObject, a VegetationObject inherits
all attributes and relations, in particular an id, names, external references, and generalization relations.
</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="AbstractVegetationObjectType">
<xs:sequence>
<xs:element name="class" type="PlantCoverClassType" minOccurs="0"/>
<xs:element name="function" type="PlantCoverFunctionType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="averageHeight" type="gml:LengthType" minOccurs="0"/>
<xs:element name="lod1MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/>
<xs:element name="lod2MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/>
<xs:element name="lod3MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/>
<xs:element name="lod4MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/>
<xs:element name="lod1MultiSolid" type="gml:MultiSolidPropertyType" minOccurs="0"/>
<xs:element name="lod2MultiSolid" type="gml:MultiSolidPropertyType" minOccurs="0"/>
<xs:element name="lod3MultiSolid" type="gml:MultiSolidPropertyType" minOccurs="0"/>
<xs:element ref="_GenericApplicationPropertyOfPlantCover" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="PlantCover" type="PlantCoverType" substitutionGroup="_VegetationObject"/>
<!-- ========================================================================================= -->
<xs:element name="_GenericApplicationPropertyOfPlantCover" type="xs:anyType" abstract="true"/>
<!-- ========================================================================================= -->
<xs:simpleType name="PlantCoverClassType">
<xs:annotation>
<xs:documentation>Class of a PlantCover. The values of this type are defined in the XML file PlantCoverClassType.xml,
according to the dictionary concept of GML3. </xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<!-- ========================================================================================= -->
<xs:simpleType name="PlantCoverFunctionType">
<xs:annotation>
<xs:documentation>Function of a PlantCover. The values of this type are defined in the XML file
PlantCoverFunctionType.xml, according to the dictionary concept of GML3. </xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<!-- ========================================================================================= -->
<xs:complexType name="SolitaryVegetationObjectType">
<xs:annotation>
<xs:documentation>Type describing solitary vegetation objects, e.g., trees. Its geometry is either defined explicitly
by a GML 3 geometry with absolute coordinates, or in the case of multiple occurences of the same vegetation
object, implicitly by a reference to a shape definition and a transformation. The shape definition may be given in
an external file. As subclass of _CityObject, a SolitaryVegetationObject inherits all attributes and relations, in
particular an id, names, external references, and generalization relations. </xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="AbstractVegetationObjectType">
<xs:sequence>
<xs:element name="class" type="PlantClassType" minOccurs="0"/>
<xs:element name="function" type="PlantFunctionType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="species" type="SpeciesType" minOccurs="0"/>
<xs:element name="height" type="gml:LengthType" minOccurs="0"/>
<xs:element name="trunkDiameter" type="gml:LengthType" minOccurs="0"/>
<xs:element name="crownDiameter" type="gml:LengthType" minOccurs="0"/>
<xs:element name="lod1Geometry" type="gml:GeometryPropertyType" minOccurs="0"/>
<xs:element name="lod2Geometry" type="gml:GeometryPropertyType" minOccurs="0"/>
<xs:element name="lod3Geometry" type="gml:GeometryPropertyType" minOccurs="0"/>
<xs:element name="lod4Geometry" type="gml:GeometryPropertyType" minOccurs="0"/>
<xs:element name="lod1ImplicitRepresentation" type="core:ImplicitRepresentationPropertyType" minOccurs="0"/>
<xs:element name="lod2ImplicitRepresentation" type="core:ImplicitRepresentationPropertyType" minOccurs="0"/>
<xs:element name="lod3ImplicitRepresentation" type="core:ImplicitRepresentationPropertyType" minOccurs="0"/>
<xs:element name="lod4ImplicitRepresentation" type="core:ImplicitRepresentationPropertyType" minOccurs="0"/>
<xs:element ref="_GenericApplicationPropertyOfSolitaryVegetationObject" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- ========================================================================================= -->
<xs:element name="SolitaryVegetationObject" type="SolitaryVegetationObjectType" substitutionGroup="_VegetationObject"/>
<!-- ========================================================================================= -->
<xs:element name="_GenericApplicationPropertyOfSolitaryVegetationObject" type="xs:anyType" abstract="true"/>
<!-- ========================================================================================= -->
<xs:simpleType name="PlantClassType">
<xs:annotation>
<xs:documentation>Class of a SolitaryVegetationObject. The values of this type are defined in the XML file
PlantClassType.xml, according to the dictionary concept of GML3. </xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<!-- ========================================================================================= -->
<xs:simpleType name="PlantFunctionType">
<xs:annotation>
<xs:documentation>Function of a PlantType. The values of this type are defined in the XML file PlantFunctionType.xml,
according to the dictionary concept of GML3. </xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<!-- ========================================================================================= -->
<xs:simpleType name="SpeciesType">
<xs:annotation>
<xs:documentation>Type of a Species. The values of this type are defined in the XML file SpeciesType.xml, according to
the dictionary concept of GML3. </xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string"/>
</xs:simpleType>
<!-- ========================================================================================= -->
</xs:schema>
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment