Permalink
Fetching contributors…
Cannot retrieve contributors at this time
3273 lines (3265 sloc) 155 KB
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<!--Erzeugt mit KIT (www.kit.edu) UmlToXmlTransformation-Software, Erstellungsdatum: 17.01.2017 08:46:03-->
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:energy="http://www.sig3d.org/citygml/2.0/energy/0.8.0" targetNamespace="http://www.sig3d.org/citygml/2.0/energy/0.8.0" xmlns:kit="http://www.kit.edu" xmlns:core="http://www.opengis.net/citygml/2.0" xmlns:bldg="http://www.opengis.net/citygml/building/2.0" xmlns:gml="http://www.opengis.net/gml" elementFormDefault="qualified" version="0.8.0">
<import namespace="http://www.opengis.net/citygml/2.0" schemaLocation="http://schemas.opengis.net/citygml/2.0/cityGMLBase.xsd" />
<import namespace="http://www.opengis.net/citygml/building/2.0" schemaLocation="http://schemas.opengis.net/citygml/building/2.0/building.xsd" />
<import namespace="http://www.opengis.net/gml" schemaLocation="http://schemas.opengis.net/gml/3.1.1/base/gml.xsd" />
<!--=========================================================================================-->
<!--_AbstractBuilding-->
<!--=========================================================================================-->
<element name="buildingType" type="gml:CodeType" substitutionGroup="bldg:_GenericApplicationPropertyOfAbstractBuilding">
<annotation>
<documentation>Classification of building according with their usage and form (e.g. single-family house, multi-family house, office building, industrial building).</documentation>
</annotation>
</element>
<element name="constructionWeight" type="energy:ConstructionWeightValue" substitutionGroup="bldg:_GenericApplicationPropertyOfAbstractBuilding">
<annotation>
<documentation>Classification of building according with their construction structure.</documentation>
</annotation>
</element>
<element name="energyPerformanceCertification" type="energy:EnergyPerformanceCertificationPropertyType" substitutionGroup="bldg:_GenericApplicationPropertyOfAbstractBuilding">
<annotation>
<documentation>Energy Efficiency Rating according with a given certification or label (e.g. PassivHaus, LEED Platinium, KfW Effizienzhaus 100).</documentation>
</annotation>
</element>
<element name="volume" type="energy:VolumeTypePropertyType" substitutionGroup="bldg:_GenericApplicationPropertyOfAbstractBuilding">
<annotation>
<documentation>Total volume delimited by the external building dimension.</documentation>
</annotation>
</element>
<element name="isLandmarked" type="boolean" substitutionGroup="bldg:_GenericApplicationPropertyOfAbstractBuilding">
<annotation>
<documentation>Landmark / heritage status of the building.</documentation>
</annotation>
</element>
<element name="referencePoint" type="gml:PointPropertyType" substitutionGroup="bldg:_GenericApplicationPropertyOfAbstractBuilding">
<annotation>
<documentation>Geographical location of the building.</documentation>
</annotation>
</element>
<element name="refurbishmentMeasureOnBuilding" type="energy:RefurbishmentMeasurePropertyType" substitutionGroup="bldg:_GenericApplicationPropertyOfAbstractBuilding">
<annotation>
<documentation>Reference designation of the degree of refurbishment. This reference may be European (from the Tabula project) or local (used for the Energy Action Plan of a city).</documentation>
</annotation>
</element>
<element name="thermalZone" type="energy:ThermalZonePropertyType" substitutionGroup="bldg:_GenericApplicationPropertyOfAbstractBuilding">
<annotation>
<appinfo>
<gml:targetElement>energy:ThermalZone</gml:targetElement>
</appinfo>
<documentation>Zone of a building considered as isothermal, which serves as space unit for the building heating/cooling calculation. This semantic object may be or not related to a geometric entity (Building, BuildingPart, Room etc.).</documentation>
</annotation>
</element>
<element name="usageZone" type="energy:UsageZonePropertyType" substitutionGroup="bldg:_GenericApplicationPropertyOfAbstractBuilding">
<annotation>
<appinfo>
<gml:targetElement>energy:UsageZone</gml:targetElement>
</appinfo>
<documentation>Zone of a building with homogeneous usage type and indoor climate set-points</documentation>
</annotation>
</element>
<element name="floorArea" type="energy:FloorAreaPropertyType" substitutionGroup="bldg:_GenericApplicationPropertyOfAbstractBuilding">
<annotation>
<documentation>Floor area considered for the normalization of the standard energy demands.</documentation>
</annotation>
</element>
<element name="heightAboveGround" type="energy:HeightAboveGroundPropertyType" substitutionGroup="bldg:_GenericApplicationPropertyOfAbstractBuilding">
<annotation>
<documentation>Building height above general ground. level. This elevation lies anywhere between between the lowest and the highest ground points of the construction.</documentation>
</annotation>
</element>
<element name="buildingMainConstruction" type="energy:AbstractConstructionPropertyType" substitutionGroup="bldg:_GenericApplicationPropertyOfAbstractBuilding">
<annotation>
<documentation>Average material properties of the complete building.</documentation>
</annotation>
</element>
<!--=========================================================================================-->
<!--_CityObject-->
<!--=========================================================================================-->
<element name="energyConversionSystem" type="energy:EnergyConversionSystemPropertyType" substitutionGroup="core:_GenericApplicationPropertyOfCityObject">
<annotation>
<appinfo>
<gml:targetElement>energy:EnergyConversionSystem</gml:targetElement>
</appinfo>
</annotation>
</element>
<element name="energyDemand" type="energy:EnergyDemandPropertyType" substitutionGroup="core:_GenericApplicationPropertyOfCityObject">
<annotation>
<appinfo>
<gml:targetElement>energy:EnergyDemand</gml:targetElement>
</appinfo>
</annotation>
</element>
<element name="weatherData" type="energy:WeatherDataPropertyType" substitutionGroup="core:_GenericApplicationPropertyOfCityObject">
<annotation>
<appinfo>
<gml:targetElement>energy:WeatherData</gml:targetElement>
</appinfo>
</annotation>
</element>
<!--=========================================================================================-->
<!--_Schedule-->
<!--=========================================================================================-->
<element abstract="true" name="_Schedule" type="energy:_ScheduleType" substitutionGroup="gml:_GML" />
<complexType abstract="true" name="_ScheduleType">
<complexContent>
<extension base="gml:AbstractGMLType" />
</complexContent>
</complexType>
<complexType name="_SchedulePropertyType">
<sequence>
<element ref="energy:_Schedule" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--_SolarEnergySystem-->
<!--=========================================================================================-->
<element abstract="true" name="_SolarEnergySystem" type="energy:_SolarEnergySystemType" substitutionGroup="energy:EnergyConversionSystem" />
<complexType abstract="true" name="_SolarEnergySystemType">
<annotation>
<documentation>Either solar thermal or photovoltaic system, using solar energy to generate heat or electricity</documentation>
</annotation>
<complexContent>
<extension base="energy:EnergyConversionSystemType">
<sequence>
<element name="surfaceGeometry" minOccurs="0" type="gml:MultiSurfacePropertyType" />
<element name="installedOnBoundarySurface" minOccurs="0" type="gml:ReferenceType">
<annotation>
<appinfo>
<gml:targetElement>bldg:_BoundarySurface</gml:targetElement>
</appinfo>
<documentation>Relation between the solar system and the building boundary surface on which it is installed</documentation>
</annotation>
</element>
<element name="installedOnBuildingInstallation" minOccurs="0" type="bldg:BuildingInstallationPropertyType">
<annotation>
<appinfo>
<gml:targetElement>bldg:BuildingInstallation</gml:targetElement>
</appinfo>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="_SolarEnergySystemPropertyType">
<sequence>
<element ref="energy:_SolarEnergySystem" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--_StorageSystem-->
<!--=========================================================================================-->
<element abstract="true" name="_StorageSystem" type="energy:_StorageSystemType" substitutionGroup="gml:_Feature" />
<complexType abstract="true" name="_StorageSystemType">
<annotation>
<documentation>System storing energy. A same storage may store the energy of different end-users and different end-use.</documentation>
</annotation>
<complexContent>
<extension base="gml:AbstractFeatureType">
<sequence>
<element name="serviceLife" minOccurs="0" type="energy:ServiceLifePropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:ServiceLife</gml:targetElement>
</appinfo>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="_StorageSystemPropertyType">
<sequence>
<element ref="energy:_StorageSystem" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--_TimeSeries-->
<!--=========================================================================================-->
<element abstract="true" name="_TimeSeries" type="energy:_TimeSeriesType" substitutionGroup="gml:_GML" />
<complexType abstract="true" name="_TimeSeriesType">
<annotation>
<documentation>Consistent series of time-depending values.</documentation>
</annotation>
<complexContent>
<extension base="gml:AbstractGMLType">
<sequence>
<element name="variableProperties" type="energy:TimeValuesPropertiesPropertyType">
<annotation>
<documentation>Set of properties of the variable of the time series.</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="_TimeSeriesPropertyType">
<sequence>
<element ref="energy:_TimeSeries" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--AbstractConstruction-->
<!--=========================================================================================-->
<element abstract="true" name="AbstractConstruction" type="energy:AbstractConstructionType" substitutionGroup="gml:_Feature" />
<complexType abstract="true" name="AbstractConstructionType">
<annotation>
<documentation>Abstract super class of Construction and ConstructionOrientation.</documentation>
</annotation>
<complexContent>
<extension base="gml:AbstractFeatureType" />
</complexContent>
</complexType>
<complexType name="AbstractConstructionPropertyType">
<sequence>
<element ref="energy:AbstractConstruction" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--AbstractMaterial-->
<!--=========================================================================================-->
<element abstract="true" name="AbstractMaterial" type="energy:AbstractMaterialType" substitutionGroup="gml:_Feature" />
<complexType abstract="true" name="AbstractMaterialType">
<annotation>
<documentation>Abstract superclass for all Material classes. A Material is a homogeneous substance that can be used to form elements.</documentation>
</annotation>
<complexContent>
<extension base="gml:AbstractFeatureType">
<sequence>
<element name="imageTexture" minOccurs="0" type="energy:ImageTexturePropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:ImageTexture</gml:targetElement>
</appinfo>
<documentation>Reference to a texture file</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="AbstractMaterialPropertyType">
<sequence>
<element ref="energy:AbstractMaterial" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--AcquisitionMethodValue-->
<!--=========================================================================================-->
<simpleType name="AcquisitionMethodValue">
<annotation>
<documentation>&lt;b&gt;Note&lt;/b&gt;: May be converted to CodeList in next version.</documentation>
</annotation>
<restriction base="string">
<enumeration value="Measurement">
<annotation>
<documentation>Measured data</documentation>
</annotation>
</enumeration>
<enumeration value="Simulation">
<annotation>
<documentation>Simulated data</documentation>
</annotation>
</enumeration>
<enumeration value="CalibratedSimulation">
<annotation>
<documentation>Data of a calibrated simulation</documentation>
</annotation>
</enumeration>
<enumeration value="Estimation">
<annotation>
<documentation>Estimated data</documentation>
</annotation>
</enumeration>
<enumeration value="Unknown">
<annotation>
<documentation>Unknown acquisition method</documentation>
</annotation>
</enumeration>
</restriction>
</simpleType>
<!--=========================================================================================-->
<!--AirCompressor-->
<!--=========================================================================================-->
<element name="AirCompressor" type="energy:AirCompressorType" substitutionGroup="energy:EnergyConversionSystem" />
<complexType name="AirCompressorType">
<complexContent>
<extension base="energy:EnergyConversionSystemType">
<sequence>
<element name="compressorType" type="energy:CompressorTypeValue" />
<element name="pressure" minOccurs="0" type="gml:MeasureType" />
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="AirCompressorPropertyType">
<sequence>
<element ref="energy:AirCompressor" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--Boiler-->
<!--=========================================================================================-->
<element name="Boiler" type="energy:BoilerType" substitutionGroup="energy:EnergyConversionSystem" />
<complexType name="BoilerType">
<annotation>
<documentation>Closed vessel in which water is heated.</documentation>
</annotation>
<complexContent>
<extension base="energy:EnergyConversionSystemType">
<sequence>
<element name="condensation" type="boolean">
<annotation>
<documentation>True if the boiler use the condensing process, it means extract additional heat from the waste gases by condensing this water vapour to liquid water. False otherwise.</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="BoilerPropertyType">
<sequence>
<element ref="energy:Boiler" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--BuildingUnit-->
<!--=========================================================================================-->
<element name="BuildingUnit" type="energy:BuildingUnitType" substitutionGroup="core:_CityObject" />
<complexType name="BuildingUnitType">
<annotation>
<documentation>A building unit is a part of usage zone, such as dwelling or workplace, which is related to a single occupant entity.</documentation>
</annotation>
<complexContent>
<extension base="core:AbstractCityObjectType">
<sequence>
<element name="numberOfRooms" minOccurs="0" type="int">
<annotation>
<documentation>Number of separated rooms other than a circulation space in the building unit.</documentation>
</annotation>
</element>
<element name="ownerName" minOccurs="0" type="string">
<annotation>
<documentation>Name of the owner.</documentation>
</annotation>
</element>
<element name="ownershipType" minOccurs="0" type="gml:CodeType">
<annotation>
<documentation>Type of organisations, associations, businesses etc. that owns the building (e.g. individual, public authority, property management company, non-profit organisation etc.).</documentation>
</annotation>
</element>
<element name="floorArea" minOccurs="0" maxOccurs="unbounded" type="energy:FloorAreaPropertyType">
<annotation>
<documentation>Usable floor area (or net internal area) of the building unit.</documentation>
</annotation>
</element>
<element name="energyPerformanceCertification" minOccurs="0" maxOccurs="unbounded" type="energy:EnergyPerformanceCertificationPropertyType">
<annotation>
<documentation>Energy Efficiency Rating according with a given certification or label (e.g. PassivHaus, LEED Platinium, KfW Effizienzhaus 100).</documentation>
</annotation>
</element>
<element name="occupiedBy" minOccurs="0" maxOccurs="unbounded" type="energy:OccupantsPropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:Occupants</gml:targetElement>
</appinfo>
</annotation>
</element>
<element name="address" minOccurs="0" maxOccurs="unbounded" type="core:AddressPropertyType">
<annotation>
<appinfo>
<gml:targetElement>core:Address</gml:targetElement>
</appinfo>
</annotation>
</element>
<element name="equippedWith" minOccurs="0" maxOccurs="unbounded" type="energy:FacilitiesPropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:Facilities</gml:targetElement>
</appinfo>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="BuildingUnitPropertyType">
<sequence>
<element ref="energy:BuildingUnit" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--CellTypeValue-->
<!--=========================================================================================-->
<simpleType name="CellTypeValue">
<restriction base="string">
<enumeration value="Monocrystalline" />
<enumeration value="Polycrystalline" />
<enumeration value="Amorphous" />
</restriction>
</simpleType>
<!--=========================================================================================-->
<!--Chiller-->
<!--=========================================================================================-->
<element name="Chiller" type="energy:ChillerType" substitutionGroup="energy:EnergyConversionSystem" />
<complexType name="ChillerType">
<complexContent>
<extension base="energy:EnergyConversionSystemType">
<sequence>
<element name="condensationType" type="energy:CondensationTypeValue" />
<element name="compressorType" type="energy:CompressorTypeValue" />
<element name="refrigerant" minOccurs="0" type="string" />
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="ChillerPropertyType">
<sequence>
<element ref="energy:Chiller" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--CollectorTypeValue-->
<!--=========================================================================================-->
<simpleType name="CollectorTypeValue">
<restriction base="string">
<enumeration value="FlatPlaneCollector" />
<enumeration value="EvacuatedTubeCollector" />
</restriction>
</simpleType>
<!--=========================================================================================-->
<!--CombinedHeatPower-->
<!--=========================================================================================-->
<element name="CombinedHeatPower" type="energy:CombinedHeatPowerType" substitutionGroup="energy:EnergyConversionSystem" />
<complexType name="CombinedHeatPowerType">
<annotation>
<documentation>Also called cogeneration. Heat engine or power station generating electricity and useful heat at the same time.</documentation>
</annotation>
<complexContent>
<extension base="energy:EnergyConversionSystemType">
<sequence>
<element name="technologyType" type="string">
<annotation>
<documentation>Cogeneration technology (e.g. Stirling motor, engine motor, turbine).</documentation>
</annotation>
</element>
<element name="thermalEfficiency" minOccurs="0" type="gml:ScaleType">
<annotation>
<documentation>Efficiency of the heat production, corresponding to the quotient of the thermal output over the fuel input.</documentation>
</annotation>
</element>
<element name="electricalEfficiency" minOccurs="0" type="gml:ScaleType">
<annotation>
<documentation>Efficiency of the power production, corresponding to the quotient of the electrical output over the fuel input.</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="CombinedHeatPowerPropertyType">
<sequence>
<element ref="energy:CombinedHeatPower" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--ConstantValueSchedule-->
<!--=========================================================================================-->
<element name="ConstantValueSchedule" type="energy:ConstantValueScheduleType" substitutionGroup="energy:_Schedule" />
<complexType name="ConstantValueScheduleType">
<annotation>
<documentation>Schedule representation consisting of a constant value.</documentation>
</annotation>
<complexContent>
<extension base="energy:_ScheduleType">
<sequence>
<element name="averageValue" type="gml:MeasureType">
<annotation>
<documentation>Average variable value.</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="ConstantValueSchedulePropertyType">
<sequence>
<element ref="energy:ConstantValueSchedule" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--Construction-->
<!--=========================================================================================-->
<element name="Construction" type="energy:ConstructionType" substitutionGroup="energy:AbstractConstruction" />
<complexType name="ConstructionType">
<annotation>
<documentation>A Construction is a combination of layers, such as a wall or a roof.
&amp;lt;p&amp;gt; &amp;lt;img src="../png/Construction-Layer-Illustration.png"&amp;gt;&amp;lt;/p&amp;gt;</documentation>
</annotation>
<complexContent>
<extension base="energy:AbstractConstructionType">
<sequence>
<element name="uValue" minOccurs="0" type="gml:MeasureType">
<annotation>
<documentation>Overall heat transfer coefficient. It represents the heat flux transfer through a construction, normalized by the construction surface and the difference of temperature across the construction, at steady state.</documentation>
</annotation>
</element>
<element name="opticalProperties" minOccurs="0" type="energy:OpticalPropertiesPropertyType">
<annotation>
<documentation>Optical properties of a Construction</documentation>
</annotation>
</element>
<element name="serviceLife" minOccurs="0" type="energy:ServiceLifePropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:ServiceLife</gml:targetElement>
</appinfo>
</annotation>
</element>
<element name="layer" minOccurs="0" maxOccurs="unbounded" type="energy:LayerPropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:Layer</gml:targetElement>
</appinfo>
<documentation>Reference to layers that comprise this construction. Multiple LayerId's order is important and specifies the layering of the layer's referenced materials. The first Surface/AdjacentSpaceId entered will determine how the referenced construction layers are ordered with the first construction layer being in contact with the outside or 2nd Surface/AdjacentSpaceId listed and the last layer in contact with the first Surface/AdjacentSpaceId listed</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="ConstructionPropertyType">
<sequence>
<element ref="energy:Construction" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--ConstructionWeightValue-->
<!--=========================================================================================-->
<simpleType name="ConstructionWeightValue">
<annotation>
<documentation>Very light construction</documentation>
</annotation>
<restriction base="string">
<enumeration value="VeryLight">
<annotation>
<documentation>Very light construction</documentation>
</annotation>
</enumeration>
<enumeration value="Light">
<annotation>
<documentation>Light construction</documentation>
</annotation>
</enumeration>
<enumeration value="Medium">
<annotation>
<documentation>Medium construction</documentation>
</annotation>
</enumeration>
<enumeration value="Heavy">
<annotation>
<documentation>Heavy construction</documentation>
</annotation>
</enumeration>
</restriction>
</simpleType>
<!--=========================================================================================-->
<!--DailyPatternSchedule-->
<!--=========================================================================================-->
<element name="DailyPatternSchedule" type="energy:DailyPatternScheduleType" substitutionGroup="energy:_Schedule" />
<complexType name="DailyPatternScheduleType">
<annotation>
<documentation>Schedule representation consisting iofa set of daily schedules associated to recurrent day types (weekday, weekend etc.). In different time periods within a year, different daily schedules may be associated to a day type.</documentation>
</annotation>
<complexContent>
<extension base="energy:_ScheduleType">
<sequence>
<element name="periodOfYear" maxOccurs="unbounded" type="energy:PeriodOfYearPropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:PeriodOfYear</gml:targetElement>
</appinfo>
<documentation>Schedule over a one day period (from 0:00 to 24:00).</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="DailyPatternSchedulePropertyType">
<sequence>
<element ref="energy:DailyPatternSchedule" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--DailySchedule-->
<!--=========================================================================================-->
<element name="DailySchedule" type="energy:DailyScheduleType" />
<complexType name="DailyScheduleType">
<annotation>
<documentation>Schedule over a one day period (from 0:00 to 24:00).</documentation>
</annotation>
<sequence>
<element name="dayType" type="energy:DayTypeValue">
<annotation>
<documentation>Type referring to a day categorization (e.g weekDay, weekEnd).</documentation>
</annotation>
</element>
<element name="schedule" type="energy:_TimeSeriesPropertyType">
<annotation>
<documentation>Time series of values for one day</documentation>
</annotation>
</element>
</sequence>
</complexType>
<complexType name="DailySchedulePropertyType">
<sequence>
<element ref="energy:DailySchedule" minOccurs="0" />
</sequence>
</complexType>
<!--=========================================================================================-->
<!--DateOfEvent-->
<!--=========================================================================================-->
<element name="DateOfEvent" type="energy:DateOfEventType" />
<complexType name="DateOfEventType">
<annotation>
<documentation>Specifies either an exact time instant or a time span</documentation>
</annotation>
<choice>
<element name="instant" type="gml:TimePositionType">
<annotation>
<documentation>Daten and/or time of the event</documentation>
</annotation>
</element>
<element name="period" type="gml:TimePeriodPropertyType">
<annotation>
<documentation>Begin and end of the event</documentation>
</annotation>
</element>
</choice>
</complexType>
<complexType name="DateOfEventPropertyType">
<sequence>
<element ref="energy:DateOfEvent" minOccurs="0" />
</sequence>
</complexType>
<!--=========================================================================================-->
<!--DayTypeValue-->
<!--=========================================================================================-->
<simpleType name="DayTypeValue">
<annotation>
<documentation>Type referring to a day categorization.</documentation>
</annotation>
<restriction base="string">
<enumeration value="Monday" />
<enumeration value="Tuesday" />
<enumeration value="Wednesday" />
<enumeration value="Thursday" />
<enumeration value="Friday" />
<enumeration value="Saturday" />
<enumeration value="Sunday" />
<enumeration value="DesignDay">
<annotation>
<documentation>"Extrem summer" day used for the sizing and design of HVAC Systems in summer condition.</documentation>
</annotation>
</enumeration>
<enumeration value="WeekDay">
<annotation>
<documentation>Monday to Friday.</documentation>
</annotation>
</enumeration>
<enumeration value="WeekEnd">
<annotation>
<documentation>Saturday and Sunday.</documentation>
</annotation>
</enumeration>
<enumeration value="TypicalDay" />
</restriction>
</simpleType>
<!--=========================================================================================-->
<!--DHWFacilities-->
<!--=========================================================================================-->
<element name="DHWFacilities" type="energy:DHWFacilitiesType" substitutionGroup="energy:Facilities" />
<complexType name="DHWFacilitiesType">
<annotation>
<documentation>Facilities for domestic hot water usage.</documentation>
</annotation>
<complexContent>
<extension base="energy:FacilitiesType">
<sequence>
<element name="numberOfBaths" minOccurs="0" type="int">
<annotation>
<documentation>Number of baths in a given building unit/zone.</documentation>
</annotation>
</element>
<element name="numberOfShowers" minOccurs="0" type="int">
<annotation>
<documentation>Number of showers in a given building unit/zone.</documentation>
</annotation>
</element>
<element name="numberOfWashBasins" minOccurs="0" type="int">
<annotation>
<documentation>Number of wash basin in a given building unit/zone.</documentation>
</annotation>
</element>
<element name="waterStorageVolume" minOccurs="0" type="gml:VolumeType" />
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="DHWFacilitiesPropertyType">
<sequence>
<element ref="energy:DHWFacilities" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--DistributionTypeValue-->
<!--=========================================================================================-->
<simpleType name="DistributionTypeValue">
<annotation>
<documentation>Classification referring to energy distribution art between the energy conversion system and the end-use place.</documentation>
</annotation>
<restriction base="string">
<enumeration value="Building">
<annotation>
<documentation>Building with a unique energy conversion system.</documentation>
</annotation>
</enumeration>
<enumeration value="Dwelling">
<annotation>
<documentation>One energy conversion system per dwelling.</documentation>
</annotation>
</enumeration>
<enumeration value="GroupOfBuildings">
<annotation>
<documentation>Group of Building with a unique energy conversion system.The energy distribution runs between the buildings.</documentation>
</annotation>
</enumeration>
<enumeration value="Room">
<annotation>
<documentation>One energy conversion system per room.</documentation>
</annotation>
</enumeration>
<enumeration value="Staircase">
<annotation>
<documentation>One energy conversion system per building stair-case, with a distribution system supplying vertically the premises of the different storeys.</documentation>
</annotation>
</enumeration>
<enumeration value="Storey">
<annotation>
<documentation>One energy conversion system per storey, with a distribution system supplying horizontally the premises of whole storey.</documentation>
</annotation>
</enumeration>
</restriction>
</simpleType>
<!--=========================================================================================-->
<!--DualValueSchedule-->
<!--=========================================================================================-->
<element name="DualValueSchedule" type="energy:DualValueScheduleType" substitutionGroup="energy:_Schedule" />
<complexType name="DualValueScheduleType">
<annotation>
<documentation>schedule representation consisting of a two-state schedule related to an amount of usage time.</documentation>
</annotation>
<complexContent>
<extension base="energy:_ScheduleType">
<sequence>
<element name="usageHoursPerDay" minOccurs="0" default="24" type="double" />
<element name="usageDaysPerYear" minOccurs="0" default="365" type="double">
<annotation>
<documentation>Number of days per year of usage.</documentation>
</annotation>
</element>
<element name="usageValue" type="gml:MeasureType">
<annotation>
<documentation>Variable value during usage time (e.g. set-point temperature).</documentation>
</annotation>
</element>
<element name="idleValue" type="gml:MeasureType">
<annotation>
<documentation>Variable value outside usage time (e.g. set-back temperature).</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="DualValueSchedulePropertyType">
<sequence>
<element ref="energy:DualValueSchedule" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--ElectricalAppliances-->
<!--=========================================================================================-->
<element name="ElectricalAppliances" type="energy:ElectricalAppliancesType" substitutionGroup="energy:Facilities" />
<complexType name="ElectricalAppliancesType">
<annotation>
<documentation>Non-HVAC electrical devices/appliances inside the building unit or building zone.</documentation>
</annotation>
<complexContent>
<extension base="energy:FacilitiesType">
<sequence>
<element name="electricalPower" minOccurs="0" type="gml:MeasureType">
<annotation>
<documentation>Nominal electrical power of the electrical appliance.</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="ElectricalAppliancesPropertyType">
<sequence>
<element ref="energy:ElectricalAppliances" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--ElectricalResistance-->
<!--=========================================================================================-->
<element name="ElectricalResistance" type="energy:ElectricalResistanceType" substitutionGroup="energy:EnergyConversionSystem" />
<complexType name="ElectricalResistanceType">
<complexContent>
<extension base="energy:EnergyConversionSystemType" />
</complexContent>
</complexType>
<complexType name="ElectricalResistancePropertyType">
<sequence>
<element ref="energy:ElectricalResistance" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--ElevationReferenceValue-->
<!--=========================================================================================-->
<simpleType name="ElevationReferenceValue">
<annotation>
<documentation>&lt;b&gt;Note&lt;/b&gt;: May be converted to CodeList in next version.</documentation>
</annotation>
<restriction base="string">
<enumeration value="bottomOfConstruction">
<annotation>
<documentation>The elevation has been captured at the bottom of the usable part of the construction.
NOTE: The bottom of usable part of a building is generally its lowest underground floor.</documentation>
</annotation>
</enumeration>
<enumeration value="entrancePoint">
<annotation>
<documentation>The elevation has been captured at the entrance of the construction, generally the bottom of entrance door.</documentation>
</annotation>
</enumeration>
<enumeration value="generalEave">
<annotation>
<documentation>The elevation has been captured at eave level, anywhere between the lowest and the highest eave levels of the construction.
NOTE: in case of a roof having a symmetry axis, values generalEave, lowestEave and highestEave are equivalent.</documentation>
</annotation>
</enumeration>
<enumeration value="generalRoof">
<annotation>
<documentation>The elevation has been captured at roof level, anywhere between the lowest edge roof level and the top of the construction.</documentation>
</annotation>
</enumeration>
<enumeration value="generalRoofEdge">
<annotation>
<documentation>The elevation has been captured at roof edge level, anywhere between the lowest and the highest roof edges of the construction.
NOTE: in case of a roof having a symmetry axis, values generalRoofEdge, lowestRoofEdge and highestRoofEdge are equivalent.</documentation>
</annotation>
</enumeration>
<enumeration value="highestEave">
<annotation>
<documentation>The elevation has been captured at the highest eave level of the construction.</documentation>
</annotation>
</enumeration>
<enumeration value="highestPoint">
<annotation>
<documentation>The elevation has been captured at the highest point of the construction, including the installations, such as chimneys and antennas.</documentation>
</annotation>
</enumeration>
<enumeration value="highestRoofEdge">
<annotation>
<documentation>The elevation has been captured at the highest roof edge level of the construction.</documentation>
</annotation>
</enumeration>
<enumeration value="lowestEave">
<annotation>
<documentation>The elevation has been captured at the lowest eave level of the construction.</documentation>
</annotation>
</enumeration>
<enumeration value="lowestFloorAboveGround">
<annotation>
<documentation>The elevation has been captured at the level of the lowest floor above ground.
This value is of interest for over-hanging buildings or for buildings on pylons.</documentation>
</annotation>
</enumeration>
<enumeration value="lowestRoofEdge">
<annotation>
<documentation>The elevation has been captured at the lowest roof edge level of the construction.</documentation>
</annotation>
</enumeration>
<enumeration value="topOfConstruction">
<annotation>
<documentation>The elevation has been captured at the top level of the construction.
NOTE: for buildings, it is generally top of the roof.</documentation>
</annotation>
</enumeration>
<enumeration value="topThermalBoundary">
<annotation>
<documentation>The elevation has been captured at the top of the highest Thermal Boundary.</documentation>
</annotation>
</enumeration>
<enumeration value="bottomThermalBoundary">
<annotation>
<documentation>The elevation has been captured at the bottom of the lowest Thermal Boundary.</documentation>
</annotation>
</enumeration>
</restriction>
</simpleType>
<!--=========================================================================================-->
<!--Emissivity-->
<!--=========================================================================================-->
<element name="Emissivity" type="energy:EmissivityType" />
<complexType name="EmissivityType">
<annotation>
<documentation>Percentaged infra-red emissivity</documentation>
</annotation>
<sequence>
<element name="fraction" type="gml:ScaleType">
<annotation>
<documentation>Fraction (between 0 and 1) of energy emittance.</documentation>
</annotation>
</element>
<element name="surface" type="energy:SurfaceSide">
<annotation>
<documentation>Considered surface of the construction.</documentation>
</annotation>
</element>
</sequence>
</complexType>
<complexType name="EmissivityPropertyType">
<sequence>
<element ref="energy:Emissivity" minOccurs="0" />
</sequence>
</complexType>
<!--=========================================================================================-->
<!--Emitter-->
<!--=========================================================================================-->
<element name="Emitter" type="energy:EmitterType" substitutionGroup="gml:_Feature" />
<complexType name="EmitterType">
<annotation>
<documentation>End unit which emits useful energy (e.g. heat, cool) in the zone where it is required.</documentation>
</annotation>
<complexContent>
<extension base="gml:AbstractFeatureType">
<sequence>
<element name="emitterType" minOccurs="0" type="energy:EmitterTypeValue">
<annotation>
<documentation>Type of the energy emitter (e.g. radiators, radiant floor etc.).</documentation>
</annotation>
</element>
<element name="unitNumber" minOccurs="0" type="int">
<annotation>
<documentation>Number of emitter units.</documentation>
</annotation>
</element>
<element name="installedPower" minOccurs="0" type="gml:MeasureType">
<annotation>
<documentation>Total nominal power of the emitter units.</documentation>
</annotation>
</element>
<element name="thermalExchange" minOccurs="0" type="energy:HeatExchangeTypePropertyType">
<annotation>
<documentation>Proportion of the different thermal exchanges (e.g. convection, radiative etc.).</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="EmitterPropertyType">
<sequence>
<element ref="energy:Emitter" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--EndUseTypeValue-->
<!--=========================================================================================-->
<simpleType name="EndUseTypeValue">
<annotation>
<documentation>Category of end use related to a building energy use.</documentation>
</annotation>
<restriction base="string">
<enumeration value="Cooking" />
<enumeration value="DomesticHotWater" />
<enumeration value="ElectricalAppliances" />
<enumeration value="Lighting" />
<enumeration value="OtherOrCombination" />
<enumeration value="SpaceCooling">
<annotation>
<documentation>Processes of cooling down the space.</documentation>
</annotation>
</enumeration>
<enumeration value="SpaceHeating">
<annotation>
<documentation>Processes of heating up the space.</documentation>
</annotation>
</enumeration>
<enumeration value="Ventilation" />
<enumeration value="Process" />
</restriction>
</simpleType>
<!--=========================================================================================-->
<!--EnergyCarrier-->
<!--=========================================================================================-->
<element name="EnergyCarrier" type="energy:EnergyCarrierType" />
<complexType name="EnergyCarrierType">
<annotation>
<documentation>Energy form containing the energy (e.g. fuel, renewable energy etc.)</documentation>
</annotation>
<sequence>
<element name="co2EmissionFactor" type="gml:MeasureType">
<annotation>
<documentation>Equivalent carbon dioxide emitted by the combustion of 1 kWh energy carrier.</documentation>
</annotation>
</element>
<element name="energyDensity" minOccurs="0" type="gml:MeasureType">
<annotation>
<documentation>Amount of energy stored in a given volume of the energy carrier.</documentation>
</annotation>
</element>
<element name="primaryEnergyFactor" type="gml:MeasureType">
<annotation>
<documentation>Ratio of Final energy over Primary Energy.</documentation>
</annotation>
</element>
<element name="type" type="gml:CodeType">
<annotation>
<documentation>Name of Energy Carrier.</documentation>
</annotation>
</element>
</sequence>
</complexType>
<complexType name="EnergyCarrierPropertyType">
<sequence>
<element ref="energy:EnergyCarrier" minOccurs="0" />
</sequence>
</complexType>
<!--=========================================================================================-->
<!--EnergyConversionSystem-->
<!--=========================================================================================-->
<element name="EnergyConversionSystem" type="energy:EnergyConversionSystemType" substitutionGroup="gml:_Feature" />
<complexType name="EnergyConversionSystemType">
<annotation>
<documentation>Energy conversion system is a system producing the energy necessary to satisfy the end-use (or to feed the networks) from an energy source.</documentation>
</annotation>
<complexContent>
<extension base="gml:AbstractFeatureType">
<sequence>
<element name="efficiencyIndicator" minOccurs="0" type="string">
<annotation>
<documentation>Reference efficiency ratio used to quantify the system efficiency (e.g. COP, EER, W/(m3/h)).</documentation>
</annotation>
</element>
<element name="installedNominalPower" minOccurs="0" type="double">
<annotation>
<documentation>Total nominal power of the energy conversion system.</documentation>
</annotation>
</element>
<element name="model" minOccurs="0" type="string">
<annotation>
<documentation>Model reference of the energy conversion system.</documentation>
</annotation>
</element>
<element name="nominalEfficiency" minOccurs="0" type="gml:MeasureType">
<annotation>
<documentation>Nominal ratio of energy output to input, according to manufacturer.</documentation>
</annotation>
</element>
<element name="number" minOccurs="0" type="int">
<annotation>
<documentation>Number of similar energy conversion units which constitutes the energy conversion system.</documentation>
</annotation>
</element>
<element name="productAndInstallationDocument" minOccurs="0" type="core:ExternalReferenceType">
<annotation>
<documentation>External documents adding information on the energy conversion system product and its installation.</documentation>
</annotation>
</element>
<element name="yearOfManufacture" minOccurs="0" type="gYear">
<annotation>
<documentation>Year of manufacture of the energy conversion system (its main equipments).</documentation>
</annotation>
</element>
<element name="serviceLife" minOccurs="0" type="energy:ServiceLifePropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:ServiceLife</gml:targetElement>
</appinfo>
</annotation>
</element>
<element name="installedIn" minOccurs="0" type="gml:ReferenceType">
<annotation>
<appinfo>
<gml:targetElement>core:_CityObject</gml:targetElement>
</appinfo>
</annotation>
</element>
<element name="has" minOccurs="0" maxOccurs="unbounded" type="energy:SystemOperationPropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:SystemOperation</gml:targetElement>
</appinfo>
</annotation>
</element>
<element name="consumes" minOccurs="0" maxOccurs="unbounded" type="energy:FinalEnergyPropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:FinalEnergy</gml:targetElement>
<gml:reversePropertyName>energy:isConsumedBy</gml:reversePropertyName>
</appinfo>
</annotation>
</element>
<element name="produces" minOccurs="0" maxOccurs="unbounded" type="energy:FinalEnergyPropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:FinalEnergy</gml:targetElement>
<gml:reversePropertyName>energy:isProducedBy</gml:reversePropertyName>
</appinfo>
</annotation>
</element>
<element name="provides" minOccurs="0" maxOccurs="unbounded" type="energy:EnergyDemandPropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:EnergyDemand</gml:targetElement>
<gml:reversePropertyName>energy:isProvidedBy</gml:reversePropertyName>
</appinfo>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="EnergyConversionSystemPropertyType">
<sequence>
<element ref="energy:EnergyConversionSystem" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--EnergyDemand-->
<!--=========================================================================================-->
<element name="EnergyDemand" type="energy:EnergyDemandType" substitutionGroup="gml:_Feature" />
<complexType name="EnergyDemandType">
<annotation>
<documentation>Energy demand is the useful energy required to satisfy a specific end-use, such as heating, cooling, domestic hot water etc.</documentation>
</annotation>
<complexContent>
<extension base="gml:AbstractFeatureType">
<sequence>
<element name="endUse" type="energy:EndUseTypeValue">
<annotation>
<documentation>Category of end use related to an energy use.</documentation>
</annotation>
</element>
<element name="energyAmount" minOccurs="0" type="energy:_TimeSeriesPropertyType">
<annotation>
<documentation>[TimeSeries] Time-depending amount of useful energy, corresponding to a specific end-use. It can be constituted of simulated or monitored data, with different time resolutions (see TimeSeries model).</documentation>
</annotation>
</element>
<element name="maximumLoad" minOccurs="0" type="gml:MeasureType" />
<element name="energyDistribution" minOccurs="0" type="energy:EnergyDistributionSystemPropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:EnergyDistributionSystem</gml:targetElement>
</appinfo>
</annotation>
</element>
<element name="storage" minOccurs="0" maxOccurs="unbounded" type="energy:_StorageSystemPropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:_StorageSystem</gml:targetElement>
</appinfo>
</annotation>
</element>
<element name="isProvidedBy" minOccurs="0" maxOccurs="unbounded" type="energy:EnergyConversionSystemPropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:EnergyConversionSystem</gml:targetElement>
<gml:reversePropertyName>energy:provides</gml:reversePropertyName>
</appinfo>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="EnergyDemandPropertyType">
<sequence>
<element ref="energy:EnergyDemand" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--EnergyDistributionSystem-->
<!--=========================================================================================-->
<element name="EnergyDistributionSystem" type="energy:EnergyDistributionSystemType" substitutionGroup="gml:_Feature" />
<complexType name="EnergyDistributionSystemType">
<annotation>
<documentation>Energy distribution system is a system in charge of delivering the energy inside the building, from the place of energy production to the place of end-use. It consists then in the storage (including battery/tank and pipe volumes), the circulation pumps, the distribution pipes and the end use units (radiators, fan coils etc.).</documentation>
</annotation>
<complexContent>
<extension base="gml:AbstractFeatureType">
<sequence>
<element name="serviceLife" minOccurs="0" type="energy:ServiceLifePropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:ServiceLife</gml:targetElement>
</appinfo>
</annotation>
</element>
<element name="distributionPerimeter" minOccurs="0" type="energy:DistributionTypeValue" />
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="EnergyDistributionSystemPropertyType">
<sequence>
<element ref="energy:EnergyDistributionSystem" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--EnergyPerformanceCertification-->
<!--=========================================================================================-->
<element name="EnergyPerformanceCertification" type="energy:EnergyPerformanceCertificationType" />
<complexType name="EnergyPerformanceCertificationType">
<annotation>
<documentation>Energy performance certification.</documentation>
</annotation>
<sequence>
<element name="certificationRating" type="string">
<annotation>
<documentation>Degree or value resulting from the certification assessment</documentation>
</annotation>
</element>
<element name="certificationName" type="string">
<annotation>
<documentation>Labeling system for the erengy certificate.</documentation>
</annotation>
</element>
<element name="certificationId" minOccurs="0" type="string">
<annotation>
<documentation>Identifier of the energy certificate.</documentation>
</annotation>
</element>
</sequence>
</complexType>
<complexType name="EnergyPerformanceCertificationPropertyType">
<sequence>
<element ref="energy:EnergyPerformanceCertification" minOccurs="0" />
</sequence>
</complexType>
<!--=========================================================================================-->
<!--Facilities-->
<!--=========================================================================================-->
<element name="Facilities" type="energy:FacilitiesType" substitutionGroup="gml:_Feature" />
<complexType name="FacilitiesType">
<annotation>
<documentation>Facilities and Appliances inside the usage zone or building unit, which consumes and dissipate energy.</documentation>
</annotation>
<complexContent>
<extension base="gml:AbstractFeatureType">
<sequence>
<element name="operationSchedule" minOccurs="0" type="energy:_SchedulePropertyType">
<annotation>
<documentation>Operational schedule of the facilities</documentation>
</annotation>
</element>
<element name="heatDissipation" minOccurs="0" type="energy:HeatExchangeTypePropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:HeatExchangeType</gml:targetElement>
</appinfo>
<documentation>Heat energy per year (in W) dissipated by the facilities, in "nominal conditions", when the facilities are fully operating. The constant totalValue of heatDissipation is weighted by the operationSchedule, to obtain the heat dissipation temporal variation.</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="FacilitiesPropertyType">
<sequence>
<element ref="energy:Facilities" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--FinalEnergy-->
<!--=========================================================================================-->
<element name="FinalEnergy" type="energy:FinalEnergyType" substitutionGroup="gml:_Feature" />
<complexType name="FinalEnergyType">
<annotation>
<documentation>Energy form containing the energy, occuping intermediate steps in the energy-supply chain between primary energy sources and end-use demands</documentation>
</annotation>
<complexContent>
<extension base="gml:AbstractFeatureType">
<sequence>
<element name="energyAmount" minOccurs="0" type="energy:_TimeSeriesPropertyType">
<annotation>
<documentation>Time-depending amount of energy source, consumed by an energy conversion system. It can be constituted of simulated or monitored data, with different time resolutions (see TimeSeries model).</documentation>
</annotation>
</element>
<element name="energyCarrier" type="energy:EnergyCarrierPropertyType">
<annotation>
<documentation>Energy form containing energy.</documentation>
</annotation>
</element>
<element name="isConsumedBy" minOccurs="0" maxOccurs="unbounded" type="energy:EnergyConversionSystemPropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:EnergyConversionSystem</gml:targetElement>
<gml:reversePropertyName>energy:consumes</gml:reversePropertyName>
</appinfo>
</annotation>
</element>
<element name="isProducedBy" minOccurs="0" maxOccurs="unbounded" type="energy:EnergyConversionSystemPropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:EnergyConversionSystem</gml:targetElement>
<gml:reversePropertyName>energy:produces</gml:reversePropertyName>
</appinfo>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="FinalEnergyPropertyType">
<sequence>
<element ref="energy:FinalEnergy" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--FloorArea-->
<!--=========================================================================================-->
<element name="FloorArea" type="energy:FloorAreaType" />
<complexType name="FloorAreaType">
<annotation>
<documentation>Floor area</documentation>
</annotation>
<sequence>
<element name="type" type="gml:CodeType">
<annotation>
<documentation>Categorization of a method to calculate the floor area.</documentation>
</annotation>
</element>
<element name="value" type="gml:AreaType">
<annotation>
<documentation>Area value.</documentation>
</annotation>
</element>
</sequence>
</complexType>
<complexType name="FloorAreaPropertyType">
<sequence>
<element ref="energy:FloorArea" minOccurs="0" />
</sequence>
</complexType>
<!--=========================================================================================-->
<!--Gas-->
<!--=========================================================================================-->
<element name="Gas" type="energy:GasType" substitutionGroup="energy:AbstractMaterial" />
<complexType name="GasType">
<annotation>
<documentation>Gaseous material</documentation>
</annotation>
<complexContent>
<extension base="energy:AbstractMaterialType">
<sequence>
<element name="isVentilated" minOccurs="0" default="false" type="boolean">
<annotation>
<documentation>Indicates whether a gas-layer is ventilated</documentation>
</annotation>
</element>
<element name="rValue" minOccurs="0" type="gml:MeasureType">
<annotation>
<documentation>Resistance of material</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="GasPropertyType">
<sequence>
<element ref="energy:Gas" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--HeatExchanger-->
<!--=========================================================================================-->
<element name="HeatExchanger" type="energy:HeatExchangerType" substitutionGroup="energy:EnergyConversionSystem" />
<complexType name="HeatExchangerType">
<complexContent>
<extension base="energy:EnergyConversionSystemType">
<sequence>
<element name="networkId" type="string" />
<element name="networkNodeId" type="string" />
<element name="primaryHeatSupplier" minOccurs="0" type="string" />
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="HeatExchangerPropertyType">
<sequence>
<element ref="energy:HeatExchanger" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--HeatExchangeType-->
<!--=========================================================================================-->
<element name="HeatExchangeType" type="energy:HeatExchangeTypeType" />
<complexType name="HeatExchangeTypeType">
<annotation>
<documentation>Contributions of the different types of heat or cool exchange (convective, radiant and latent)</documentation>
</annotation>
<sequence>
<element name="convectiveFraction" minOccurs="0" type="gml:ScaleType">
<annotation>
<documentation>Ratio of convective heat exchange over total heat exchange.</documentation>
</annotation>
</element>
<element name="latentFraction" minOccurs="0" type="gml:ScaleType">
<annotation>
<documentation>Ratio of latent heat exchange over total heat exchange.</documentation>
</annotation>
</element>
<element name="radiantFraction" minOccurs="0" type="gml:ScaleType">
<annotation>
<documentation>Ratio of radiant heat exchange over total heat exchange.</documentation>
</annotation>
</element>
<element name="totalValue" type="gml:MeasureType">
<annotation>
<documentation>Total heat exchange value (positve for heat source, negative for heat sink/cool source).</documentation>
</annotation>
</element>
</sequence>
</complexType>
<complexType name="HeatExchangeTypePropertyType">
<sequence>
<element ref="energy:HeatExchangeType" minOccurs="0" />
</sequence>
</complexType>
<!--=========================================================================================-->
<!--HeatPump-->
<!--=========================================================================================-->
<element name="HeatPump" type="energy:HeatPumpType" substitutionGroup="energy:EnergyConversionSystem" />
<complexType name="HeatPumpType">
<complexContent>
<extension base="energy:EnergyConversionSystemType">
<sequence>
<element name="heatSource" type="energy:HeatSourceTypeValue" />
<element name="copSourceTemperature" minOccurs="0" type="gml:MeasureType">
<annotation>
<documentation>Source temperature defining the Coefficient Of Performance of the heat pump.</documentation>
</annotation>
</element>
<element name="copOperationTemperature" minOccurs="0" type="gml:MeasureType">
<annotation>
<documentation>Operation or supply water temperature defining the Coefficient Of Performance of the heat pump.</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="HeatPumpPropertyType">
<sequence>
<element ref="energy:HeatPump" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--HeatSourceTypeValue-->
<!--=========================================================================================-->
<simpleType name="HeatSourceTypeValue">
<annotation>
<documentation>Note: May be converted to CodeList in next version.</documentation>
</annotation>
<restriction base="string">
<enumeration value="AmbientAir" />
<enumeration value="Aquifer" />
<enumeration value="ExhaustAir" />
<enumeration value="HorizontalGroundCollector" />
<enumeration value="VerticalGroundCollector" />
</restriction>
</simpleType>
<!--=========================================================================================-->
<!--HeightAboveGround-->
<!--=========================================================================================-->
<element name="HeightAboveGround" type="energy:HeightAboveGroundType" />
<complexType name="HeightAboveGroundType">
<annotation>
<documentation>Different kinds of building height above general ground. level. The general ground level lies anywhere between the lowest and the highest ground points of the construction.</documentation>
</annotation>
<sequence>
<element name="heightReference" type="energy:ElevationReferenceValue">
<annotation>
<documentation>Specification of the building height reference, which is measured relative to general ground level.</documentation>
</annotation>
</element>
<element name="value" type="gml:LengthType">
<annotation>
<documentation>Height value</documentation>
</annotation>
</element>
</sequence>
</complexType>
<complexType name="HeightAboveGroundPropertyType">
<sequence>
<element ref="energy:HeightAboveGround" minOccurs="0" />
</sequence>
</complexType>
<!--=========================================================================================-->
<!--Household-->
<!--=========================================================================================-->
<element name="Household" type="energy:HouseholdType" substitutionGroup="gml:_Feature" />
<complexType name="HouseholdType">
<annotation>
<documentation>Household is a group of persons living in the same dwelling, in the case where occupant type is residents.</documentation>
</annotation>
<complexContent>
<extension base="gml:AbstractFeatureType">
<sequence>
<element name="residenceType" minOccurs="0" type="energy:ResidenceTypeValue" />
<element name="householdType" minOccurs="0" type="energy:HouseholdTypeValue" />
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="HouseholdPropertyType">
<sequence>
<element ref="energy:Household" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--HouseholdTypeValue-->
<!--=========================================================================================-->
<simpleType name="HouseholdTypeValue">
<annotation>
<documentation>Classification of Household, according with their family structure, person number and generation.
&lt;b&gt;Note&lt;/b&gt;: May be converted to CodeList in next version.</documentation>
</annotation>
<restriction base="string">
<enumeration value="LoneAdult" />
<enumeration value="MultiFamily" />
<enumeration value="OneFamily" />
<enumeration value="PensionerCouple" />
<enumeration value="UnrelatedAdults" />
<enumeration value="Vacant" />
<enumeration value="WorkerCouple" />
</restriction>
</simpleType>
<!--=========================================================================================-->
<!--ImageTexture-->
<!--=========================================================================================-->
<element name="ImageTexture" type="energy:ImageTextureType" substitutionGroup="gml:_Feature" />
<complexType name="ImageTextureType">
<annotation>
<documentation>This is an X3D element to map a texture to this material. From X3D specification: The ImageTexture node defines a texture map by specifying an image file and general parameters for mapping to geometry. Texture maps are defined in a 2D coordinate system (s, t) that ranges from [0.0, 1.0] in both directions. The bottom edge of the image corresponds to the S-axis of the texture map, and left edge of the image corresponds to the T-axis of the texture map. The lower-left pixel of the image corresponds to s=0, t=0, and the top-right pixel of the image corresponds to s=1, t=1. &amp;lt;!--When fixed: add type="x3d:ImageTexture"--&amp;gt;</documentation>
</annotation>
<complexContent>
<extension base="gml:AbstractFeatureType">
<sequence>
<element name="url" type="anyURI">
<annotation>
<documentation>Specifies location of the image. From X3D specification: The texture is read from the URL specified by the url field. When the url field contains no values, texturing is disabled. Browsers shall support the JPEG and PNG image file formats. In addition, browsers may support other image formats (e.g. CGM) which can be rendered into a 2D image. Support for the GIF format is also recommended (including transparency).</documentation>
</annotation>
</element>
<element name="repeatS" type="boolean">
<annotation>
<documentation>From X3D specification: If repeatS is TRUE, the texture map is repeated outside the [0.0, 1.0] texture coordinate range in the S direction so that it fills the shape. If repeatS is FALSE, the texture coordinates are clamped in the S direction to lie within the [0.0, 1.0] range.</documentation>
</annotation>
</element>
<element name="repeatT" type="boolean">
<annotation>
<documentation>From X3D specification: If repeatT is TRUE, the texture map is repeated outside the [0.0, 1.0] texture coordinate range in the T direction so that it fills the shape. If repeatT is FALSE, the texture coordinates are clamped in the T direction to lie within the [0.0, 1.0] range.</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="ImageTexturePropertyType">
<sequence>
<element ref="energy:ImageTexture" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--InterpolationTypeValue-->
<!--=========================================================================================-->
<simpleType name="InterpolationTypeValue">
<annotation>
<documentation>Mathematical rule required for the variable interpolation, defined in WaterML:http://def.seegrid.csiro.au/sissvoc/ogc-def/resource?uri=http://www.opengis.net/def/waterml/2.0/interpolationType/</documentation>
</annotation>
<restriction base="string">
<enumeration value="AverageInPrecedingInterval">
<annotation>
<documentation>Value represents the average value over the preceding interval. more like this</documentation>
</annotation>
</enumeration>
<enumeration value="AverageInSucceedingInterval">
<annotation>
<documentation>Value represents the average value over the following interval. more like this</documentation>
</annotation>
</enumeration>
<enumeration value="ConstantInPrecedingInterval">
<annotation>
<documentation>Value is constant in the preceding interval.</documentation>
</annotation>
</enumeration>
<enumeration value="ConstantInSucceedingInterval">
<annotation>
<documentation>Value is constant in the succeeding interval.</documentation>
</annotation>
</enumeration>
<enumeration value="Continuous">
<annotation>
<documentation>A continuous time series indicates the observation result is the value of a property at the indicated instant in time. The points are essentially connected and interpolation may occur between points in order to estimate the value of the property between points. The appropriate time spacing between successive points to minimise interpolation errors is related to rate of change (wrt time) of the property.</documentation>
</annotation>
</enumeration>
<enumeration value="Discontinuous">
<annotation>
<documentation>The sampling of the property occurs such that it is not possible to regard the series as continuous. The time between samples is too large to classify the measurements as continuous.</documentation>
</annotation>
</enumeration>
<enumeration value="InstantaneousTotal">
<annotation>
<documentation>Value represents a total attributed to a specific time instant. This is normally generated from an event based measuring device such as a tipping bucket rain gauge.</documentation>
</annotation>
</enumeration>
<enumeration value="MaximumInPrecedingInterval">
<annotation>
<documentation>Value represents the maximum value that was measured during the preceding time interval.</documentation>
</annotation>
</enumeration>
<enumeration value="MaximumInSucceedingInterval">
<annotation>
<documentation>Value represents the maximum value for the following interval.</documentation>
</annotation>
</enumeration>
<enumeration value="MinimumInPrecedingInterval">
<annotation>
<documentation>Value represents the minimum value that was measured during the preceding time interval.</documentation>
</annotation>
</enumeration>
<enumeration value="MinimumInSucceedingInterval">
<annotation>
<documentation>Value represents the minimum value for the following interval.</documentation>
</annotation>
</enumeration>
<enumeration value="PrecedingTotal">
<annotation>
<documentation>Value represents the total of measurements taken within the previous time interval.</documentation>
</annotation>
</enumeration>
<enumeration value="SucceedingTotal">
<annotation>
<documentation>Value represents the average value over the following interval</documentation>
</annotation>
</enumeration>
</restriction>
</simpleType>
<!--=========================================================================================-->
<!--IrregularTimeSeries-->
<!--=========================================================================================-->
<element name="IrregularTimeSeries" type="energy:IrregularTimeSeriesType" substitutionGroup="energy:_TimeSeries" />
<complexType name="IrregularTimeSeriesType">
<annotation>
<documentation>Irregular time series is the opposite of a regular time series. The data in the time series follows a temporal sequence, but the measurements might not happen at a regular time interval.
http://www-01.ibm.com/support/knowledgecenter/SSCRJU_3.0.0/com.ibm.swg.im.infosphere.streams.timeseries-toolkit.doc/doc/timeseries-regular.html</documentation>
</annotation>
<complexContent>
<extension base="energy:_TimeSeriesType">
<sequence>
<element name="uom" type="gml:UnitOfMeasureType">
<annotation>
<documentation>Unit of measure of the time series values.</documentation>
</annotation>
</element>
<element name="contains" minOccurs="0" maxOccurs="unbounded" type="energy:MeasurementPointPropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:MeasurementPoint</gml:targetElement>
</appinfo>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="IrregularTimeSeriesPropertyType">
<sequence>
<element ref="energy:IrregularTimeSeries" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--IrregularTimeSeriesFile-->
<!--=========================================================================================-->
<element name="IrregularTimeSeriesFile" type="energy:IrregularTimeSeriesFileType" substitutionGroup="energy:_TimeSeries" />
<complexType name="IrregularTimeSeriesFileType">
<annotation>
<documentation>Time series with a differing time increments, stored in textual format (e.g. CSV) on an external device.</documentation>
</annotation>
<complexContent>
<extension base="energy:_TimeSeriesType">
<sequence>
<element name="uom" type="gml:UnitOfMeasureType">
<annotation>
<documentation>Unit of measure of the time series values.</documentation>
</annotation>
</element>
<element name="file" type="anyURI">
<annotation>
<documentation>URI of the external device containing the time series.</documentation>
</annotation>
</element>
<element name="numberOfHeaderLines" minOccurs="0" default="0" type="int">
<annotation>
<documentation>Number of header lines in the time series file which must not be interpreted.</documentation>
</annotation>
</element>
<element name="fieldSeparator" type="string">
<annotation>
<documentation>String (e.g. ';') delimiting different fields (e.g. columns in a CSV file) in the same record (e.g. lines in a CSV file).</documentation>
</annotation>
</element>
<element name="recordSeparator" minOccurs="0" default="\n" type="string">
<annotation>
<documentation>String (e.g. '\n') separating different records (e.g. lines in a CSV file).</documentation>
</annotation>
</element>
<element name="decimalSymbol" minOccurs="0" default="." type="string">
<annotation>
<documentation>Character used to represent the decimal symbol in floating point numbers.</documentation>
</annotation>
</element>
<element name="timeColumnNumber" minOccurs="0" default="1" type="int">
<annotation>
<documentation>For CSV files the column number containing the actually used date/time values of the time series.</documentation>
</annotation>
</element>
<element name="valueColumnNumber" minOccurs="0" default="2" type="int">
<annotation>
<documentation>For CSV files the column number containing the actually used time series values.</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="IrregularTimeSeriesFilePropertyType">
<sequence>
<element ref="energy:IrregularTimeSeriesFile" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--Layer-->
<!--=========================================================================================-->
<element name="Layer" type="energy:LayerType" substitutionGroup="gml:_Feature" />
<complexType name="LayerType">
<annotation>
<documentation>A Layer is a combination of one of more materials, references via a LayerComponent.</documentation>
</annotation>
<complexContent>
<extension base="gml:AbstractFeatureType">
<sequence>
<element name="layerComponent" maxOccurs="unbounded" type="energy:LayerComponentPropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:LayerComponent</gml:targetElement>
</appinfo>
<documentation>Reference to one or more LayerComponent objects</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="LayerPropertyType">
<sequence>
<element ref="energy:Layer" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--LayerComponent-->
<!--=========================================================================================-->
<element name="LayerComponent" type="energy:LayerComponentType" substitutionGroup="gml:_Feature" />
<complexType name="LayerComponentType">
<annotation>
<documentation>&amp;lt;p&amp;gt; &amp;lt;img src="../png/LayerComponent-Illustration.png"&amp;gt;&amp;lt;/p&amp;gt;</documentation>
</annotation>
<complexContent>
<extension base="gml:AbstractFeatureType">
<sequence>
<element name="areaFraction" minOccurs="0" default="1.0" type="gml:ScaleType">
<annotation>
<documentation>Percentage (between 0 and 1) of the layer area that the referenced Material is made from.</documentation>
</annotation>
</element>
<element name="thickness" minOccurs="0" type="gml:LengthType">
<annotation>
<documentation>Thickness of a layer component.</documentation>
</annotation>
</element>
<element name="serviceLife" minOccurs="0" type="energy:ServiceLifePropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:ServiceLife</gml:targetElement>
</appinfo>
</annotation>
</element>
<element name="material" type="energy:AbstractMaterialPropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:AbstractMaterial</gml:targetElement>
</appinfo>
<documentation>Reference to the correspondinf Material</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="LayerComponentPropertyType">
<sequence>
<element ref="energy:LayerComponent" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--LightingFacilities-->
<!--=========================================================================================-->
<element name="LightingFacilities" type="energy:LightingFacilitiesType" substitutionGroup="energy:Facilities" />
<complexType name="LightingFacilitiesType">
<complexContent>
<extension base="energy:FacilitiesType">
<sequence>
<element name="electricalPower" minOccurs="0" type="gml:MeasureType" />
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="LightingFacilitiesPropertyType">
<sequence>
<element ref="energy:LightingFacilities" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--MeasurementPoint-->
<!--=========================================================================================-->
<element name="MeasurementPoint" type="energy:MeasurementPointType" />
<complexType name="MeasurementPointType">
<annotation>
<documentation>Single pair of date/time and value in an irregular time series.</documentation>
</annotation>
<sequence>
<element name="time" type="gml:TimePositionType">
<annotation>
<documentation>Time instant</documentation>
</annotation>
</element>
<element name="value" type="double">
<annotation>
<documentation>Value</documentation>
</annotation>
</element>
</sequence>
</complexType>
<complexType name="MeasurementPointPropertyType">
<sequence>
<element ref="energy:MeasurementPoint" minOccurs="0" />
</sequence>
</complexType>
<!--=========================================================================================-->
<!--MechanicalVentilation-->
<!--=========================================================================================-->
<element name="MechanicalVentilation" type="energy:MechanicalVentilationType" substitutionGroup="energy:EnergyConversionSystem" />
<complexType name="MechanicalVentilationType">
<complexContent>
<extension base="energy:EnergyConversionSystemType">
<sequence>
<element name="heatRecovery" type="boolean" />
<element name="recuperationFactor" type="gml:ScaleType" />
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="MechanicalVentilationPropertyType">
<sequence>
<element ref="energy:MechanicalVentilation" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--MediumTypeValue-->
<!--=========================================================================================-->
<simpleType name="MediumTypeValue">
<annotation>
<documentation>Note: May be converted to CodeList in next version.</documentation>
</annotation>
<restriction base="string">
<enumeration value="Air" />
<enumeration value="Steam" />
<enumeration value="Water" />
</restriction>
</simpleType>
<!--=========================================================================================-->
<!--Occupants-->
<!--=========================================================================================-->
<element name="Occupants" type="energy:OccupantsType" substitutionGroup="gml:_Feature" />
<complexType name="OccupantsType">
<annotation>
<documentation>Occupants is an aggregated group of occupants of a usage zone or building unit, which can be residents, workers, visitors etc. </documentation>
</annotation>
<complexContent>
<extension base="gml:AbstractFeatureType">
<sequence>
<element name="heatDissipation" minOccurs="0" type="energy:HeatExchangeTypePropertyType">
<annotation>
<documentation>Heat energy per year (in W) dissipated by the occupants in "nominal conditions", when all occupants are present. The constant totalValue of heatDissipation is weighted by the occupancyRate, to obtain the heat dissipation temporal variation.</documentation>
</annotation>
</element>
<element name="numberOfOccupants" minOccurs="0" type="int">
<annotation>
<documentation>Number of occupants of the considered zone/building unit.</documentation>
</annotation>
</element>
<element name="occupancyRate" minOccurs="0" type="energy:_SchedulePropertyType">
<annotation>
<documentation>Schedule of room/zone occupancy (0 while empty, 1 while occupied with the specified full number of occupant, between 0 and 1 during partial occupancy).</documentation>
</annotation>
</element>
<element name="occupantType" minOccurs="0" type="gml:CodeType">
<annotation>
<documentation>Type of occupants of a premises.</documentation>
</annotation>
</element>
<element name="household" minOccurs="0" maxOccurs="unbounded" type="energy:HouseholdPropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:Household</gml:targetElement>
</appinfo>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="OccupantsPropertyType">
<sequence>
<element ref="energy:Occupants" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--OpticalProperties-->
<!--=========================================================================================-->
<element name="OpticalProperties" type="energy:OpticalPropertiesType" />
<complexType name="OpticalPropertiesType">
<annotation>
<documentation>Optical properties of a material</documentation>
</annotation>
<sequence>
<element name="emissivity" minOccurs="0" maxOccurs="unbounded" type="energy:EmissivityPropertyType">
<annotation>
<documentation>Hemispherical emissivity</documentation>
</annotation>
</element>
<element name="reflectance" minOccurs="0" maxOccurs="unbounded" type="energy:ReflectancePropertyType">
<annotation>
<documentation>Hemispherical reflectance. Effectiveness of a surface in reflecting radiant energy.</documentation>
</annotation>
</element>
<element name="transmittance" minOccurs="0" maxOccurs="unbounded" type="energy:TransmittancePropertyType">
<annotation>
<documentation>Hemispherical transmittance. Effectiveness of a construction in transmitting radiant energy.</documentation>
</annotation>
</element>
<element name="glazingRatio" minOccurs="0" type="gml:ScaleType">
<annotation>
<documentation>Ratio of the glazing surface over the total construction surface (value between 0 and 1).</documentation>
</annotation>
</element>
</sequence>
</complexType>
<complexType name="OpticalPropertiesPropertyType">
<sequence>
<element ref="energy:OpticalProperties" minOccurs="0" />
</sequence>
</complexType>
<!--=========================================================================================-->
<!--PeriodOfYear-->
<!--=========================================================================================-->
<element name="PeriodOfYear" type="energy:PeriodOfYearType" />
<complexType name="PeriodOfYearType">
<annotation>
<documentation>Specification of a time period (e.g. 1. January -30. June) within an arbitrary year.</documentation>
</annotation>
<sequence>
<element name="period" type="gml:TimePeriodPropertyType">
<annotation>
<documentation>Time period without specification of an explicit year.</documentation>
</annotation>
</element>
<element name="dailySchedule" maxOccurs="unbounded" type="energy:DailySchedulePropertyType" />
</sequence>
</complexType>
<complexType name="PeriodOfYearPropertyType">
<sequence>
<element ref="energy:PeriodOfYear" minOccurs="0" />
</sequence>
</complexType>
<!--=========================================================================================-->
<!--PhotovoltaicSystem-->
<!--=========================================================================================-->
<element name="PhotovoltaicSystem" type="energy:PhotovoltaicSystemType" substitutionGroup="energy:_SolarEnergySystem" />
<complexType name="PhotovoltaicSystemType">
<complexContent>
<extension base="energy:_SolarEnergySystemType">
<sequence>
<element name="cellType" type="energy:CellTypeValue" />
<element name="moduleArea" minOccurs="0" type="gml:AreaType" />
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="PhotovoltaicSystemPropertyType">
<sequence>
<element ref="energy:PhotovoltaicSystem" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--PhotovoltaicThermalSystem-->
<!--=========================================================================================-->
<element name="PhotovoltaicThermalSystem" type="energy:PhotovoltaicThermalSystemType" substitutionGroup="energy:_SolarEnergySystem" />
<complexType name="PhotovoltaicThermalSystemType">
<annotation>
<documentation>Hybrid photovoltaic and solar thermal system</documentation>
</annotation>
<complexContent>
<extension base="energy:_SolarEnergySystemType">
<sequence>
<element name="cellType" type="energy:CellTypeValue" />
<element name="collectorType" type="energy:CollectorTypeValue" />
<element name="moduleArea" minOccurs="0" type="gml:AreaType" />
<element name="apertureArea" minOccurs="0" type="gml:AreaType" />
<element name="eta0" minOccurs="0" type="double" />
<element name="a1" minOccurs="0" type="double" />
<element name="a2" minOccurs="0" type="double" />
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="PhotovoltaicThermalSystemPropertyType">
<sequence>
<element ref="energy:PhotovoltaicThermalSystem" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--PowerDistributionSystem-->
<!--=========================================================================================-->
<element name="PowerDistributionSystem" type="energy:PowerDistributionSystemType" substitutionGroup="energy:EnergyDistributionSystem" />
<complexType name="PowerDistributionSystemType">
<complexContent>
<extension base="energy:EnergyDistributionSystemType">
<sequence>
<element name="current" minOccurs="0" type="gml:MeasureType" />
<element name="voltage" minOccurs="0" type="gml:MeasureType" />
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="PowerDistributionSystemPropertyType">
<sequence>
<element ref="energy:PowerDistributionSystem" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--PowerStorageSystem-->
<!--=========================================================================================-->
<element name="PowerStorageSystem" type="energy:PowerStorageSystemType" substitutionGroup="energy:_StorageSystem" />
<complexType name="PowerStorageSystemType">
<complexContent>
<extension base="energy:_StorageSystemType">
<sequence>
<element name="batteryTechnology" minOccurs="0" type="string" />
<element name="powerCapacity" minOccurs="0" type="gml:MeasureType" />
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="PowerStorageSystemPropertyType">
<sequence>
<element ref="energy:PowerStorageSystem" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--Reflectance-->
<!--=========================================================================================-->
<element name="Reflectance" type="energy:ReflectanceType" />
<complexType name="ReflectanceType">
<annotation>
<documentation>Effectiveness of a material surface in reflectiing an incident radiant flux of a given wavelength range.</documentation>
</annotation>
<sequence>
<element name="fraction" type="gml:ScaleType">
<annotation>
<documentation>Fraction (between 0 and 1) of energy reflectance.</documentation>
</annotation>
</element>
<element name="surface" type="energy:SurfaceSide" />
<element name="wavelengthRange" type="energy:WavelengthRangeType">
<annotation>
<documentation>Wavelength range of the incident radiant flux, for which the absorptance ratio is defined.</documentation>
</annotation>
</element>
</sequence>
</complexType>
<complexType name="ReflectancePropertyType">
<sequence>
<element ref="energy:Reflectance" minOccurs="0" />
</sequence>
</complexType>
<!--=========================================================================================-->
<!--RefurbishmentMeasure-->
<!--=========================================================================================-->
<element name="RefurbishmentMeasure" type="energy:RefurbishmentMeasureType" />
<complexType name="RefurbishmentMeasureType">
<annotation>
<documentation>Information on a refurbishment measure</documentation>
</annotation>
<sequence>
<element name="dateOfRefurbishment" type="energy:DateOfEventPropertyType">
<annotation>
<documentation>Date of the refurbishment measure</documentation>
</annotation>
</element>
<element name="levelOfRefurbishment" type="gml:CodeType" />
<element name="descriptionOfRefurbishment" minOccurs="0" type="string" />
</sequence>
</complexType>
<complexType name="RefurbishmentMeasurePropertyType">
<sequence>
<element ref="energy:RefurbishmentMeasure" minOccurs="0" />
</sequence>
</complexType>
<!--=========================================================================================-->
<!--RegularTimeSeries-->
<!--=========================================================================================-->
<element name="RegularTimeSeries" type="energy:RegularTimeSeriesType" substitutionGroup="energy:_TimeSeries" />
<complexType name="RegularTimeSeriesType">
<annotation>
<documentation>Series of time-depending values, regularly spaced with a constant interval of time.</documentation>
</annotation>
<complexContent>
<extension base="energy:_TimeSeriesType">
<sequence>
<element name="temporalExtent" type="gml:TimePeriodPropertyType">
<annotation>
<documentation>Temporal extent (start data/time and end date/time) of the time series.</documentation>
</annotation>
</element>
<element name="timeInterval" type="gml:TimeIntervalLengthType">
<annotation>
<documentation>Interval of time between two consecutive time-depending values.</documentation>
</annotation>
</element>
<element name="values" type="gml:MeasureListType">
<annotation>
<documentation>Values of the time series.</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="RegularTimeSeriesPropertyType">
<sequence>
<element ref="energy:RegularTimeSeries" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--RegularTimeSeriesFile-->
<!--=========================================================================================-->
<element name="RegularTimeSeriesFile" type="energy:RegularTimeSeriesFileType" substitutionGroup="energy:_TimeSeries" />
<complexType name="RegularTimeSeriesFileType">
<annotation>
<documentation>Time series with a constant time increment, stored in textual format (e.g. CSV) on an external device.</documentation>
</annotation>
<complexContent>
<extension base="energy:_TimeSeriesType">
<sequence>
<element name="uom" type="gml:UnitOfMeasureType">
<annotation>
<documentation>Unit of measure of the time series values.</documentation>
</annotation>
</element>
<element name="file" type="anyURI">
<annotation>
<documentation>URI of the external device containing the time series values.</documentation>
</annotation>
</element>
<element name="temporalExtent" type="gml:TimePeriodPropertyType">
<annotation>
<documentation>Temporal extent (start date/time and end date/time) of the time series.</documentation>
</annotation>
</element>
<element name="timeInterval" type="gml:TimeIntervalLengthType">
<annotation>
<documentation>Time increment of the time series values.</documentation>
</annotation>
</element>
<element name="numberOfHeaderLines" minOccurs="0" default="0" type="int">
<annotation>
<documentation>Number of header lines in the time series file which must not be interpreted.</documentation>
</annotation>
</element>
<element name="fieldSeparator" type="string">
<annotation>
<documentation>String (e.g. ';') delimiting different fields (e.g. columns in a CSV file) in the same record (e.g. lines in a CSV file).</documentation>
</annotation>
</element>
<element name="recordSeparator" minOccurs="0" default="\n" type="string">
<annotation>
<documentation>String (e.g. '\n') separating different records (e.g. lines in a CSV file).</documentation>
</annotation>
</element>
<element name="decimalSymbol" minOccurs="0" default="." type="string">
<annotation>
<documentation>Character used to represent the decimal symbol in floating point numbers.</documentation>
</annotation>
</element>
<element name="valueColumnNumber" minOccurs="0" default="1" type="int">
<annotation>
<documentation>For CSV files the column number containing the actually used time series values.</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="RegularTimeSeriesFilePropertyType">
<sequence>
<element ref="energy:RegularTimeSeriesFile" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--ResidenceTypeValue-->
<!--=========================================================================================-->
<simpleType name="ResidenceTypeValue">
<annotation>
<documentation>Designation related to the amount of time a household lives at a residence.
&lt;b&gt;Note&lt;/b&gt;: May be converted to CodeList in next version.</documentation>
</annotation>
<restriction base="string">
<enumeration value="MainResidence">
<annotation>
<documentation>(or primary residence) Residence where a household lives for the greatest amount of time.</documentation>
</annotation>
</enumeration>
<enumeration value="SecondaryResidence">
<annotation>
<documentation>Residence where a household lives part time or less than the majority of the calendar year.</documentation>
</annotation>
</enumeration>
<enumeration value="Vacant">
<annotation>
<documentation>Residence where nobody lives.</documentation>
</annotation>
</enumeration>
</restriction>
</simpleType>
<!--=========================================================================================-->
<!--ReverseConstruction-->
<!--=========================================================================================-->
<element name="ReverseConstruction" type="energy:ReverseConstructionType" substitutionGroup="energy:AbstractConstruction" />
<complexType name="ReverseConstructionType">
<annotation>
<documentation>Determines the usage of Construction in terms of the Layer order.</documentation>
</annotation>
<complexContent>
<extension base="energy:AbstractConstructionType">
<sequence>
<element name="baseConstruction" type="energy:ConstructionPropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:Construction</gml:targetElement>
</appinfo>
<documentation>Reference to the Construction being used.</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="ReverseConstructionPropertyType">
<sequence>
<element ref="energy:ReverseConstruction" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--ServiceLife-->
<!--=========================================================================================-->
<element name="ServiceLife" type="energy:ServiceLifeType" substitutionGroup="gml:_GML" />
<complexType name="ServiceLifeType">
<annotation>
<documentation>Information of product life time and maintenance intervals.</documentation>
</annotation>
<complexContent>
<extension base="gml:AbstractGMLType">
<sequence>
<element name="startOfLife" minOccurs="0" type="gml:TimePositionType">
<annotation>
<documentation>Date where a product has been put into service for the first time (e.g. installation, construction).</documentation>
</annotation>
</element>
<element name="lifeExpectancy" minOccurs="0" type="gml:TimeIntervalLengthType">
<annotation>
<documentation>Length of the service life of a product which is expected at its installation or construction.</documentation>
</annotation>
</element>
<element name="mainMaintenanceInterval" minOccurs="0" type="gml:TimeIntervalLengthType">
<annotation>
<documentation>Average period of time between two consecutive main maintenance operations</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="ServiceLifePropertyType">
<sequence>
<element ref="energy:ServiceLife" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--ShadingType-->
<!--=========================================================================================-->
<element name="ShadingType" type="energy:ShadingTypeType" />
<complexType name="ShadingTypeType">
<annotation>
<documentation>Shading system of the considered opening</documentation>
</annotation>
<sequence>
<element name="maximumCoverRatio" type="gml:ScaleType">
<annotation>
<documentation>Maximum fraction of the related opening which can be covered with the shading device.</documentation>
</annotation>
</element>
<element name="name" minOccurs="0" type="string">
<annotation>
<documentation>Name of the Shading system.</documentation>
</annotation>
</element>
<element name="transmittance" type="energy:TransmittancePropertyType">
<annotation>
<documentation>Effectiveness of the shading device in transmitting an incident radiant flux of a given wavelength range.</documentation>
</annotation>
</element>
</sequence>
</complexType>
<complexType name="ShadingTypePropertyType">
<sequence>
<element ref="energy:ShadingType" minOccurs="0" />
</sequence>
</complexType>
<!--=========================================================================================-->
<!--SolarThermalSystem-->
<!--=========================================================================================-->
<element name="SolarThermalSystem" type="energy:SolarThermalSystemType" substitutionGroup="energy:_SolarEnergySystem" />
<complexType name="SolarThermalSystemType">
<annotation>
<documentation>System converting solar energy in heat (hot water)</documentation>
</annotation>
<complexContent>
<extension base="energy:_SolarEnergySystemType">
<sequence>
<element name="collectorType" type="energy:CollectorTypeValue" />
<element name="apertureArea" minOccurs="0" type="gml:AreaType" />
<element name="eta0" minOccurs="0" type="double" />
<element name="a1" minOccurs="0" type="double" />
<element name="a2" minOccurs="0" type="double" />
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="SolarThermalSystemPropertyType">
<sequence>
<element ref="energy:SolarThermalSystem" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--SolidMaterial-->
<!--=========================================================================================-->
<element name="SolidMaterial" type="energy:SolidMaterialType" substitutionGroup="energy:AbstractMaterial" />
<complexType name="SolidMaterialType">
<annotation>
<documentation>Solid material.</documentation>
</annotation>
<complexContent>
<extension base="energy:AbstractMaterialType">
<sequence>
<element name="conductivity" minOccurs="0" type="gml:MeasureType">
<annotation>
<documentation>Conductivity of material</documentation>
</annotation>
</element>
<element name="density" minOccurs="0" type="gml:MeasureType">
<annotation>
<documentation>Density of material</documentation>
</annotation>
</element>
<element name="permeance" minOccurs="0" type="gml:MeasureType">
<annotation>
<documentation>The rate water vapor is allowed through a surface</documentation>
</annotation>
</element>
<element name="porosity" minOccurs="0" type="gml:ScaleType">
<annotation>
<documentation>The ratio of the total amount of void space in a material (due to poses, small channels, and so on) to the bulk volume occupied by the material.</documentation>
</annotation>
</element>
<element name="specificHeat" minOccurs="0" type="gml:MeasureType">
<annotation>
<documentation>Specific heat of material</documentation>
</annotation>
</element>
<element name="embodiedCarbon" minOccurs="0" type="gml:MeasureType">
<annotation>
<documentation>CO2 equivalent emissions (measured in kg of CO2 per cubic meter or kg of CO2 per kg material) caused by the fabrication and transportation on site of the material.</documentation>
</annotation>
</element>
<element name="embodiedEnergy" minOccurs="0" type="gml:MeasureType">
<annotation>
<documentation>Primary energy(measured in Joule per cubic meter or Joule per kg material) consumed for the fabrication and transportation on site of the material</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="SolidMaterialPropertyType">
<sequence>
<element ref="energy:SolidMaterial" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--SurfaceSide-->
<!--=========================================================================================-->
<simpleType name="SurfaceSide">
<annotation>
<documentation>Surface side of the construction</documentation>
</annotation>
<restriction base="string">
<enumeration value="Inside">
<annotation>
<documentation>Indoor surface.</documentation>
</annotation>
</enumeration>
<enumeration value="Outside">
<annotation>
<documentation>Outdoor surface.</documentation>
</annotation>
</enumeration>
</restriction>
</simpleType>
<!--=========================================================================================-->
<!--SystemOperation-->
<!--=========================================================================================-->
<element name="SystemOperation" type="energy:SystemOperationType" substitutionGroup="gml:_Feature" />
<complexType name="SystemOperationType">
<annotation>
<documentation>Operation mode details the operation of the energy conversion system for a specific end-use and operation time.</documentation>
</annotation>
<complexContent>
<extension base="gml:AbstractFeatureType">
<sequence>
<element name="endUse" type="energy:EndUseTypeValue">
<annotation>
<documentation>Category of end use related to an energy use.</documentation>
</annotation>
</element>
<element name="operationTime" minOccurs="0" type="energy:_SchedulePropertyType" />
<element name="yearlyGlobalEfficiency" minOccurs="0" type="double" />
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="SystemOperationPropertyType">
<sequence>
<element ref="energy:SystemOperation" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--ThermalBoundary-->
<!--=========================================================================================-->
<element name="ThermalBoundary" type="energy:ThermalBoundaryType" substitutionGroup="core:_CityObject" />
<complexType name="ThermalBoundaryType">
<annotation>
<documentation>Thermal Boundaries delimit Thermal Zones. Thermal Boundaries represent physical relationships between two Thermal Zones, or a Thermal Zone and the outside environment, or a Thermal Zone and the ground. Their non-opening construction must be homogeneous.</documentation>
</annotation>
<complexContent>
<extension base="core:AbstractCityObjectType">
<sequence>
<element name="thermalBoundaryType" type="energy:ThermalBoundaryTypeValue">
<annotation>
<documentation>Topological classification of the thermal boundary.</documentation>
</annotation>
</element>
<element name="azimuth" minOccurs="0" type="gml:AngleType">
<annotation>
<documentation>Azimuth angle of the normal surface vector.
By convention:
- azimuth = 0 for north orientation.
- Horizontal surface have a azimuth = 0.</documentation>
</annotation>
</element>
<element name="inclination" minOccurs="0" type="gml:AngleType">
<annotation>
<documentation>Inclination angle of the normal surface vector.
By convention, inclination = 0 for horizontal plane.</documentation>
</annotation>
</element>
<element name="area" minOccurs="0" type="gml:AreaType">
<annotation>
<documentation>Total area of the Thermal Boundary, inclusive the included opening area</documentation>
</annotation>
</element>
<element name="surfaceGeometry" minOccurs="0" type="gml:MultiSurfacePropertyType" />
<element name="refurbishmentMeasureOnThermalBoundary" minOccurs="0" maxOccurs="unbounded" type="energy:RefurbishmentMeasurePropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:RefurbishmentMeasure</gml:targetElement>
</appinfo>
<documentation>Reference designation of the degree of refurbishment. This reference may be European (from the Tabula project) or local (used for the Energy Action Plan of a city).</documentation>
</annotation>
</element>
<element name="staticConstruction" minOccurs="0" type="energy:AbstractConstructionPropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:AbstractConstruction</gml:targetElement>
</appinfo>
<documentation>Construction of the static part of the Thermal Boundary (i.e. the non-opening building elements), If the referenced Construction/ConstructionOrientation object has more than one layer, the following rules for the layer order apply:
&lt;ul&gt;
&lt;li&gt;For &lt;b&gt;outer &lt;/b&gt;ThermalBoundaries, the first Construction Layer is facing outside, last Construction Layer is facing inside (or contrary if ConstructionOrientation is used and orientation is false)&lt;/li&gt;
&lt;li&gt;For ThermalBoundaries of type &lt;b&gt;intermediaryFloor&lt;/b&gt;, the first Construction Layer is facing the thermalZone below while the last Construction Layer is facing the ThermalZone above&lt;/li&gt;
&lt;/ul&gt;</documentation>
</annotation>
</element>
<element name="contains" minOccurs="0" maxOccurs="unbounded" type="energy:ThermalOpeningPropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:ThermalOpening</gml:targetElement>
</appinfo>
</annotation>
</element>
<element name="delimits" maxOccurs="2" type="energy:ThermalZonePropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:ThermalZone</gml:targetElement>
<gml:reversePropertyName>energy:boundedBy</gml:reversePropertyName>
</appinfo>
<documentation>In case two ThermalZones are referenced via the relation "delimits", the following rule concerning the order of the related objects applys:
- For ThermalBoundary objects of type "intermediaryFloor!, the first related object is the upper ThermalZone, and the seconr related object is the lower ThermalZone
- For all other ThermalBoundary types, the first related ThermalZone is in contact with the last Layer of the corresponding AbstractConstruction, and the second related ThermalZone is in contact with the first Layer of the corresponding AbstractConstruction,</documentation>
</annotation>
</element>
<element name="relatesTo" minOccurs="0" maxOccurs="unbounded" type="gml:ReferenceType">
<annotation>
<appinfo>
<gml:targetElement>bldg:_BoundarySurface</gml:targetElement>
</appinfo>
<documentation>Reference of a ThermalBoundary to the corresponding physical boundary surface of the building</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="ThermalBoundaryPropertyType">
<sequence>
<element ref="energy:ThermalBoundary" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--ThermalBoundaryTypeValue-->
<!--=========================================================================================-->
<simpleType name="ThermalBoundaryTypeValue">
<annotation>
<documentation>Topological classification of the thermal boundary</documentation>
</annotation>
<restriction base="string">
<enumeration value="InteriorWall">
<annotation>
<documentation>Vertical partition separating two Thermal Zones of the same building.</documentation>
</annotation>
</enumeration>
<enumeration value="IntermediaryFloor">
<annotation>
<documentation>Horizontal partition separating two Thermal Zones of the same building.</documentation>
</annotation>
</enumeration>
<enumeration value="SharedWall">
<annotation>
<documentation>Vertical partition separating two different buildings.</documentation>
</annotation>
</enumeration>
<enumeration value="OuterWall">
<annotation>
<documentation>Vertical Thermal Boundary with one side facing outdoor.</documentation>
</annotation>
</enumeration>
<enumeration value="GroundSlab">
<annotation>
<documentation>Lower horizontal Thermal Boundary of the Thermal Zone, built ditectly on the ground.</documentation>
</annotation>
</enumeration>
<enumeration value="BasementCeiling">
<annotation>
<documentation>Horizontal partition separating the basement floor and the ground floor.</documentation>
</annotation>
</enumeration>
<enumeration value="AtticFloor">
<annotation>
<documentation>Horizontal partition separating the attic and the highest full storey.</documentation>
</annotation>
</enumeration>
<enumeration value="Roof">
<annotation>
<documentation>Thermal Boundary corresponding to the CityGML RoofSurface.</documentation>
</annotation>
</enumeration>
</restriction>
</simpleType>
<!--=========================================================================================-->
<!--ThermalDistributionSystem-->
<!--=========================================================================================-->
<element name="ThermalDistributionSystem" type="energy:ThermalDistributionSystemType" substitutionGroup="energy:EnergyDistributionSystem" />
<complexType name="ThermalDistributionSystemType">
<complexContent>
<extension base="energy:EnergyDistributionSystemType">
<sequence>
<element name="isCirculation" minOccurs="0" type="boolean" />
<element name="medium" minOccurs="0" type="energy:MediumTypeValue" />
<element name="nominalFlow" minOccurs="0" type="gml:MeasureType" />
<element name="returnTemperature" minOccurs="0" type="gml:MeasureType" />
<element name="supplyTemperature" minOccurs="0" type="gml:MeasureType" />
<element name="thermalLossesFactor" minOccurs="0" type="gml:MeasureType">
<annotation>
<documentation>U*A</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="ThermalDistributionSystemPropertyType">
<sequence>
<element ref="energy:ThermalDistributionSystem" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--ThermalOpening-->
<!--=========================================================================================-->
<element name="ThermalOpening" type="energy:ThermalOpeningType" substitutionGroup="core:_CityObject" />
<complexType name="ThermalOpeningType">
<annotation>
<documentation>Group of openings, possibly related to a ThermalBoundary and _Opening, sharing common thermal and optical characteristics.</documentation>
</annotation>
<complexContent>
<extension base="core:AbstractCityObjectType">
<sequence>
<element name="area" type="gml:AreaType">
<annotation>
<documentation>Area of the surface [m²], portion of the related thermal boundary surface.</documentation>
</annotation>
</element>
<element name="openingConstruction" type="energy:AbstractConstructionPropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:AbstractConstruction</gml:targetElement>
</appinfo>
<documentation>Reference to material information. If the referenced Construction/ConstructionOrientation object has more than one layer, the following rules for the layer order apply:
&lt;ul&gt;
&lt;li&gt;For &lt;b&gt;outer &lt;/b&gt;ThermalBoundaries, the first Construction Layer is facing outside, last Construction Layer is facing inside (or contrary if ConstructionOrientation is used and orientation is false)&lt;/li&gt;
&lt;li&gt;For ThermalBoundaries of type &lt;b&gt;intermediaryFloor&lt;/b&gt;, the first Construction Layer is facing the thermalZone below while the last Construction Layer is facing the ThermalZone above&lt;/li&gt;
&lt;/ul&gt;</documentation>
</annotation>
</element>
<element name="indoorShading" minOccurs="0" type="energy:ShadingTypePropertyType">
<annotation>
<documentation>Shading system installed on the interior surface of the opening.</documentation>
</annotation>
</element>
<element name="outdoorShading" minOccurs="0" type="energy:ShadingTypePropertyType">
<annotation>
<documentation>Shading system installed on the outside opening surface.</documentation>
</annotation>
</element>
<element name="openableRatio" minOccurs="0" type="gml:ScaleType">
<annotation>
<documentation>Shading system installed on the outside opening surface.</documentation>
</annotation>
</element>
<element name="surfaceGeometry" minOccurs="0" type="gml:MultiSurfacePropertyType" />
<element name="relatesTo" minOccurs="0" type="gml:ReferenceType">
<annotation>
<appinfo>
<gml:targetElement>bldg:_Opening</gml:targetElement>
</appinfo>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="ThermalOpeningPropertyType">
<sequence>
<element ref="energy:ThermalOpening" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--ThermalStorageSystem-->
<!--=========================================================================================-->
<element name="ThermalStorageSystem" type="energy:ThermalStorageSystemType" substitutionGroup="energy:_StorageSystem" />
<complexType name="ThermalStorageSystemType">
<complexContent>
<extension base="energy:_StorageSystemType">
<sequence>
<element name="preparationTemperature" minOccurs="0" type="gml:MeasureType" />
<element name="medium" minOccurs="0" type="energy:MediumTypeValue" />
<element name="thermalLossesFactor" minOccurs="0" type="gml:MeasureType">
<annotation>
<documentation>U*A</documentation>
</annotation>
</element>
<element name="volume" minOccurs="0" type="gml:VolumeType" />
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="ThermalStorageSystemPropertyType">
<sequence>
<element ref="energy:ThermalStorageSystem" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--ThermalZone-->
<!--=========================================================================================-->
<element name="ThermalZone" type="energy:ThermalZoneType" substitutionGroup="core:_CityObject" />
<complexType name="ThermalZoneType">
<annotation>
<documentation>A thermal zone is a zone of a building which serves as unit for the building heating and cooling simulation. For the simulation, a thermal zone is considered as isothermal.
It is a semantic object, which may be or not related to a geometric entity. </documentation>
</annotation>
<complexContent>
<extension base="core:AbstractCityObjectType">
<sequence>
<element name="additionalThermalBridgeUValue" minOccurs="0" type="gml:MeasureType">
<annotation>
<documentation>Transmission heat loss contribution [W/m².K] of the thermal bridges of the thermal zone shell to the overall UValue.</documentation>
</annotation>
</element>
<element name="effectiveThermalCapacity" minOccurs="0" type="gml:MeasureType">
<annotation>
<documentation>Thermal capacity [Wh/K] of the zone including the contributing construction layers and zone fournitures.</documentation>
</annotation>
</element>
<element name="floorArea" minOccurs="0" maxOccurs="unbounded" type="energy:FloorAreaPropertyType">
<annotation>
<documentation>Floor area of the ThermalZone. Different calculation methods (e.g. gross area, net area) can be selected.</documentation>
</annotation>
</element>
<element name="volume" minOccurs="0" maxOccurs="unbounded" type="energy:VolumeTypePropertyType">
<annotation>
<documentation>Volume of a Thermal Zone. Different calculation methods (e.g. net volume, gross volume) can be selected.</documentation>
</annotation>
</element>
<element name="contains" minOccurs="0" maxOccurs="unbounded" type="energy:UsageZonePropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:UsageZone</gml:targetElement>
</appinfo>
<documentation>One thermal zone may include several usage zones. If a thermal zone is related to more than one usage zone, the UsageZone attribute floorArea is mantatory in order to enable the calculation of avarage heating / cooling schedules.
A UsageZone object can only be referenced by one ThermalZone object.</documentation>
</annotation>
</element>
<element name="indirectlyHeatedAreaRatio" minOccurs="0" type="gml:ScaleType">
<annotation>
<documentation>[find precise definition]</documentation>
</annotation>
</element>
<element name="infiltrationRate" minOccurs="0" type="gml:MeasureType">
<annotation>
<documentation>Air change rate [1/h] due to air leakage of the zone shell.</documentation>
</annotation>
</element>
<element name="isCooled" default="true" type="boolean">
<annotation>
<documentation>true if the thermal zone has energy system for space cooling</documentation>
</annotation>
</element>
<element name="isHeated" default="true" type="boolean">
<annotation>
<documentation>true if the thermal zone has energy system for space heating</documentation>
</annotation>
</element>
<element name="volumeGeometry" minOccurs="0" type="gml:SolidPropertyType">
<annotation>
<documentation>Geometrical representation of the ThermalZone volume.</documentation>
</annotation>
</element>
<element name="interiorRoom" minOccurs="0" maxOccurs="unbounded" type="bldg:InteriorRoomPropertyType">
<annotation>
<appinfo>
<gml:targetElement>bldg:Room</gml:targetElement>
</appinfo>
</annotation>
</element>
<element name="boundedBy" maxOccurs="unbounded" type="energy:ThermalBoundaryPropertyType">
<annotation>
<appinfo>
<gml:targetElement>energy:ThermalBoundary</gml:targetElement>
<gml:reversePropertyName>energy:delimits</gml:reversePropertyName>
</appinfo>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="ThermalZonePropertyType">
<sequence>
<element ref="energy:ThermalZone" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--TimeSeriesSchedule-->
<!--=========================================================================================-->
<element name="TimeSeriesSchedule" type="energy:TimeSeriesScheduleType" substitutionGroup="energy:_Schedule" />
<complexType name="TimeSeriesScheduleType">
<annotation>
<documentation>Highest Level of Detail of the schedule representation, consisting in a Timeseries.</documentation>
</annotation>
<complexContent>
<extension base="energy:_ScheduleType">
<sequence>
<element name="timeDependingValues" type="energy:_TimeSeriesPropertyType" />
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="TimeSeriesSchedulePropertyType">
<sequence>
<element ref="energy:TimeSeriesSchedule" minOccurs="0" />
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup" />
</complexType>
<!--=========================================================================================-->
<!--TimeValuesProperties-->
<!--=========================================================================================-->
<element name="TimeValuesProperties" type="energy:TimeValuesPropertiesType" />
<complexType name="TimeValuesPropertiesType">
<annotation>
<documentation>Information and properties of a given variable.</documentation>
</annotation>
<sequence>
<element name="acquisitionMethod" type="energy:AcquisitionMethodValue">
<annotation>
<documentation>The method for variable acquisition (e.g. simulation, measured).</documentation>
</annotation>
</element>
<element name="interpolationType" type="energy:InterpolationTypeValue">
<annotation>
<documentation>Mathematical rule required for the variable interpolation, defined in WaterML:http://def.seegrid.csiro.au/sissvoc/ogc-def/resource?uri=http://www.opengis.net/def/waterml/2.0/interpolationType/</documentation>
</annotation>
</element>
<element name="qualityDescription" minOccurs="0" type="string">
<annotation>
<documentation>Description of the data quality (e.g. bad, average, good, excellent).</documentation>
</annotation>
</element>
<element name="source" minOccurs="0" type="string">
<annotation>
<documentation>Designation of the data source.</documentation>
</annotation>
</element>
</sequence>
</complexType>
<complexType name="TimeValuesPropertiesPropertyType">
<sequence>
<element ref="energy:TimeValuesProperties" minOccurs="0" />
</sequence>
</complexType>
<!--=========================================================================================-->
<!--Transmittance-->
<!--=========================================================================================-->
<element name="Transmittance" type="energy:TransmittanceType" />
<complexType name="TransmittanceType">
<annotation>
<documentation>Percentaged energy transmittance in different wavelength ranges. Effectiveness of a construction in transmitting an incident radiant flux of a given wavelength range.</documentation>
</annotation>
<sequence>
<element name="fraction" type="gml:ScaleType">
<annotation>
<documentation>Fraction (between 0 and 1) of energy transmittance</documentation>
</annotation>
</element>
<element name="wavelengthRange" type="energy:WavelengthRangeType">
<annotation>
<documentation>Wavelength range of the incident radiant flux, for which the absorptance ratio is defined.</documentation>
</annotation>
</element>
</sequence>
</complexType>
<complexType name="TransmittancePropertyType">
<sequence>
<element ref="energy:Transmittance" minOccurs="0" />
</sequence>
</complexType>
<!--=========================================================================================-->
<!--UsageZone-->