<xs:complexType name="RoomType">
	<xs:annotation>
		<xs:documentation>A Room is a thematic object for modelling the closed parts inside a building. It has to be closed, if
			necessary by using closure surfaces. The geometry may be either a solid, or a MultiSurface if the boundary is not
			topologically clean. The room connectivity may be derived by detecting shared thematic openings or closure surfaces: two
			rooms are connected if both use the same opening object or the same closure surface. The thematic surfaces bounding a room
			are referenced by the boundedBy property. As subclass of _CityObject, a Room 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="gml:CodeType" minOccurs="0"/>
				<xs:element name="function" type="gml:CodeType" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element name="usage" type="gml:CodeType" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element name="lod4Solid" type="gml:SolidPropertyType" minOccurs="0"/>
				<xs:element name="lod4MultiSurface" type="gml:MultiSurfacePropertyType" minOccurs="0"/>
				<xs:element name="boundedBy" type="BoundarySurfacePropertyType" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element name="interiorFurniture" type="InteriorFurniturePropertyType" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element name="roomInstallation" type="IntBuildingInstallationPropertyType" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="_GenericApplicationPropertyOfRoom" minOccurs="0" maxOccurs="unbounded"/>
			</xs:sequence>
		</xs:extension>
	</xs:complexContent>
</xs:complexType>