diff --git a/src/xeto/ph.attrs/base.xeto b/src/xeto/ph.attrs/base.xeto index d3d1624..39e8a7f 100644 --- a/src/xeto/ph.attrs/base.xeto +++ b/src/xeto/ph.attrs/base.xeto @@ -37,3 +37,26 @@ TempAttr : NumberAttr { val: Number } +// Attribute with a number value with volumetric flow unit +VolumetricFlowAttr : NumberAttr { + flow + val: Number +} + +// Attribute with a number value with power unit +PowerAttr : NumberAttr { + power + val: Number +} + +// Attribute with a number value with energy unit +EnergyAttr : NumberAttr { + energy + val: Number +} + +// Attribute with a number value with pressure unit +PressureAttr : NumberAttr { + pressure + val: Number +} \ No newline at end of file diff --git a/src/xeto/ph.attrs/elec.xeto b/src/xeto/ph.attrs/elec.xeto index 31773dd..1274b15 100644 --- a/src/xeto/ph.attrs/elec.xeto +++ b/src/xeto/ph.attrs/elec.xeto @@ -6,29 +6,37 @@ // 16 Apr 2025 Rick Jennings Creation // +////////////////////////////////////////////////////////////////////////// +// Current attributes +////////////////////////////////////////////////////////////////////////// + // Current attribute for the asset ElecCurrentAttr : NumberAttr { elec, current } // AC current attribute for the asset ElecAcCurrentAttr : ElecCurrentAttr { ac } -// AC current rating of the asset -ElecAcRatedCurrentAttr : ElecAcCurrentAttr { rated } +// Elec rated AC current of the asset +ElecRatedAcCurrentAttr : ElecAcCurrentAttr { rated } + +// Elec continuous capacity rated AC current of the asset (80% or 100% - for circuit breakers) +ElecContinuousCapacityRatedAcCurrentAttr : ElecRatedAcCurrentAttr { currentContinuousCapacity } -// Continuous AC current capacity rating of the asset (80% or 100% - for circuit breakers) -ElecAcRatedContinuousCapacityCurrentAttr : ElecAcRatedCurrentAttr { currentContinuousCapacity } +// Elec continuous rated AC current of the asset (for circuit breakers) +ElecContinuousRatedAcCurrentAttr : ElecRatedAcCurrentAttr { currentContinuous } -// Continuous AC current rating of the asset (for circuit breakers) -ElecAcRatedContinuousCurrentAttr : ElecAcRatedCurrentAttr { currentContinuous } +// Elec max continuous rated AC current of the asset (for circuit breakers) +ElecMaxContinuousRatedAcCurrentAttr : ElecContinuousRatedAcCurrentAttr { max } -// Max continuous AC current rating of the asset (for circuit breakers) -ElecAcRatedMaxContinuousCurrentAttr : ElecAcRatedContinuousCurrentAttr { max } +// Elec input rated AC current of the asset +ElecInputRatedAcCurrentAttr : ElecRatedAcCurrentAttr { input } -// AC current input rating of the asset -ElecAcRatedInputCurrentAttr : ElecAcRatedCurrentAttr { input } +// Elec max input rated AC current of the asset +ElecMaxInputRatedAcCurrentAttr : ElecInputRatedAcCurrentAttr { max } -// Maximum AC current input rating of the asset -ElecAcRatedInputMaxCurrentAttr : ElecAcRatedInputCurrentAttr { max } +////////////////////////////////////////////////////////////////////////// +// Voltage attributes +////////////////////////////////////////////////////////////////////////// // Voltage attribute for the asset ElecVoltAttr : NumberAttr { elec, volt } @@ -36,29 +44,29 @@ ElecVoltAttr : NumberAttr { elec, volt } // AC voltage attribute for the asset ElecAcVoltAttr : ElecVoltAttr { ac } -// AC voltage rating of the asset -ElecAcRatedVoltAttr : ElecAcVoltAttr { rated } +// Elec rated AC voltage of the asset +ElecRatedAcVoltAttr : ElecAcVoltAttr { rated } -// AC voltage input rating of the asset -ElecAcRatedInputVoltAttr : ElecAcRatedVoltAttr { input } +// Elec input rated AC voltage of the asset +ElecInputRatedAcVoltAttr : ElecRatedAcVoltAttr { input } -// Nominal AC voltage input rating of the asset -ElecAcRatedInputNominalVoltAttr : ElecAcRatedInputVoltAttr { nominal } +// Elec nominal input rated AC voltage of the asset +ElecNominalInputRatedAcVoltAttr : ElecInputRatedAcVoltAttr { nominal } -// Nominal line-to-line AC voltage input rating of the asset -ElecAcRatedInputLineToLineNominalVoltAttr : ElecAcRatedInputNominalVoltAttr { voltLineToLine } +// Elec line-to-line nominal input rated AC voltage of the asset +ElecLineToLineNominalInputRatedAcVoltAttr : ElecNominalInputRatedAcVoltAttr { voltLineToLine } -// Nominal line-to-neutral AC voltage input rating of the asset -ElecAcRatedInputLineToNeutralNominalVoltAttr : ElecAcRatedInputNominalVoltAttr { voltLineToNeutral } +// Elec line-to-neutral nominal input rated AC voltage of the asset +ElecLineToNeutralNominalInputRatedAcVoltAttr : ElecNominalInputRatedAcVoltAttr { voltLineToNeutral } -// Minimum AC voltage input rating of the asset -ElecAcRatedInputMinVoltAttr : ElecAcRatedInputVoltAttr { min } +// Elec min input rated AC voltage of the asset +ElecMinInputRatedAcVoltAttr : ElecInputRatedAcVoltAttr { min } -// Minimum line-to-line AC voltage input rating of the asset -ElecAcRatedInputLineToLineMinVoltAttr : ElecAcRatedInputMinVoltAttr { voltLineToLine } +// Elec line-to-line min input rated AC voltage of the asset +ElecLineToLineMinInputRatedAcVoltAttr : ElecMinInputRatedAcVoltAttr { voltLineToLine } -// Maximum AC voltage input rating of the asset -ElecAcRatedInputMaxVoltAttr : ElecAcRatedInputVoltAttr { max } +// Elec max input rated AC voltage of the asset +ElecMaxInputRatedAcVoltAttr : ElecInputRatedAcVoltAttr { max } -// Maximum line-to-line AC voltage input rating of the asset -ElecAcRatedInputLineToLineMaxVoltAttr : ElecAcRatedInputMaxVoltAttr { voltLineToLine } +// Elec line-to-line max input rated AC voltage of the asset +ElecLineToLineMaxInputRatedAcVoltAttr : ElecMaxInputRatedAcVoltAttr { voltLineToLine } diff --git a/src/xeto/ph.attrs/flow.xeto b/src/xeto/ph.attrs/flow.xeto new file mode 100644 index 0000000..a21e489 --- /dev/null +++ b/src/xeto/ph.attrs/flow.xeto @@ -0,0 +1,143 @@ +// +// Copyright (c) 2025, Project-Haystack +// Licensed under the Academic Free License version 3.0 +// +// History: +// 13 Dec 2025 Lincoln Harmer Creation +// + +////////////////////////////////////////////////////////////////////////// +// Air Flow +// Hierarchy: Air → Rated/Design → Min/Max → Cooling/Heating → Direction → Flow +////////////////////////////////////////////////////////////////////////// + +// Air flow of the asset +AirFlowAttr: VolumetricFlowAttr { air } + +// Air rated flow +AirRatedFlowAttr: AirFlowAttr { rated } + +// Air rated max flow +AirRatedMaxFlowAttr: AirRatedFlowAttr { max } + +// Air rated max cooling flow +AirRatedMaxCoolingFlowAttr: AirRatedMaxFlowAttr { cooling } + +// Air rated max cooling discharge flow +AirRatedMaxCoolingDischargeFlowAttr: AirRatedMaxCoolingFlowAttr { discharge } + +// Air rated max heating flow +AirRatedMaxHeatingFlowAttr: AirRatedMaxFlowAttr { heating } + +// Air rated max heating discharge flow +AirRatedMaxHeatingDischargeFlowAttr: AirRatedMaxHeatingFlowAttr { discharge } + +// Air rated max outdoor flow +AirRatedMaxOutdoorFlowAttr: AirRatedMaxFlowAttr { outdoor } + +// Air rated min flow +AirRatedMinFlowAttr: AirRatedFlowAttr { min } + +// Air rated min cooling flow +AirRatedMinCoolingFlowAttr: AirRatedMinFlowAttr { cooling } + +// Air rated min cooling discharge flow +AirRatedMinCoolingDischargeFlowAttr: AirRatedMinCoolingFlowAttr { discharge } + +// Air rated min heating flow +AirRatedMinHeatingFlowAttr: AirRatedMinFlowAttr { heating } + +// Air rated min heating discharge flow +AirRatedMinHeatingDischargeFlowAttr: AirRatedMinHeatingFlowAttr { discharge } + +// Air rated min outdoor flow +AirRatedMinOutdoorFlowAttr: AirRatedMinFlowAttr { outdoor } + +// Air design flow +AirDesignFlowAttr: AirFlowAttr { design } + +// Air design max flow +AirDesignMaxFlowAttr: AirDesignFlowAttr { max } + +// Air design max cooling flow +AirDesignMaxCoolingFlowAttr: AirDesignMaxFlowAttr { cooling } + +// Air design max cooling discharge flow +AirDesignMaxCoolingDischargeFlowAttr: AirDesignMaxCoolingFlowAttr { discharge } + +// Air design max heating flow +AirDesignMaxHeatingFlowAttr: AirDesignMaxFlowAttr { heating } + +// Air design max heating discharge flow +AirDesignMaxHeatingDischargeFlowAttr: AirDesignMaxHeatingFlowAttr { discharge } + +// Air design max outdoor flow +AirDesignMaxOutdoorFlowAttr: AirDesignMaxFlowAttr { outdoor } + +// Air design min flow +AirDesignMinFlowAttr: AirDesignFlowAttr { min } + +// Air design min cooling flow +AirDesignMinCoolingFlowAttr: AirDesignMinFlowAttr { cooling } + +// Air design min cooling discharge flow +AirDesignMinCoolingDischargeFlowAttr: AirDesignMinCoolingFlowAttr { discharge } + +// Air design min heating flow +AirDesignMinHeatingFlowAttr: AirDesignMinFlowAttr { heating } + +// Air design min heating discharge flow +AirDesignMinHeatingDischargeFlowAttr: AirDesignMinHeatingFlowAttr { discharge } + +// Air design min outdoor flow +AirDesignMinOutdoorFlowAttr: AirDesignMinFlowAttr { outdoor } + +////////////////////////////////////////////////////////////////////////// +// Water Flow +// Hierarchy: Water → Rated/Design → Min/Max → Chilled/Hot → Flow +////////////////////////////////////////////////////////////////////////// + +// Water flow of the asset +WaterFlowAttr: VolumetricFlowAttr { water } + +// Water rated flow +WaterRatedFlowAttr: WaterFlowAttr { rated } + +// Water rated max flow +WaterRatedMaxFlowAttr: WaterRatedFlowAttr { max } + +// Water rated max chilled flow +WaterRatedMaxChilledFlowAttr: WaterRatedMaxFlowAttr { chilled } + +// Water rated max hot flow +WaterRatedMaxHotFlowAttr: WaterRatedMaxFlowAttr { hot } + +// Water rated min flow +WaterRatedMinFlowAttr: WaterRatedFlowAttr { min } + +// Water rated min chilled flow +WaterRatedMinChilledFlowAttr: WaterRatedMinFlowAttr { chilled } + +// Water rated min hot flow +WaterRatedMinHotFlowAttr: WaterRatedMinFlowAttr { hot } + +// Water design flow +WaterDesignFlowAttr: WaterFlowAttr { design } + +// Water design max flow +WaterDesignMaxFlowAttr: WaterDesignFlowAttr { max } + +// Water design max chilled flow +WaterDesignMaxChilledFlowAttr: WaterDesignMaxFlowAttr { chilled } + +// Water design max hot flow +WaterDesignMaxHotFlowAttr: WaterDesignMaxFlowAttr { hot } + +// Water design min flow +WaterDesignMinFlowAttr: WaterDesignFlowAttr { min } + +// Water design min chilled flow +WaterDesignMinChilledFlowAttr: WaterDesignMinFlowAttr { chilled } + +// Water design min hot flow +WaterDesignMinHotFlowAttr: WaterDesignMinFlowAttr { hot } diff --git a/src/xeto/ph.attrs/power.xeto b/src/xeto/ph.attrs/power.xeto new file mode 100644 index 0000000..ce7a6f7 --- /dev/null +++ b/src/xeto/ph.attrs/power.xeto @@ -0,0 +1,203 @@ +// +// Copyright (c) 2025, Project-Haystack +// Licensed under the Academic Free License version 3.0 +// +// History: +// 13 Dec 2025 Lincoln Harmer Creation +// + +////////////////////////////////////////////////////////////////////////// +// Air power attributes +////////////////////////////////////////////////////////////////////////// + +// Air power (capacity) of the asset +AirPowerAttr : PowerAttr { air } + +// Air thermal capacity (heat transfer to/from air) +AirThermalPowerAttr : AirPowerAttr { thermal, unit: "BTU/hr" } + +// Air cooling thermal capacity +AirCoolingThermalPowerAttr : AirThermalPowerAttr { cooling } + +// Air rated cooling thermal capacity +AirRatedCoolingThermalPowerAttr : AirCoolingThermalPowerAttr { rated } + +// Air design cooling thermal capacity +AirDesignCoolingThermalPowerAttr : AirCoolingThermalPowerAttr { design } + +// Air heating thermal capacity +AirHeatingThermalPowerAttr : AirThermalPowerAttr { heating } + +// Air rated heating thermal capacity +AirRatedHeatingThermalPowerAttr : AirHeatingThermalPowerAttr { rated } + +// Air design heating thermal capacity +AirDesignHeatingThermalPowerAttr : AirHeatingThermalPowerAttr { design } + +// Air mechanical power (fan shaft power) +AirMechanicalPowerAttr : AirPowerAttr { mechanical } + +// Air fan mechanical power +AirFanMechanicalPowerAttr : AirMechanicalPowerAttr { fan } + +// Air design fan mechanical power +AirDesignFanMechanicalPowerAttr : AirFanMechanicalPowerAttr { design } + +// Air discharge design fan mechanical power +AirDesignDischargeFanMechanicalPowerAttr : AirDesignFanMechanicalPowerAttr { discharge } + +// Air return design fan mechanical power +AirDesignReturnFanMechanicalPowerAttr : AirDesignFanMechanicalPowerAttr { return } + +// Air rated fan mechanical power +AirRatedFanMechanicalPowerAttr : AirFanMechanicalPowerAttr { rated } + +// Air discharge rated fan mechanical power +AirRatedDischargeFanMechanicalPowerAttr : AirRatedFanMechanicalPowerAttr { discharge } + +// Air return rated fan mechanical power +AirRatedReturnFanMechanicalPowerAttr : AirRatedFanMechanicalPowerAttr { return } + +////////////////////////////////////////////////////////////////////////// +// Water power attributes +////////////////////////////////////////////////////////////////////////// + +// Water power (capacity) of the asset +WaterPowerAttr : PowerAttr { water } + +// Water thermal capacity (heat transfer to/from water) +WaterThermalPowerAttr : WaterPowerAttr { thermal, unit: "BTU/hr" } + +// Water cooling thermal capacity (chiller capacity, cooling coil) +WaterCoolingThermalPowerAttr : WaterThermalPowerAttr { cooling } + +// Water rated cooling thermal capacity +WaterRatedCoolingThermalPowerAttr : WaterCoolingThermalPowerAttr { rated } + +// Water design cooling thermal capacity +WaterDesignCoolingThermalPowerAttr : WaterCoolingThermalPowerAttr { design } + +// Water heating thermal capacity (boiler capacity, heating coil) +WaterHeatingThermalPowerAttr : WaterThermalPowerAttr { heating } + +// Water rated heating thermal capacity +WaterRatedHeatingThermalPowerAttr : WaterHeatingThermalPowerAttr { rated } + +// Water design heating thermal capacity +WaterDesignHeatingThermalPowerAttr : WaterHeatingThermalPowerAttr { design } + +// Water mechanical power (pump shaft power) +WaterMechanicalPowerAttr : WaterPowerAttr { mechanical } + +// Water pump mechanical power +WaterPumpMechanicalPowerAttr : WaterMechanicalPowerAttr { pump } + +// Water design pump mechanical power +WaterDesignPumpMechanicalPowerAttr : WaterPumpMechanicalPowerAttr { design } + +// Water rated pump mechanical power +WaterRatedPumpMechanicalPowerAttr : WaterPumpMechanicalPowerAttr { rated } + +////////////////////////////////////////////////////////////////////////// +// Electrical power attributes +////////////////////////////////////////////////////////////////////////// + +// Electrical power of the asset +ElecPowerAttr : PowerAttr { elec } + +// Electrical motor power +ElecMotorPowerAttr : ElecPowerAttr { motor } + +// Elec fan motor power +ElecFanMotorPowerAttr : ElecMotorPowerAttr { fan } + +// Elec pump motor power +ElecPumpMotorPowerAttr : ElecMotorPowerAttr { pump } + +// Elec design fan motor power +ElecDesignFanMotorPowerAttr : ElecFanMotorPowerAttr { design } + +// Elec discharge design fan motor power +ElecDischargeDesignFanMotorPowerAttr : ElecDesignFanMotorPowerAttr { discharge } + +// Elec return design fan motor power +ElecReturnDesignFanMotorPowerAttr : ElecDesignFanMotorPowerAttr { return } + +// Elec design pump motor power +ElecDesignPumpMotorPowerAttr : ElecPumpMotorPowerAttr { design } + +// Elec rated fan motor power +ElecRatedFanMotorPowerAttr : ElecFanMotorPowerAttr { rated } + +// Elec discharge rated fan motor power +ElecDischargeRatedFanMotorPowerAttr : ElecRatedFanMotorPowerAttr { discharge } + +// Elec return rated fan motor power +ElecReturnRatedFanMotorPowerAttr : ElecRatedFanMotorPowerAttr { return } + +// Elec rated pump motor power +ElecRatedPumpMotorPowerAttr : ElecPumpMotorPowerAttr { rated } + +////////////////////////////////////////////////////////////////////////// +// Natural gas power attributes +////////////////////////////////////////////////////////////////////////// + +// Natural gas power (fuel input) +NaturalGasPowerAttr : PowerAttr { naturalGas } + +// Natural gas input power +NaturalGasInputPowerAttr : NaturalGasPowerAttr { input } + +// Natural gas rated input power +NaturalGasRatedInputPowerAttr : NaturalGasInputPowerAttr { rated } + +// Natural gas design input power +NaturalGasDesignInputPowerAttr : NaturalGasInputPowerAttr { design } + +////////////////////////////////////////////////////////////////////////// +// Fuel oil power attributes +////////////////////////////////////////////////////////////////////////// + +// Fuel oil power (fuel input) +FuelOilPowerAttr : PowerAttr { fuelOil } + +// Fuel oil input power +FuelOilInputPowerAttr : FuelOilPowerAttr { input } + +// Fuel oil rated input power +FuelOilRatedInputPowerAttr : FuelOilInputPowerAttr { rated } + +// Fuel oil design input power +FuelOilDesignInputPowerAttr : FuelOilInputPowerAttr { design } + +////////////////////////////////////////////////////////////////////////// +// Propane power attributes +////////////////////////////////////////////////////////////////////////// + +// Propane power (fuel input) +PropanePowerAttr : PowerAttr { propane } + +// Propane input power +PropaneInputPowerAttr : PropanePowerAttr { input } + +// Propane rated input power +PropaneRatedInputPowerAttr : PropaneInputPowerAttr { rated } + +// Propane design input power +PropaneDesignInputPowerAttr : PropaneInputPowerAttr { design } + +////////////////////////////////////////////////////////////////////////// +// Diesel power attributes +////////////////////////////////////////////////////////////////////////// + +// Diesel power (fuel input) +DieselPowerAttr : PowerAttr { diesel } + +// Diesel input power +DieselInputPowerAttr : DieselPowerAttr { input } + +// Diesel rated input power +DieselRatedInputPowerAttr : DieselInputPowerAttr { rated } + +// Diesel design input power +DieselDesignInputPowerAttr : DieselInputPowerAttr { design } diff --git a/src/xeto/ph.attrs/pressure.xeto b/src/xeto/ph.attrs/pressure.xeto new file mode 100644 index 0000000..7942583 --- /dev/null +++ b/src/xeto/ph.attrs/pressure.xeto @@ -0,0 +1,48 @@ +// +// Copyright (c) 2025, Project-Haystack +// Licensed under the Academic Free License version 3.0 +// +// History: +// 13 Dec 2025 Lincoln Harmer Creation +// + +////////////////////////////////////////////////////////////////////////// +// Air pressure attributes +////////////////////////////////////////////////////////////////////////// + +// Air pressure of the asset +AirPressureAttr : PressureAttr { air } + +// Air design pressure of the asset +AirDesignPressureAttr : AirPressureAttr { design } + +// Air fan design pressure of the asset +AirDesignFanPressureAttr : AirDesignPressureAttr { fan } + +// Air rated pressure of the asset +AirRatedPressureAttr : AirPressureAttr { rated } + +// Air fan rated pressure of the asset +AirRatedFanPressureAttr : AirRatedPressureAttr { fan } + +////////////////////////////////////////////////////////////////////////// +// Water pressure attributes +////////////////////////////////////////////////////////////////////////// + +// Water pressure of the asset +WaterPressureAttr : PressureAttr { water } + +// Water design pressure of the asset +WaterDesignPressureAttr : WaterPressureAttr { design } + +// Water pump design pressure of the asset +WaterDesignPumpPressureAttr : WaterDesignPressureAttr { pump } + +// Water chiller design pressure of the asset +WaterDesignChillerPressureAttr : WaterDesignPressureAttr { chiller } + +// Water rated pressure of the asset +WaterRatedPressureAttr : WaterPressureAttr { rated } + +// Water chiller min rated pressure of the asset +WaterChillerMinRatedPressureAttr : WaterRatedPressureAttr { chiller, min } diff --git a/src/xeto/ph.attrs/temp.xeto b/src/xeto/ph.attrs/temp.xeto index 7efc4ce..e5e7c5b 100644 --- a/src/xeto/ph.attrs/temp.xeto +++ b/src/xeto/ph.attrs/temp.xeto @@ -6,11 +6,75 @@ // 12 May 2025 Rick Jennings Creation // -// Rated operating temperature of the asset -RatedOperatingTempAttr : TempAttr { rated, operating } +////////////////////////////////////////////////////////////////////////// +// Air Temperature +// Hierarchy: Air → Rated/Design → Min/Max → Operating → Direction → Temp +////////////////////////////////////////////////////////////////////////// -// Minimum rated operating temperature of the asset -MinRatedOperatingTempAttr : RatedOperatingTempAttr { min } +// Air temperature of the asset +AirTempAttr : TempAttr { air } -// Maximum rated operating temperature of the asset -MaxRatedOperatingTempAttr : RatedOperatingTempAttr { max } +// Air rated temperature +AirRatedTempAttr : AirTempAttr { rated } + +// Air rated min temperature +AirRatedMinTempAttr : AirRatedTempAttr { min } + +// Air rated min operating temperature +AirRatedMinOperatingTempAttr : AirRatedMinTempAttr { operating } + +// Air rated max temperature +AirRatedMaxTempAttr : AirRatedTempAttr { max } + +// Air rated max operating temperature +AirRatedMaxOperatingTempAttr : AirRatedMaxTempAttr { operating } + +// Air design temperature +AirDesignTempAttr : AirTempAttr { design } + +// Air design discharge temperature +AirDesignDischargeTempAttr : AirDesignTempAttr { discharge } + +////////////////////////////////////////////////////////////////////////// +// Water Temperature +// Hierarchy: Water → Rated/Design → Min/Max → Chilled/Hot → Direction → Temp +////////////////////////////////////////////////////////////////////////// + +// Water temperature of the asset +WaterTempAttr : TempAttr { water } + +// Water rated temperature +WaterRatedTempAttr : WaterTempAttr { rated } + +// Water rated min temperature +WaterRatedMinTempAttr : WaterRatedTempAttr { min } + +// Water rated min operating temperature +WaterRatedMinOperatingTempAttr : WaterRatedMinTempAttr { operating } + +// Water rated max temperature +WaterRatedMaxTempAttr : WaterRatedTempAttr { max } + +// Water rated max operating temperature +WaterRatedMaxOperatingTempAttr : WaterRatedMaxTempAttr { operating } + +// Water design temperature +WaterDesignTempAttr : WaterTempAttr { design } + +// Water design chilled temperature +WaterDesignChilledTempAttr : WaterDesignTempAttr { chilled } + +// Water design chilled entering temperature +WaterDesignChilledEnteringTempAttr : WaterDesignChilledTempAttr { entering } + +// Water design chilled leaving temperature +WaterDesignChilledLeavingTempAttr : WaterDesignChilledTempAttr { leaving } + +// Water design hot temperature +WaterDesignHotTempAttr : WaterDesignTempAttr { hot } + +// Water design hot entering temperature +WaterDesignHotEnteringTempAttr : WaterDesignHotTempAttr { entering } + +// Water design hot leaving temperature +WaterDesignHotLeavingTempAttr : WaterDesignHotTempAttr { leaving }