Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Deduplicate elements: EnergyUse through OtherControlStrategyName #324

Closed
macintoshpie opened this issue Apr 12, 2021 · 6 comments · Fixed by #349
Closed

Deduplicate elements: EnergyUse through OtherControlStrategyName #324

macintoshpie opened this issue Apr 12, 2021 · 6 comments · Fixed by #349
Assignees
Labels

Comments

@macintoshpie
Copy link
Contributor

The schema redefines elements that should technically be references to a single element/type.

For each of the elements below:

  1. Determine if the duplicate names are of the same "type", ie representing the same thing: actual type, description, etc.
  2. If they are the same type, create a new element at the bottom of the schema and reference it in those places. Remove that element name from the ignored_dupes list in validation_spec.rb.
  3. If they are not representing the same thing, create a new issue on GH describing the elements and their differences.

Below are the duplicated element names and their current line numbers at 37086c4

EnergyUse: [15823, 15901]
EquipmentDisposalAndSalvageCosts: [2705, 5664]
ExistingScheduleAffected: [4612, 4656, 4692, 4728]
ExteriorRoughness: [11520, 12550]
Facility: [64, 14185, 14380]
FanBased: [6768, 6928]
FenestrationArea: [17814, 17836]
FloorsAboveGrade: [672, 1574]
FloorsBelowGrade: [684, 1586]
FoundationHeightAboveGrade: [12747, 12830]
FoundationWallConstruction: [12742, 12825]
FoundationWallInsulationCondition: [12796, 12879]
FoundationWallInsulationThickness: [12759, 12842]
FoundationWallRValue: [12771, 12854]
FoundationWallUFactor: [12783, 12866]
FundingFromIncentives: [2753, 5676]
FundingFromTaxCredits: [2765, 5688]
HDDBaseTemperature: [3105, 4538]
HeatPump: [6341, 9408]
HeatingStageCapacityFraction: [6494, 7460]
HotWaterBoilerMaximumFlowRate: [7544, 7694]
InputCapacity: [6442, 7409]
InteriorVisibleAbsorptance: [11508, 12538]
InternalRateOfReturn: [2449, 2838, 2987, 5737]
IntervalFrequency: [4458, 17907]
LampLabel: [8876, 8909, 8947, 8969, 9002, 9036]
LampPower: [9183, 10227]
LinkedBuildingID: [14250, 14445]
LinkedFacilityID: [14188, 14383]
LinkedScheduleID: [14197, 14228, 14259, 14290, 14321, 14352, 14392, 14423, 14454, 14485, 14516, 14547]
LinkedScheduleIDs: [14194, 14225, 14256, 14287, 14318, 14349, 14389, 14420, 14451, 14482, 14513, 14544]
LinkedSectionID: [14281, 14476]
LinkedSiteID: [14219, 14414]
LinkedSpaceID: [14343, 14538]
LinkedSystemID: [10802, 11037, 11195, 14569]
LinkedSystemIDs: [10799, 11034, 11192]
LinkedThermalZoneID: [14312, 14507]
MVCost: [2681, 5752]
MakeupAirSourceID: [8663, 8734]
Manual: [16947, 17137]
MeasureName: [4806, 4836, 4864, 4888, 4939, 4974, 5010, 5046, 5071, 5096, 5121, 5147, 5174, 5200, 5234, 5260, 5282, 5305, 5329, 5352, 5380, 5406, 5425, 5439]
MinimumPartLoadRatio: [6707, 7973]
ModifiedSchedule: [4620, 4664, 4700, 4736]
NPVofTaxImplications: [2801, 5700]
NetPresentValue: [2437, 2826, 2975, 5725]
NoCooling: [6648, 8071]
NoHeating: [6408, 7794]
NumberOfDiscreteCoolingStages: [6683, 7875]
NumberOfHeatingStages: [6482, 7448]
OMCostAnnualSavings: [2693, 5640]
Occupancy: [16967, 17170]
Other: [2278, 2863, 3056, 3629, 6852, 6932, 8468, 9391, 9568, 9576, 9687, 9698, 10589, 12285, 12800, 12934, 13558, 13974, 13991, 17290, 17577]
OtherCombination: [6407, 6647, 7793, 8070, 8801, 9066]
OtherControlStrategyName: [16939, 16959, 16984, 17004, 17024, 17049, 17092, 17129, 17162, 17198, 17218, 17240]
@Ryoken
Copy link
Contributor

Ryoken commented May 19, 2021

All of these instances were found to be identical. A base level element was created by the same name and all instances were converted into references:

EnergyUse
EquipmentDisposalAndSalvageCosts
ExistingScheduleAffected
ExteriorRoughness
FanBased
FenestrationArea
FloorsAboveGrade
FloorsBelowGrade
FoundationHeightAboveGrade
FoundationWallConstruction
FoundationWallInsulationCondition
FoundationWallInsulationThickness
FoundationWallRValue
FoundationWallUFactor
FundingFromIncentives
FundingFromTaxCredits
HDDBaseTemperature
HeatingStageCapacityFraction
HotWaterBoilerMaximumFlowRate
InputCapacity
InteriorVisibleAbsorptance
LinkedBuildingID
LinkedSystemIDs
LinkedThermalZoneID
MVCost
MakeupAirSourceID
MinimumPartLoadRatio
ModifiedSchedule
NPVofTaxImplications
NetPresentValue
NoCooling
NoHeating
NumberOfDiscreteCoolingStages
NumberOfHeatingStages
OMCostAnnualSavings
OtherCombination
OtherControlStrategyName

@Ryoken
Copy link
Contributor

Ryoken commented May 19, 2021

These instances were no longer duplicated as a result of consolidating one of the previously listed elements:

LinkedScheduleID

@Ryoken
Copy link
Contributor

Ryoken commented May 19, 2021

These instances were identical save for minor differences in documentation. In each instance a more generic documentation was provided after consolidating into a base level element:

InternalRateOfReturn
LampPower
LinkedFacilityID
LinkedScheduleIDs
LinkedSectionID
LinkedSiteID
LinkedSpaceID
LinkedSystemID

@Ryoken
Copy link
Contributor

Ryoken commented May 19, 2021

These instances had a more complex change:

IntervalFrequency

  • first instance is of type "IntervalFrequencyType"
  • second instance is of tyoe "IntervalTime"
  • both sub-types are identical so references to "IntervalTime" were changed to "IntervalFrequencyType" and instances were merged
  • "IntervalTime" removed

Occupancy

  • second instance re-defined "ControlSensorOccupancyType"
  • changed second instance to reference "ControlSensorOccupancyType" and merged both into base level element

@Ryoken
Copy link
Contributor

Ryoken commented May 19, 2021

The remaining instances require some changes:

Facility

  • first instance is complex, remaining instances are simpler but duplicates with minor documentation changes
  • suggestion: create base element "linkedFacility" and reference with second and third instances

HeatPump

  • both instances are completely seperate
  • suggestion: rename second instance to "HotWaterHeatingPump" or similar

LampLabel

  • all instances are unique enumerations
  • suggestion: rename to include parent, such as "CompactFluorescentLampLabel" or "IncandescentLampLabel"

Manual

  • both instances nearly identical except for each use a slightly different type of "ControlStrategy"
  • suggestion: rename to "ControlGeneralTypeManual" and "ControlLightingTypeManual" or consolidate "ControlStrategy"

MeasureName

  • nearly all instances are unique enumerations
  • suggestion: rename to include parent, such as "LightingImprovementsMeasureName" or "ServiceHotWaterSystemsMeasureName"

Other

  • most instances are unique
  • some instances are simply referencing "OtherType"
  • Suggestion: merge all "OtherType" references into one base "Other" element, then rename all remaining instances to be unique

@Ryoken
Copy link
Contributor

Ryoken commented Jun 1, 2021

Moved remaining duplicates to #356

@Ryoken Ryoken closed this as completed Jun 1, 2021
@JieXiong9119 JieXiong9119 linked a pull request Sep 21, 2021 that will close this issue
@JieXiong9119 JieXiong9119 added the Schema: General General update to BuildingSync label Sep 22, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants