8000 ElectricPanel: add BranchCircuits and ServiceFeeders by joseph-robertson · Pull Request #435 · hpxmlwg/hpxml · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

ElectricPanel: add BranchCircuits and ServiceFeeders #435

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

Merged
merged 36 commits into from
Apr 4, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
d6ada2d
Introduce BranchCircuits and DemandLoads to ElectricPanel.
joseph-robertson Jan 9, 2025
7265aef
Latest HPXMLMerged.xsd
Jan 9, 2025
95bf225
Units for power rating, and connect some types.
joseph-robertson Jan 9, 2025
bdd07b7
Merge branch 'electric_panel2' of github.com:hpxmlwg/hpxml into elect…
joseph-robertson Jan 9, 2025
9f9577d
Latest HPXMLMerged.xsd
Jan 9, 2025
1b8a33b
Try increasing the line width.
joseph-robertson Jan 10, 2025
36fabbe
Merge branch 'electric_panel2' of github.com:hpxmlwg/hpxml into elect…
joseph-robertson Jan 10, 2025
bdc7f30
Latest HPXMLMerged.xsd
Jan 10, 2025
4ebd5ba
Make AttachedToComponent unbounded.
joseph-robertson Jan 10, 2025
f976a1d
Latest HPXMLMerged.xsd
Jan 10, 2025
0ecc676
Add missing dataSource attributes.
joseph-robertson Jan 10, 2025
cd3d65f
Latest HPXMLMerged.xsd
Jan 10, 2025
9733474
Simplify by moving some elements up.
joseph-robertson Jan 14, 2025
b1cc5af
Latest HPXMLMerged.xsd
Jan 14, 2025
80a7f86
One layer above BranchCircuit and DemandLoad elements.
joseph-robertson Jan 14, 2025
5d50a4b
Latest HPXMLMerged.xsd
Jan 14, 2025
d9b2e80
Change DemandLoad to ServiceFeeder.
joseph-robertson Jan 15, 2025
f2beee5
Latest HPXMLMerged.xsd
Jan 15, 2025
e4492c9
Add annotations.
joseph-robertson Jan 21, 2025
136433c
Latest HPXMLMerged.xsd
Jan 21, 2025
42d8610
Add refrigeration enum to LoadType.
joseph-robertson Jan 23, 2025
c0b1fa7
Latest HPXMLMerged.xsd
Jan 23, 2025
3851a98
Allow 0 occupied spaces.
joseph-robertson Jan 24, 2025
d6a5194
Latest HPXMLMerged.xsd
Jan 24, 2025
913ea83
Change AttachedToElectricPanel to AttachedToSubPanel for clarity.
joseph-robertson Feb 13, 2025
40e00bf
Latest HPXMLMerged.xsd
Feb 13, 2025
d347083
Go with W.
joseph-robertson Feb 19, 2025
4a910c1
Latest HPXMLMerged.xsd
Feb 19, 2025
9297401
Remove unused types.
joseph-robertson Mar 5, 2025
4b4fb1f
Latest HPXMLMerged.xsd
Mar 5, 2025
2114f2f
Merge branch 'master' into electric_panel2
joseph-robertson Mar 13, 2025
bffc593
Change Headroom to HeadroomSpaces, and require PowerRating to be grea…
joseph-robertson Mar 13, 2025
4874557
Latest HPXMLMerged.xsd
Mar 13, 2025
f1a8ece
Change PowerRating to greater than or equal to zero.
joseph-robertson Mar 13, 2025
79ca504
Latest HPXMLMerged.xsd
Mar 13, 2025
7999584
Merge branch 'master' into electric_panel2
Apr 4, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
120 changes: 120 additions & 0 deletions merged_schema/HPXMLMerged.xsd
Original file line number Diff line number Diff line change
Expand Up @@ -6625,10 +6625,86 @@
<xs:documentation>[A]</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="HeadroomSpaces" type="IntegerGreaterThanOrEqualToZero">
<xs:annotation>
<xs:documentation>The number of open breaker spaces.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="RatedTotalSpaces" type="IntegerGreaterThanZero">
<xs:annotation>
<xs:documentation>The rated number of breaker spaces.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="BranchCircuits">
<xs:annotation>
<xs:documentation>Records the branch circuit layout and breaker usage of the electrical panel.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="1" name="BranchCircuit" type="BranchCircuitType">
<xs:annotation>
<xs:documentation>Each branch circuit is protected by an overcurrent protection device. However, a breaker can protect more than one branch circuit. For example, a tandem breaker takes up one breaker space but serves two branch circuits. Each BranchCircuit records the attributes of a branch circuit, including the voltage served, max current rating, number of breaker spaces occupied, and what system(s) it is connected to.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" name="ServiceFeeders">
<xs:annotation>
<xs:documentation>Records the electrical loads of major electric and other specific systems for sizing the service entrance conductors (wires going into the main electrical panel from the utility pole) or the feeder conductors (wires between electrical panels) according to the National Electrical Code. This calculation is known as the service load or feeder load calculation. The electrical load refers to the nominal or nameplate power rating of a device in Volt-Amps or Watts. It can be calculated as the product of voltage and full load amp (FLA) or rated load amp (RLA). Minimum circuit amp (MCA) or maximum overcurrent rating can be used but are more conservative than FLA or RLA.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="1" name="ServiceFeeder" type="ServiceFeederType"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" ref="extension"/>
</xs:sequence>
<xs:attribute name="dataSource" type="DataSource"/>
</xs:complexType>
<xs:complexType name="BranchCircuitType">
<xs:sequence>
<xs:group ref="SystemInfo"/>
<xs:element minOccurs="0" name="Voltage" type="ElectricPanelVoltage"/>
<xs:element minOccurs="0" name="MaxCurrentRating" type="Current">
<xs:annotation>
<xs:documentation>[A]</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="OccupiedSpaces" type="BranchCircuitOccupiedSpaces">
<xs:annotation>
<xs:documentation>Number of occupied breaker spaces.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="AttachedToComponent" type="LocalReference" maxOccurs="unbounded"/>
<xs:element minOccurs="0" name="AttachedToSubPanel" type="LocalReference">
<xs:annotation>
<xs:documentation>References the ElectricPanel that this BranchCircuit is attached to.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attribute name="dataSource" type="DataSource"/>
</xs:complexType>
<xs:complexType name="ServiceFeederType">
<xs:sequence>
<xs:group ref="SystemInfo"/>
<xs:element minOccurs="0" name="LoadType" type="ServiceFeederLoadType"/>
<xs:element minOccurs="0" name="PowerRating" type="HPXMLDoubleGreaterThanOrEqualToZero">
<xs:annotation>
<xs:documentation>[W]</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="IsNewLoad" type="HPXMLBoolean">
<xs:annotation>
<xs:documentation>In the context of an NEC calculation, whether the load is an addition or not.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="NumberofAppliances" type="IntegerGreaterThanOrEqualToZero"/>
<xs:element minOccurs="0" name="AttachedToComponent" type="LocalReference" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="dataSource" type="DataSource"/>
</xs:complexType>
<xs:simpleType name="DataSource">
<xs:restriction base="xs:string">
<xs:enumeration value="user"/>
Expand Down Expand Up @@ -11898,6 +11974,50 @@
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:simpleType name="BranchCircuitOccupiedSpaces_simple">
<xs:restriction base="xs:double">
<xs:enumeration value="0.0"/>
<xs:enumeration value="0.5"/>
<xs:enumeration value="1.0"/>
<xs:enumeration value="2.0"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="BranchCircuitOccupiedSpaces">
<xs:simpleContent>
<xs:extension base="BranchCircuitOccupiedSpaces_simple">
<xs:attribute name="dataSource" type="DataSource"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:simpleType name="ServiceFeederLoadType_simple">
<xs:restriction base="xs:string">
<xs:enumeration value="heating"/>
<xs:enumeration value="cooling"/>
<xs:enumeration value="hot water"/>
<xs:enumeration value="clothes dryer"/>
<xs:enumeration value="dishwasher"/>
<xs:enumeration value="range/oven"/>
<xs:enumeration value="refrigeration"/>
<xs:enumeration value="mech vent"/>
<xs:enumeration value="permanent spa heater"/>
<xs:enumeration value="permanent spa pump"/>
<xs:enumeration value="pool heater"/>
<xs:enumeration value="pool pump"/>
<xs:enumeration value="well pump"/>
<xs:enumeration value="electric vehicle charging"/>
<xs:enumeration value="lighting"/>
<xs:enumeration value="kitchen"/>
<xs:enumeration value="laundry"/>
<xs:enumeration value="other"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ServiceFeederLoadType">
<xs:simpleContent>
<xs:extension base="ServiceFeederLoadType_simple">
<xs:attribute name="dataSource" type="DataSource"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:simpleType name="ScreenMaterial_simple">
<xs:restriction base="xs:string">
<xs:enumeration value="fiberglass"/>
Expand Down
76 changes: 76 additions & 0 deletions schemas/HPXMLBaseElements.xsd
Original file line number Diff line number Diff line change
Expand Up @@ -6611,8 +6611,84 @@
<xs:documentation>[A]</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="HeadroomSpaces" type="IntegerGreaterThanOrEqualToZero">
<xs:annotation>
<xs:documentation>The number of open breaker spaces.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="RatedTotalSpaces" type="IntegerGreaterThanZero">
<xs:annotation>
<xs:documentation>The rated number of breaker spaces.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="BranchCircuits">
<xs:annotation>
<xs:documentation>Records the branch circuit layout and breaker usage of the electrical panel.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="1" name="BranchCircuit" type="BranchCircuitType">
<xs:annotation>
<xs:documentation>Each branch circuit is protected by an overcurrent protection device. However, a breaker can protect more than one branch circuit. For example, a tandem breaker takes up one breaker space but serves two branch circuits. Each BranchCircuit records the attributes of a branch circuit, including the voltage served, max current rating, number of breaker spaces occupied, and what system(s) it is connected to.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" name="ServiceFeeders">
<xs:annotation>
<xs:documentation>Records the electrical loads of major electric and other specific systems for sizing the service entrance conductors (wires going into the main electrical panel from the utility pole) or the feeder conductors (wires between electrical panels) according to the National Electrical Code. This calculation is known as the service load or feeder load calculation. The electrical load refers to the nominal or nameplate power rating of a device in Volt-Amps or Watts. It can be calculated as the product of voltage and full load amp (FLA) or rated load amp (RLA). Minimum circuit amp (MCA) or maximum overcurrent rating can be used but are more conservative than FLA or RLA.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
8000 <xs:element maxOccurs="unbounded" minOccurs="1" name="ServiceFeeder" type="ServiceFeederType"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" ref="extension"/>
</xs:sequence>
<xs:attribute name="dataSource" type="DataSource"/>
</xs:complexType>
<xs:complexType name="BranchCircuitType">
<xs:sequence>
<xs:group ref="SystemInfo"/>
<xs:element minOccurs="0" name="Voltage" type="ElectricPanelVoltage"/>
<xs:element minOccurs="0" name="MaxCurrentRating" type="Current">
<xs:annotation>
<xs:documentation>[A]</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="OccupiedSpaces" type="BranchCircuitOccupiedSpaces">
<xs:annotation>
<xs:documentation>Number of occupied breaker spaces.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="AttachedToComponent" type="LocalReference" maxOccurs="unbounded"/>
<xs:element minOccurs="0" name="AttachedToSubPanel" type="LocalReference">
<xs:annotation>
<xs:documentation>References the ElectricPanel that this BranchCircuit is attached to.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attribute name="dataSource" type="DataSource"/>
</xs:complexType>
<xs:complexType name="ServiceFeederType">
<xs:sequence>
<xs:group ref="SystemInfo"/>
<xs:element minOccurs="0" name="LoadType" type="ServiceFeederLoadType"/>
<xs:element minOccurs="0" name="PowerRating" type="HPXMLDoubleGreaterThanOrEqualToZero">
<xs:annotation>
<xs:documentation>[W]</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="IsNewLoad" type="HPXMLBoolean">
<xs:annotation>
<xs:documentation>In the context of an NEC calculation, whether the load is an addition or not.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="NumberofAppliances" type="IntegerGreaterThanOrEqualToZero"/>
<xs:element minOccurs="0" name="AttachedToComponent" type="LocalReference" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="dataSource" type="DataSource"/>
</xs:complexType>
</xs:schema>
47 changes: 45 additions & 2 deletions schemas/HPXMLDataTypes.xsd
Original file line number Diff line number Diff line change
Expand Up @@ -4069,8 +4069,7 @@
</xs:complexType>
<xs:simpleType name="GreenBuildingVerificationType_simple">
<xs:restriction base="xs:string">
<xs:enumeration
value="BPI-2101-compliant Certificate of Residential Energy Efficiency Features and Performance"/>
<xs:enumeration value="BPI-2101-compliant Certificate of Residential Energy Efficiency Features and Performance"/>
<xs:enumeration value="Certified Passive House"/>
<xs:enumeration value="ENERGY STAR Certified Homes"/>
<xs:enumeration value="EnerPHit"/>
Expand Down Expand Up @@ -5270,6 +5269,50 @@
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:simpleType name="BranchCircuitOccupiedSpaces_simple">
<xs:restriction base="xs:double">
<xs:enumeration value="0.0"/>
<xs:enumeration value="0.5"/>
<xs:enumeration value="1.0"/>
<xs:enumeration value="2.0"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="BranchCircuitOccupiedSpaces">
<xs:simpleContent>
<xs:extension base="BranchCircuitOccupiedSpaces_simple">
<xs:attribute name="dataSource" type="DataSource"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:simpleType name="ServiceFeederLoadType_simple">
<xs:restriction base="xs:string">
<xs:enumeration value="heating"/>
<xs:enumeration value="cooling"/>
<xs:enumeration value="hot water"/>
<xs:enumeration value="clothes dryer"/>
<xs:enumeration value="dishwasher"/>
<xs:enumeration value="range/oven"/>
<xs:enumeration value="refrigeration"/>
<xs:enumeration value="mech vent"/>
<xs:enumeration value="permanent spa heater"/>
<xs:enumeration value="permanent spa pump"/>
<xs:enumeration value="pool heater"/>
<xs:enumeration value="pool pump"/>
<xs:enumeration value="well pump"/>
<xs:enumeration value="electric vehicle charging"/>
<xs:enumeration value="lighting"/>
<xs:enumeration value="kitchen"/>
<xs:enumeration value="laundry"/>
<xs:enumeration value="other"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ServiceFeederLoadType">
<xs:simpleContent>
<xs:extension base="ServiceFeederLoadType_simple">
<xs:attribute name="dataSource" type="DataSource"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:simpleType name="ScreenMaterial_simple">
<xs:restriction base="xs:string">
<xs:enumeration value="fiberglass"/>
Expand Down
0