openepd 4.13.1__py3-none-any.whl → 5.1.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- openepd/__version__.py +1 -1
- openepd/model/common.py +40 -1
- openepd/model/declaration.py +7 -2
- openepd/model/geography.py +1 -1
- openepd/model/lcia.py +191 -19
- openepd/model/pcr.py +2 -2
- openepd/model/specs/README.md +34 -8
- openepd/model/specs/asphalt.py +2 -2
- openepd/model/specs/base.py +15 -5
- openepd/model/specs/generated/__init__.py +80 -0
- openepd/model/specs/generated/cladding.py +4 -4
- openepd/model/specs/generated/concrete.py +8 -7
- openepd/model/specs/generated/electrical.py +2 -2
- openepd/model/specs/generated/finishes.py +10 -6
- openepd/model/specs/generated/masonry.py +6 -2
- openepd/model/specs/generated/network_infrastructure.py +7 -2
- openepd/model/specs/generated/openings.py +10 -6
- openepd/model/specs/generated/sheathing.py +8 -4
- openepd/model/specs/generated/steel.py +10 -5
- openepd/model/specs/range/__init__.py +101 -0
- openepd/model/specs/range/accessories.py +97 -0
- openepd/model/specs/range/aggregates.py +57 -0
- openepd/model/specs/range/aluminium.py +92 -0
- openepd/model/specs/range/asphalt.py +61 -0
- openepd/model/specs/range/bulk_materials.py +31 -0
- openepd/model/specs/range/cast_decks_and_underlayment.py +34 -0
- openepd/model/specs/range/cladding.py +275 -0
- openepd/model/specs/range/cmu.py +44 -0
- openepd/model/specs/range/concrete.py +179 -0
- openepd/model/specs/range/conveying_equipment.py +86 -0
- openepd/model/specs/range/electrical.py +422 -0
- openepd/model/specs/range/electrical_transmission_and_distribution_equipment.py +96 -0
- openepd/model/specs/range/electricity.py +31 -0
- openepd/model/specs/range/finishes.py +585 -0
- openepd/model/specs/range/fire_and_smoke_protection.py +108 -0
- openepd/model/specs/range/furnishings.py +137 -0
- openepd/model/specs/range/grouting.py +34 -0
- openepd/model/specs/range/manufacturing_inputs.py +190 -0
- openepd/model/specs/range/masonry.py +87 -0
- openepd/model/specs/range/material_handling.py +50 -0
- openepd/model/specs/range/mechanical.py +307 -0
- openepd/model/specs/range/mechanical_insulation.py +42 -0
- openepd/model/specs/range/network_infrastructure.py +208 -0
- openepd/model/specs/range/openings.py +512 -0
- openepd/model/specs/range/other_electrical_equipment.py +31 -0
- openepd/model/specs/range/other_materials.py +194 -0
- openepd/model/specs/range/plumbing.py +200 -0
- openepd/model/specs/range/precast_concrete.py +115 -0
- openepd/model/specs/range/sheathing.py +86 -0
- openepd/model/specs/range/steel.py +332 -0
- openepd/model/specs/range/thermal_moisture_protection.py +336 -0
- openepd/model/specs/range/utility_piping.py +75 -0
- openepd/model/specs/range/wood.py +228 -0
- openepd/model/specs/range/wood_joists.py +44 -0
- openepd/model/validation/numbers.py +11 -5
- openepd/model/validation/quantity.py +469 -58
- {openepd-4.13.1.dist-info → openepd-5.1.0.dist-info}/METADATA +6 -1
- {openepd-4.13.1.dist-info → openepd-5.1.0.dist-info}/RECORD +60 -25
- {openepd-4.13.1.dist-info → openepd-5.1.0.dist-info}/LICENSE +0 -0
- {openepd-4.13.1.dist-info → openepd-5.1.0.dist-info}/WHEEL +0 -0
@@ -0,0 +1,86 @@
|
|
1
|
+
#
|
2
|
+
# Copyright 2024 by C Change Labs Inc. www.c-change-labs.com
|
3
|
+
#
|
4
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
# you may not use this file except in compliance with the License.
|
6
|
+
# You may obtain a copy of the License at
|
7
|
+
#
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
#
|
10
|
+
# Unless required by applicable law or agreed to in writing, software
|
11
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
# See the License for the specific language governing permissions and
|
14
|
+
# limitations under the License.
|
15
|
+
#
|
16
|
+
__all__ = (
|
17
|
+
"EscalatorsRangeV1",
|
18
|
+
"ElevatorsRangeV1",
|
19
|
+
"ConveyingEquipmentRangeV1",
|
20
|
+
)
|
21
|
+
|
22
|
+
# NB! This is a generated code. Do not edit it manually. Please see src/openepd/model/specs/README.md
|
23
|
+
|
24
|
+
|
25
|
+
from openepd.compat.pydantic import pyd
|
26
|
+
from openepd.model.specs.base import BaseOpenEpdHierarchicalSpec
|
27
|
+
from openepd.model.specs.generated.enums import ElevatorsBuildingRise, ElevatorsUsageIntensity
|
28
|
+
from openepd.model.validation.quantity import (
|
29
|
+
AmountRangeCapacityPerHour,
|
30
|
+
AmountRangeLengthMm,
|
31
|
+
AmountRangeMass,
|
32
|
+
AmountRangeSpeed,
|
33
|
+
)
|
34
|
+
|
35
|
+
|
36
|
+
class EscalatorsRangeV1(BaseOpenEpdHierarchicalSpec):
|
37
|
+
"""
|
38
|
+
Escalators category performance specification.
|
39
|
+
|
40
|
+
A moving staircase consisting of a circulating belt of steps driven by a motor,
|
41
|
+
which conveys people between the floors of a building.
|
42
|
+
|
43
|
+
Range version.
|
44
|
+
"""
|
45
|
+
|
46
|
+
_EXT_VERSION = "1.1"
|
47
|
+
|
48
|
+
vertical_rise: AmountRangeLengthMm | None = pyd.Field(
|
49
|
+
default=None, description="The vertical distance between the top and bottom landings of an escalator"
|
50
|
+
)
|
51
|
+
speed: AmountRangeSpeed | None = pyd.Field(default=None, description="Reference speed of the escalator")
|
52
|
+
step_width: AmountRangeLengthMm | None = pyd.Field(default=None, description="Width of the escalator steps")
|
53
|
+
max_capacity: AmountRangeCapacityPerHour | None = pyd.Field(
|
54
|
+
default=None, description="Max capacity of escalator in persons per hour"
|
55
|
+
)
|
56
|
+
indoor: bool | None = pyd.Field(default=None, description="Escalator can be used for indoor applications")
|
57
|
+
outdoor: bool | None = pyd.Field(default=None, description="Escalator can be used for outdoor applications")
|
58
|
+
|
59
|
+
|
60
|
+
class ElevatorsRangeV1(BaseOpenEpdHierarchicalSpec):
|
61
|
+
"""
|
62
|
+
Car that moves in a vertical shaft to carry passengers or freight between the levels of a multistory building.
|
63
|
+
|
64
|
+
Range version.
|
65
|
+
"""
|
66
|
+
|
67
|
+
_EXT_VERSION = "1.0"
|
68
|
+
|
69
|
+
usage_intensity: list[ElevatorsUsageIntensity] | None = pyd.Field(default=None, description="")
|
70
|
+
travel_length: AmountRangeLengthMm | None = pyd.Field(default=None, description="")
|
71
|
+
rated_load: AmountRangeMass | None = pyd.Field(default=None, description="")
|
72
|
+
rated_speed: AmountRangeSpeed | None = pyd.Field(default=None, description="")
|
73
|
+
building_rise: list[ElevatorsBuildingRise] | None = pyd.Field(default=None, description="")
|
74
|
+
|
75
|
+
|
76
|
+
class ConveyingEquipmentRangeV1(BaseOpenEpdHierarchicalSpec):
|
77
|
+
"""
|
78
|
+
Conveying Equipment.
|
79
|
+
|
80
|
+
Range version.
|
81
|
+
"""
|
82
|
+
|
83
|
+
_EXT_VERSION = "1.1"
|
84
|
+
|
85
|
+
Elevators: ElevatorsRangeV1 | None = None
|
86
|
+
Escalators: EscalatorsRangeV1 | None = None
|
@@ -0,0 +1,422 @@
|
|
1
|
+
#
|
2
|
+
# Copyright 2024 by C Change Labs Inc. www.c-change-labs.com
|
3
|
+
#
|
4
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
# you may not use this file except in compliance with the License.
|
6
|
+
# You may obtain a copy of the License at
|
7
|
+
#
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
#
|
10
|
+
# Unless required by applicable law or agreed to in writing, software
|
11
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
# See the License for the specific language governing permissions and
|
14
|
+
# limitations under the License.
|
15
|
+
#
|
16
|
+
__all__ = (
|
17
|
+
"LowVoltBusesRangeV1",
|
18
|
+
"MedVoltBusesRangeV1",
|
19
|
+
"BatteriesRangeV1",
|
20
|
+
"OtherElectricalPowerStorageRangeV1",
|
21
|
+
"CableTraysRangeV1",
|
22
|
+
"ElectricalBusesRangeV1",
|
23
|
+
"FloorEquipmentBoxesRangeV1",
|
24
|
+
"PowerDistributionUnitsRangeV1",
|
25
|
+
"RacewaysRangeV1",
|
26
|
+
"FueledElectricalGeneratorsRangeV1",
|
27
|
+
"OtherGenerationRangeV1",
|
28
|
+
"PhotovoltaicsRangeV1",
|
29
|
+
"WindTurbinesRangeV1",
|
30
|
+
"ElectricityFromPowerGridRangeV1",
|
31
|
+
"ElectricityFromSpecificGeneratorRangeV1",
|
32
|
+
"PowerPurchaseAgreementsRangeV1",
|
33
|
+
"LightbulbsRangeV1",
|
34
|
+
"LightingControlsRangeV1",
|
35
|
+
"LightingFixturesRangeV1",
|
36
|
+
"OutdoorLightingRangeV1",
|
37
|
+
"SpecialtyLightingRangeV1",
|
38
|
+
"TaskLightingRangeV1",
|
39
|
+
"ElectricalPowerStorageRangeV1",
|
40
|
+
"LowVoltageElectricalDistributionRangeV1",
|
41
|
+
"ElectricalGenerationEquipmentRangeV1",
|
42
|
+
"ElectricPowerRangeV1",
|
43
|
+
"LightingRangeV1",
|
44
|
+
"ElectricalConduitRangeV1",
|
45
|
+
"ElectricalRangeV1",
|
46
|
+
)
|
47
|
+
|
48
|
+
# NB! This is a generated code. Do not edit it manually. Please see src/openepd/model/specs/README.md
|
49
|
+
|
50
|
+
|
51
|
+
from openepd.compat.pydantic import pyd
|
52
|
+
from openepd.model.common import RangeFloat
|
53
|
+
from openepd.model.specs.base import BaseOpenEpdHierarchicalSpec
|
54
|
+
from openepd.model.specs.generated.enums import CableTraysMaterial, ConduitMaterial, EnergySource, RacewaysMaterial
|
55
|
+
from openepd.model.validation.quantity import (
|
56
|
+
AmountRangeColorTemperature,
|
57
|
+
AmountRangeLengthMm,
|
58
|
+
AmountRangeLuminosity,
|
59
|
+
AmountRangeMass,
|
60
|
+
AmountRangePower,
|
61
|
+
)
|
62
|
+
|
63
|
+
|
64
|
+
class LowVoltBusesRangeV1(BaseOpenEpdHierarchicalSpec):
|
65
|
+
"""
|
66
|
+
Busbars and Busways of 600V or less.
|
67
|
+
|
68
|
+
Range version.
|
69
|
+
"""
|
70
|
+
|
71
|
+
_EXT_VERSION = "1.0"
|
72
|
+
|
73
|
+
|
74
|
+
class MedVoltBusesRangeV1(BaseOpenEpdHierarchicalSpec):
|
75
|
+
"""
|
76
|
+
Busbars and Busways over 600V.
|
77
|
+
|
78
|
+
Range version.
|
79
|
+
"""
|
80
|
+
|
81
|
+
_EXT_VERSION = "1.0"
|
82
|
+
|
83
|
+
|
84
|
+
class BatteriesRangeV1(BaseOpenEpdHierarchicalSpec):
|
85
|
+
"""
|
86
|
+
Battery equipment, including central batteries, battery charging, and UPS.
|
87
|
+
|
88
|
+
Range version.
|
89
|
+
"""
|
90
|
+
|
91
|
+
_EXT_VERSION = "1.0"
|
92
|
+
|
93
|
+
|
94
|
+
class OtherElectricalPowerStorageRangeV1(BaseOpenEpdHierarchicalSpec):
|
95
|
+
"""
|
96
|
+
Other electrical power storage performance specification.
|
97
|
+
|
98
|
+
Range version.
|
99
|
+
"""
|
100
|
+
|
101
|
+
_EXT_VERSION = "1.0"
|
102
|
+
|
103
|
+
|
104
|
+
class CableTraysRangeV1(BaseOpenEpdHierarchicalSpec):
|
105
|
+
"""
|
106
|
+
Mechanical support for electrial or communications cabling, typically suspended from a roof or wall.
|
107
|
+
|
108
|
+
Range version.
|
109
|
+
"""
|
110
|
+
|
111
|
+
_EXT_VERSION = "1.0"
|
112
|
+
|
113
|
+
height: AmountRangeLengthMm | None = pyd.Field(default=None, description="")
|
114
|
+
width: AmountRangeLengthMm | None = pyd.Field(default=None, description="")
|
115
|
+
depth: AmountRangeLengthMm | None = pyd.Field(default=None, description="")
|
116
|
+
static_load: AmountRangeMass | None = pyd.Field(default=None, description="")
|
117
|
+
ventilated: bool | None = pyd.Field(default=None, description="At least 40% of the tray base is open to air flow")
|
118
|
+
cable_trays_material: list[CableTraysMaterial] | None = pyd.Field(default=None, description="")
|
119
|
+
|
120
|
+
|
121
|
+
class ElectricalBusesRangeV1(BaseOpenEpdHierarchicalSpec):
|
122
|
+
"""
|
123
|
+
Power distribution, in the form of busbars or of insulted ducts made of copper or aluminum busbars.
|
124
|
+
|
125
|
+
It is an alternative means of conducting electricity compared toto power cables or cable bus. Also called
|
126
|
+
bus ducts.
|
127
|
+
|
128
|
+
Range version.
|
129
|
+
"""
|
130
|
+
|
131
|
+
_EXT_VERSION = "1.0"
|
132
|
+
|
133
|
+
LowVoltBuses: LowVoltBusesRangeV1 | None = None
|
134
|
+
MedVoltBuses: MedVoltBusesRangeV1 | None = None
|
135
|
+
|
136
|
+
|
137
|
+
class FloorEquipmentBoxesRangeV1(BaseOpenEpdHierarchicalSpec):
|
138
|
+
"""
|
139
|
+
Equipment boxes for power or electronic equipment embedded in an accessible floor.
|
140
|
+
|
141
|
+
Range version.
|
142
|
+
"""
|
143
|
+
|
144
|
+
_EXT_VERSION = "1.0"
|
145
|
+
|
146
|
+
|
147
|
+
class PowerDistributionUnitsRangeV1(BaseOpenEpdHierarchicalSpec):
|
148
|
+
"""
|
149
|
+
Switched electrical distribution units placed very close to the point of consumption, for example inside a rack of electronic equipment.
|
150
|
+
|
151
|
+
Range version.
|
152
|
+
"""
|
153
|
+
|
154
|
+
_EXT_VERSION = "1.0"
|
155
|
+
|
156
|
+
|
157
|
+
class RacewaysRangeV1(BaseOpenEpdHierarchicalSpec):
|
158
|
+
"""
|
159
|
+
Mechanical guideways for eletrical communications cabling, typically embedded in an accessible floor.
|
160
|
+
|
161
|
+
Range version.
|
162
|
+
"""
|
163
|
+
|
164
|
+
_EXT_VERSION = "1.0"
|
165
|
+
|
166
|
+
width: AmountRangeLengthMm | None = pyd.Field(default=None, description="")
|
167
|
+
depth: AmountRangeLengthMm | None = pyd.Field(default=None, description="")
|
168
|
+
painted: bool | None = pyd.Field(default=None, description="")
|
169
|
+
divided: bool | None = pyd.Field(default=None, description="")
|
170
|
+
raceways_material: list[RacewaysMaterial] | None = pyd.Field(default=None, description="")
|
171
|
+
|
172
|
+
|
173
|
+
class FueledElectricalGeneratorsRangeV1(BaseOpenEpdHierarchicalSpec):
|
174
|
+
"""
|
175
|
+
Fueled electrical generators.
|
176
|
+
|
177
|
+
Range version.
|
178
|
+
"""
|
179
|
+
|
180
|
+
_EXT_VERSION = "1.0"
|
181
|
+
|
182
|
+
|
183
|
+
class OtherGenerationRangeV1(BaseOpenEpdHierarchicalSpec):
|
184
|
+
"""
|
185
|
+
Other generation.
|
186
|
+
|
187
|
+
Range version.
|
188
|
+
"""
|
189
|
+
|
190
|
+
_EXT_VERSION = "1.0"
|
191
|
+
|
192
|
+
|
193
|
+
class PhotovoltaicsRangeV1(BaseOpenEpdHierarchicalSpec):
|
194
|
+
"""
|
195
|
+
Solar photovoltaics, rated on a nameplate capacity basis.
|
196
|
+
|
197
|
+
Range version.
|
198
|
+
"""
|
199
|
+
|
200
|
+
_EXT_VERSION = "1.0"
|
201
|
+
|
202
|
+
|
203
|
+
class WindTurbinesRangeV1(BaseOpenEpdHierarchicalSpec):
|
204
|
+
"""
|
205
|
+
Wind generators, rated on a nameplate capacity basis.
|
206
|
+
|
207
|
+
Range version.
|
208
|
+
"""
|
209
|
+
|
210
|
+
_EXT_VERSION = "1.0"
|
211
|
+
|
212
|
+
|
213
|
+
class ElectricityFromPowerGridRangeV1(BaseOpenEpdHierarchicalSpec):
|
214
|
+
"""
|
215
|
+
Electrical energy drawn from a specific utility grid.
|
216
|
+
|
217
|
+
Range version.
|
218
|
+
"""
|
219
|
+
|
220
|
+
_EXT_VERSION = "1.0"
|
221
|
+
|
222
|
+
|
223
|
+
class ElectricityFromSpecificGeneratorRangeV1(BaseOpenEpdHierarchicalSpec):
|
224
|
+
"""
|
225
|
+
Electrical energy from a specific power plant, such as a wind farm using a specific type of turbine.
|
226
|
+
|
227
|
+
Range version.
|
228
|
+
"""
|
229
|
+
|
230
|
+
_EXT_VERSION = "1.0"
|
231
|
+
|
232
|
+
energy_source: list[EnergySource] | None = pyd.Field(default=None, description="")
|
233
|
+
|
234
|
+
|
235
|
+
class PowerPurchaseAgreementsRangeV1(BaseOpenEpdHierarchicalSpec):
|
236
|
+
"""
|
237
|
+
Electrical energy subject to a verified power purchase agreement.
|
238
|
+
|
239
|
+
The impact of electricity generation is allocated specifically to the agreement and not to the general grid.
|
240
|
+
|
241
|
+
Range version.
|
242
|
+
"""
|
243
|
+
|
244
|
+
_EXT_VERSION = "1.0"
|
245
|
+
|
246
|
+
energy_source: list[EnergySource] | None = pyd.Field(default=None, description="")
|
247
|
+
|
248
|
+
|
249
|
+
class LightbulbsRangeV1(BaseOpenEpdHierarchicalSpec):
|
250
|
+
"""
|
251
|
+
Various types of light bulbs, including LED, CFL, halogen, and incandescent.
|
252
|
+
|
253
|
+
Range version.
|
254
|
+
"""
|
255
|
+
|
256
|
+
_EXT_VERSION = "1.0"
|
257
|
+
|
258
|
+
|
259
|
+
class LightingControlsRangeV1(BaseOpenEpdHierarchicalSpec):
|
260
|
+
"""
|
261
|
+
Devices used to control the operation of lighting, including dimmers, sensors, and smart controls.
|
262
|
+
|
263
|
+
Range version.
|
264
|
+
"""
|
265
|
+
|
266
|
+
_EXT_VERSION = "1.0"
|
267
|
+
|
268
|
+
|
269
|
+
class LightingFixturesRangeV1(BaseOpenEpdHierarchicalSpec):
|
270
|
+
"""
|
271
|
+
Permanent lighting fixtures for interior spaces, including ceiling, wall-mounted, and pendant fixtures.
|
272
|
+
|
273
|
+
Range version.
|
274
|
+
"""
|
275
|
+
|
276
|
+
_EXT_VERSION = "1.0"
|
277
|
+
|
278
|
+
|
279
|
+
class OutdoorLightingRangeV1(BaseOpenEpdHierarchicalSpec):
|
280
|
+
"""
|
281
|
+
Lighting products designed for outdoor use, including landscape and security lighting.
|
282
|
+
|
283
|
+
Range version.
|
284
|
+
"""
|
285
|
+
|
286
|
+
_EXT_VERSION = "1.0"
|
287
|
+
|
288
|
+
|
289
|
+
class SpecialtyLightingRangeV1(BaseOpenEpdHierarchicalSpec):
|
290
|
+
"""
|
291
|
+
Specialized lighting for niche applications like emergency, medical, or theatrical lighting.
|
292
|
+
|
293
|
+
Range version.
|
294
|
+
"""
|
295
|
+
|
296
|
+
_EXT_VERSION = "1.0"
|
297
|
+
|
298
|
+
|
299
|
+
class TaskLightingRangeV1(BaseOpenEpdHierarchicalSpec):
|
300
|
+
"""
|
301
|
+
Lighting designed for specific tasks such as desk lamps, under-cabinet lighting, and reading lamps.
|
302
|
+
|
303
|
+
Range version.
|
304
|
+
"""
|
305
|
+
|
306
|
+
_EXT_VERSION = "1.0"
|
307
|
+
|
308
|
+
|
309
|
+
class ElectricalPowerStorageRangeV1(BaseOpenEpdHierarchicalSpec):
|
310
|
+
"""
|
311
|
+
Electrical Power Storage.
|
312
|
+
|
313
|
+
Range version.
|
314
|
+
"""
|
315
|
+
|
316
|
+
_EXT_VERSION = "1.0"
|
317
|
+
|
318
|
+
Batteries: BatteriesRangeV1 | None = None
|
319
|
+
OtherElectricalPowerStorage: OtherElectricalPowerStorageRangeV1 | None = None
|
320
|
+
|
321
|
+
|
322
|
+
class LowVoltageElectricalDistributionRangeV1(BaseOpenEpdHierarchicalSpec):
|
323
|
+
"""
|
324
|
+
Low Voltage Electrical Distribution.
|
325
|
+
|
326
|
+
Range version.
|
327
|
+
"""
|
328
|
+
|
329
|
+
_EXT_VERSION = "1.0"
|
330
|
+
|
331
|
+
CableTrays: CableTraysRangeV1 | None = None
|
332
|
+
ElectricalBuses: ElectricalBusesRangeV1 | None = None
|
333
|
+
FloorEquipmentBoxes: FloorEquipmentBoxesRangeV1 | None = None
|
334
|
+
PowerDistributionUnits: PowerDistributionUnitsRangeV1 | None = None
|
335
|
+
Raceways: RacewaysRangeV1 | None = None
|
336
|
+
|
337
|
+
|
338
|
+
class ElectricalGenerationEquipmentRangeV1(BaseOpenEpdHierarchicalSpec):
|
339
|
+
"""
|
340
|
+
Equipment for generating electrical power.
|
341
|
+
|
342
|
+
This category is primarily for smaller-scale. (e.g. on premises) generation, rather than utility-scale equipment.
|
343
|
+
|
344
|
+
Range version.
|
345
|
+
"""
|
346
|
+
|
347
|
+
_EXT_VERSION = "1.0"
|
348
|
+
|
349
|
+
FueledElectricalGenerators: FueledElectricalGeneratorsRangeV1 | None = None
|
350
|
+
OtherGeneration: OtherGenerationRangeV1 | None = None
|
351
|
+
Photovoltaics: PhotovoltaicsRangeV1 | None = None
|
352
|
+
WindTurbines: WindTurbinesRangeV1 | None = None
|
353
|
+
|
354
|
+
|
355
|
+
class ElectricPowerRangeV1(BaseOpenEpdHierarchicalSpec):
|
356
|
+
"""
|
357
|
+
Electrical energy drawn from a utility grid.
|
358
|
+
|
359
|
+
Range version.
|
360
|
+
"""
|
361
|
+
|
362
|
+
_EXT_VERSION = "1.0"
|
363
|
+
|
364
|
+
ElectricityFromPowerGrid: ElectricityFromPowerGridRangeV1 | None = None
|
365
|
+
ElectricityFromSpecificGenerator: ElectricityFromSpecificGeneratorRangeV1 | None = None
|
366
|
+
PowerPurchaseAgreements: PowerPurchaseAgreementsRangeV1 | None = None
|
367
|
+
|
368
|
+
|
369
|
+
class LightingRangeV1(BaseOpenEpdHierarchicalSpec):
|
370
|
+
"""
|
371
|
+
Lamps and lightbulbs and lamp components.
|
372
|
+
|
373
|
+
Range version.
|
374
|
+
"""
|
375
|
+
|
376
|
+
_EXT_VERSION = "1.0"
|
377
|
+
|
378
|
+
color_temperature: AmountRangeColorTemperature | None = pyd.Field(default=None, description="")
|
379
|
+
typical_utilization: str | None = pyd.Field(default=None, description="")
|
380
|
+
luminosity: AmountRangeLuminosity | None = pyd.Field(default=None, description="")
|
381
|
+
wattage: AmountRangePower | None = pyd.Field(default=None, description="")
|
382
|
+
color_rendering_index: RangeFloat | None = pyd.Field(default=None, description="")
|
383
|
+
dimmable: bool | None = pyd.Field(default=None, description="")
|
384
|
+
Lightbulbs: LightbulbsRangeV1 | None = None
|
385
|
+
LightingControls: LightingControlsRangeV1 | None = None
|
386
|
+
LightingFixtures: LightingFixturesRangeV1 | None = None
|
387
|
+
OutdoorLighting: OutdoorLightingRangeV1 | None = None
|
388
|
+
SpecialtyLighting: SpecialtyLightingRangeV1 | None = None
|
389
|
+
TaskLighting: TaskLightingRangeV1 | None = None
|
390
|
+
|
391
|
+
|
392
|
+
class ElectricalConduitRangeV1(BaseOpenEpdHierarchicalSpec):
|
393
|
+
"""
|
394
|
+
Tubing used to protect and route electrical wiring in a building or structure.
|
395
|
+
|
396
|
+
Range version.
|
397
|
+
"""
|
398
|
+
|
399
|
+
_EXT_VERSION = "1.1"
|
400
|
+
|
401
|
+
nominal_diameter: AmountRangeLengthMm | None = None
|
402
|
+
outer_diameter: AmountRangeLengthMm | None = None
|
403
|
+
inner_diameter: AmountRangeLengthMm | None = None
|
404
|
+
wall_thickness: AmountRangeLengthMm | None = None
|
405
|
+
material: list[ConduitMaterial] | None = None
|
406
|
+
|
407
|
+
|
408
|
+
class ElectricalRangeV1(BaseOpenEpdHierarchicalSpec):
|
409
|
+
"""
|
410
|
+
Electric power and equipment.
|
411
|
+
|
412
|
+
Range version.
|
413
|
+
"""
|
414
|
+
|
415
|
+
_EXT_VERSION = "1.1"
|
416
|
+
|
417
|
+
ElectricalPowerStorage: ElectricalPowerStorageRangeV1 | None = None
|
418
|
+
LowVoltageElectricalDistribution: LowVoltageElectricalDistributionRangeV1 | None = None
|
419
|
+
ElectricalGenerationEquipment: ElectricalGenerationEquipmentRangeV1 | None = None
|
420
|
+
ElectricPower: ElectricPowerRangeV1 | None = None
|
421
|
+
Lighting: LightingRangeV1 | None = None
|
422
|
+
ElectricalConduit: ElectricalConduitRangeV1 | None = None
|
@@ -0,0 +1,96 @@
|
|
1
|
+
#
|
2
|
+
# Copyright 2024 by C Change Labs Inc. www.c-change-labs.com
|
3
|
+
#
|
4
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
# you may not use this file except in compliance with the License.
|
6
|
+
# You may obtain a copy of the License at
|
7
|
+
#
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
#
|
10
|
+
# Unless required by applicable law or agreed to in writing, software
|
11
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
# See the License for the specific language governing permissions and
|
14
|
+
# limitations under the License.
|
15
|
+
#
|
16
|
+
__all__ = (
|
17
|
+
"AcTransformersRangeV1",
|
18
|
+
"ElectricalInsulatorsRangeV1",
|
19
|
+
"ElectricalSubstationsRangeV1",
|
20
|
+
"ElectricalSwitchgearRangeV1",
|
21
|
+
"PowerCablingRangeV1",
|
22
|
+
"ElectricalTransmissionAndDistributionEquipmentRangeV1",
|
23
|
+
)
|
24
|
+
|
25
|
+
# NB! This is a generated code. Do not edit it manually. Please see src/openepd/model/specs/README.md
|
26
|
+
|
27
|
+
|
28
|
+
from openepd.model.specs.base import BaseOpenEpdHierarchicalSpec
|
29
|
+
|
30
|
+
|
31
|
+
class AcTransformersRangeV1(BaseOpenEpdHierarchicalSpec):
|
32
|
+
"""
|
33
|
+
Equipment for transforming between higher and lower voltage AC power.
|
34
|
+
|
35
|
+
Range version.
|
36
|
+
"""
|
37
|
+
|
38
|
+
_EXT_VERSION = "1.0"
|
39
|
+
|
40
|
+
|
41
|
+
class ElectricalInsulatorsRangeV1(BaseOpenEpdHierarchicalSpec):
|
42
|
+
"""
|
43
|
+
Passive electrical isolation.
|
44
|
+
|
45
|
+
Range version.
|
46
|
+
"""
|
47
|
+
|
48
|
+
_EXT_VERSION = "1.0"
|
49
|
+
|
50
|
+
|
51
|
+
class ElectricalSubstationsRangeV1(BaseOpenEpdHierarchicalSpec):
|
52
|
+
"""
|
53
|
+
Electrical substations performance specification.
|
54
|
+
|
55
|
+
Range version.
|
56
|
+
"""
|
57
|
+
|
58
|
+
_EXT_VERSION = "1.0"
|
59
|
+
|
60
|
+
|
61
|
+
class ElectricalSwitchgearRangeV1(BaseOpenEpdHierarchicalSpec):
|
62
|
+
"""
|
63
|
+
Equipment for interrupting and controlling high-power electrical flows.
|
64
|
+
|
65
|
+
Used for protection, isolation, or control of electrical equipment.
|
66
|
+
|
67
|
+
Range version.
|
68
|
+
"""
|
69
|
+
|
70
|
+
_EXT_VERSION = "1.0"
|
71
|
+
|
72
|
+
|
73
|
+
class PowerCablingRangeV1(BaseOpenEpdHierarchicalSpec):
|
74
|
+
"""
|
75
|
+
High-voltage electrical cabling.
|
76
|
+
|
77
|
+
Range version.
|
78
|
+
"""
|
79
|
+
|
80
|
+
_EXT_VERSION = "1.0"
|
81
|
+
|
82
|
+
|
83
|
+
class ElectricalTransmissionAndDistributionEquipmentRangeV1(BaseOpenEpdHierarchicalSpec):
|
84
|
+
"""
|
85
|
+
Electrical Transmission & Distribution Equipment.
|
86
|
+
|
87
|
+
Range version.
|
88
|
+
"""
|
89
|
+
|
90
|
+
_EXT_VERSION = "1.0"
|
91
|
+
|
92
|
+
AcTransformers: AcTransformersRangeV1 | None = None
|
93
|
+
ElectricalInsulators: ElectricalInsulatorsRangeV1 | None = None
|
94
|
+
ElectricalSubstations: ElectricalSubstationsRangeV1 | None = None
|
95
|
+
ElectricalSwitchgear: ElectricalSwitchgearRangeV1 | None = None
|
96
|
+
PowerCabling: PowerCablingRangeV1 | None = None
|
@@ -0,0 +1,31 @@
|
|
1
|
+
#
|
2
|
+
# Copyright 2024 by C Change Labs Inc. www.c-change-labs.com
|
3
|
+
#
|
4
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
# you may not use this file except in compliance with the License.
|
6
|
+
# You may obtain a copy of the License at
|
7
|
+
#
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
#
|
10
|
+
# Unless required by applicable law or agreed to in writing, software
|
11
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
# See the License for the specific language governing permissions and
|
14
|
+
# limitations under the License.
|
15
|
+
#
|
16
|
+
__all__ = ("ElectricityRangeV1",)
|
17
|
+
|
18
|
+
# NB! This is a generated code. Do not edit it manually. Please see src/openepd/model/specs/README.md
|
19
|
+
|
20
|
+
|
21
|
+
from openepd.model.specs.base import BaseOpenEpdHierarchicalSpec
|
22
|
+
|
23
|
+
|
24
|
+
class ElectricityRangeV1(BaseOpenEpdHierarchicalSpec):
|
25
|
+
"""
|
26
|
+
Electrical equipment and components and supplies.
|
27
|
+
|
28
|
+
Range version.
|
29
|
+
"""
|
30
|
+
|
31
|
+
_EXT_VERSION = "1.0"
|