openepd 6.14.0__py3-none-any.whl → 6.15.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.
Files changed (60) hide show
  1. openepd/__version__.py +1 -1
  2. openepd/api/average_dataset/generic_estimate_sync_api.py +2 -1
  3. openepd/api/average_dataset/industry_epd_sync_api.py +2 -1
  4. openepd/api/base_sync_client.py +10 -8
  5. openepd/api/common.py +17 -11
  6. openepd/api/dto/common.py +1 -1
  7. openepd/api/epd/sync_api.py +2 -1
  8. openepd/bundle/base.py +5 -4
  9. openepd/bundle/reader.py +13 -7
  10. openepd/bundle/writer.py +11 -6
  11. openepd/compat/pydantic.py +1 -1
  12. openepd/m49/__init__.py +2 -0
  13. openepd/m49/const.py +1 -1
  14. openepd/m49/utils.py +16 -10
  15. openepd/model/base.py +19 -15
  16. openepd/model/common.py +22 -19
  17. openepd/model/declaration.py +2 -2
  18. openepd/model/epd.py +2 -1
  19. openepd/model/factory.py +5 -3
  20. openepd/model/lcia.py +7 -6
  21. openepd/model/org.py +6 -3
  22. openepd/model/pcr.py +2 -2
  23. openepd/model/specs/__init__.py +36 -0
  24. openepd/model/specs/asphalt.py +3 -3
  25. openepd/model/specs/base.py +2 -1
  26. openepd/model/specs/enums.py +695 -695
  27. openepd/model/specs/range/accessories.py +1 -1
  28. openepd/model/specs/range/aluminium.py +1 -1
  29. openepd/model/specs/range/cladding.py +10 -10
  30. openepd/model/specs/range/cmu.py +0 -3
  31. openepd/model/specs/range/concrete.py +1 -1
  32. openepd/model/specs/range/conveying_equipment.py +2 -2
  33. openepd/model/specs/range/electrical.py +18 -18
  34. openepd/model/specs/range/electrical_transmission_and_distribution_equipment.py +1 -1
  35. openepd/model/specs/range/finishes.py +16 -16
  36. openepd/model/specs/range/fire_and_smoke_protection.py +3 -3
  37. openepd/model/specs/range/furnishings.py +7 -7
  38. openepd/model/specs/range/manufacturing_inputs.py +4 -4
  39. openepd/model/specs/range/masonry.py +1 -1
  40. openepd/model/specs/range/mechanical.py +6 -6
  41. openepd/model/specs/range/network_infrastructure.py +3 -3
  42. openepd/model/specs/range/openings.py +17 -17
  43. openepd/model/specs/range/other_materials.py +4 -4
  44. openepd/model/specs/range/plumbing.py +5 -5
  45. openepd/model/specs/range/precast_concrete.py +2 -2
  46. openepd/model/specs/range/steel.py +16 -11
  47. openepd/model/specs/range/thermal_moisture_protection.py +12 -12
  48. openepd/model/specs/range/wood.py +4 -7
  49. openepd/model/specs/singular/__init__.py +109 -1
  50. openepd/model/specs/singular/aluminium.py +2 -1
  51. openepd/model/specs/singular/steel.py +10 -2
  52. openepd/model/validation/common.py +10 -6
  53. openepd/model/validation/enum.py +4 -2
  54. openepd/model/validation/quantity.py +8 -1
  55. openepd/model/versioning.py +8 -6
  56. openepd/patch_pydantic.py +2 -1
  57. {openepd-6.14.0.dist-info → openepd-6.15.0.dist-info}/METADATA +1 -3
  58. {openepd-6.14.0.dist-info → openepd-6.15.0.dist-info}/RECORD +60 -60
  59. {openepd-6.14.0.dist-info → openepd-6.15.0.dist-info}/WHEEL +1 -1
  60. {openepd-6.14.0.dist-info → openepd-6.15.0.dist-info}/LICENSE +0 -0
@@ -14,12 +14,12 @@
14
14
  # limitations under the License.
15
15
  #
16
16
  __all__ = (
17
+ "AccessoriesRangeV1",
17
18
  "BlanketFacingRangeV1",
18
19
  "DoorsHardwareRangeV1",
19
20
  "FlooringAccessoriesRangeV1",
20
21
  "MortarRangeV1",
21
22
  "TileGroutRangeV1",
22
- "AccessoriesRangeV1",
23
23
  )
24
24
 
25
25
  # NB! This is a generated code. Do not edit it manually. Please see src/openepd/model/specs/README.md
@@ -16,9 +16,9 @@
16
16
  __all__ = (
17
17
  "AluminiumBilletsRangeV1",
18
18
  "AluminiumExtrusionsRangeV1",
19
+ "AluminiumRangeV1",
19
20
  "AluminiumSheetGoodsRangeV1",
20
21
  "AluminiumSuspensionAssemblyRangeV1",
21
- "AluminiumRangeV1",
22
22
  )
23
23
 
24
24
  # NB! This is a generated code. Do not edit it manually. Please see src/openepd/model/specs/README.md
@@ -15,24 +15,24 @@
15
15
  #
16
16
  __all__ = (
17
17
  "AluminiumSidingRangeV1",
18
- "SteelSidingRangeV1",
19
- "ZincSidingRangeV1",
20
- "ShingleAndShakeSidingRangeV1",
21
- "MetalSidingRangeV1",
18
+ "CladdingRangeV1",
22
19
  "CompositionSidingRangeV1",
23
20
  "FiberCementSidingRangeV1",
21
+ "InsulatedRoofPanelsRangeV1",
24
22
  "InsulatedVinylSidingRangeV1",
23
+ "InsulatedWallPanelsRangeV1",
24
+ "MetalSidingRangeV1",
25
25
  "PlywoodSidingRangeV1",
26
26
  "PolypropyleneSidingRangeV1",
27
- "SolidWoodSidingRangeV1",
28
- "VinylSidingRangeV1",
29
- "SidingRangeV1",
30
- "InsulatedRoofPanelsRangeV1",
31
- "InsulatedWallPanelsRangeV1",
32
27
  "RoofPanelsRangeV1",
28
+ "ShingleAndShakeSidingRangeV1",
29
+ "SidingRangeV1",
30
+ "SolidWoodSidingRangeV1",
31
+ "SteelSidingRangeV1",
33
32
  "StoneCladdingRangeV1",
33
+ "VinylSidingRangeV1",
34
34
  "WallPanelsRangeV1",
35
- "CladdingRangeV1",
35
+ "ZincSidingRangeV1",
36
36
  )
37
37
 
38
38
  # NB! This is a generated code. Do not edit it manually. Please see src/openepd/model/specs/README.md
@@ -17,9 +17,6 @@ __all__ = ("CMURangeV1",)
17
17
 
18
18
  # NB! This is a generated code. Do not edit it manually. Please see src/openepd/model/specs/README.md
19
19
 
20
-
21
- from builtins import float
22
-
23
20
  from openepd.compat.pydantic import pyd
24
21
  from openepd.model.specs.base import BaseOpenEpdHierarchicalSpec
25
22
  from openepd.model.specs.enums import CmuBlockType, CmuWeightClassification
@@ -16,11 +16,11 @@
16
16
  __all__ = (
17
17
  "CementGroutRangeV1",
18
18
  "ConcretePavingRangeV1",
19
+ "ConcreteRangeV1",
19
20
  "FlowableFillRangeV1",
20
21
  "OilPatchRangeV1",
21
22
  "ReadyMixRangeV1",
22
23
  "ShotcreteRangeV1",
23
- "ConcreteRangeV1",
24
24
  )
25
25
 
26
26
  # NB! This is a generated code. Do not edit it manually. Please see src/openepd/model/specs/README.md
@@ -14,9 +14,9 @@
14
14
  # limitations under the License.
15
15
  #
16
16
  __all__ = (
17
- "EscalatorsRangeV1",
18
- "ElevatorsRangeV1",
19
17
  "ConveyingEquipmentRangeV1",
18
+ "ElevatorsRangeV1",
19
+ "EscalatorsRangeV1",
20
20
  )
21
21
 
22
22
  # NB! This is a generated code. Do not edit it manually. Please see src/openepd/model/specs/README.md
@@ -14,35 +14,35 @@
14
14
  # limitations under the License.
15
15
  #
16
16
  __all__ = (
17
- "LowVoltBusesRangeV1",
18
- "MedVoltBusesRangeV1",
19
17
  "BatteriesRangeV1",
20
- "OtherElectricalPowerStorageRangeV1",
21
18
  "CableTraysRangeV1",
19
+ "ElectricPowerRangeV1",
22
20
  "ElectricalBusesRangeV1",
23
- "FloorEquipmentBoxesRangeV1",
24
- "PowerDistributionUnitsRangeV1",
25
- "RacewaysRangeV1",
26
- "FueledElectricalGeneratorsRangeV1",
27
- "OtherGenerationRangeV1",
28
- "PhotovoltaicsRangeV1",
29
- "WindTurbinesRangeV1",
21
+ "ElectricalConduitRangeV1",
22
+ "ElectricalGenerationEquipmentRangeV1",
23
+ "ElectricalPowerStorageRangeV1",
24
+ "ElectricalRangeV1",
30
25
  "ElectricityFromPowerGridRangeV1",
31
26
  "ElectricityFromSpecificGeneratorRangeV1",
32
- "PowerPurchaseAgreementsRangeV1",
27
+ "FloorEquipmentBoxesRangeV1",
28
+ "FueledElectricalGeneratorsRangeV1",
33
29
  "LightbulbsRangeV1",
34
30
  "LightingControlsRangeV1",
35
31
  "LightingFixturesRangeV1",
32
+ "LightingRangeV1",
33
+ "LowVoltBusesRangeV1",
34
+ "LowVoltageElectricalDistributionRangeV1",
35
+ "MedVoltBusesRangeV1",
36
+ "OtherElectricalPowerStorageRangeV1",
37
+ "OtherGenerationRangeV1",
36
38
  "OutdoorLightingRangeV1",
39
+ "PhotovoltaicsRangeV1",
40
+ "PowerDistributionUnitsRangeV1",
41
+ "PowerPurchaseAgreementsRangeV1",
42
+ "RacewaysRangeV1",
37
43
  "SpecialtyLightingRangeV1",
38
44
  "TaskLightingRangeV1",
39
- "ElectricalPowerStorageRangeV1",
40
- "LowVoltageElectricalDistributionRangeV1",
41
- "ElectricalGenerationEquipmentRangeV1",
42
- "ElectricPowerRangeV1",
43
- "LightingRangeV1",
44
- "ElectricalConduitRangeV1",
45
- "ElectricalRangeV1",
45
+ "WindTurbinesRangeV1",
46
46
  )
47
47
 
48
48
  # NB! This is a generated code. Do not edit it manually. Please see src/openepd/model/specs/README.md
@@ -18,8 +18,8 @@ __all__ = (
18
18
  "ElectricalInsulatorsRangeV1",
19
19
  "ElectricalSubstationsRangeV1",
20
20
  "ElectricalSwitchgearRangeV1",
21
- "PowerCablingRangeV1",
22
21
  "ElectricalTransmissionAndDistributionEquipmentRangeV1",
22
+ "PowerCablingRangeV1",
23
23
  )
24
24
 
25
25
  # NB! This is a generated code. Do not edit it manually. Please see src/openepd/model/specs/README.md
@@ -15,33 +15,33 @@
15
15
  #
16
16
  __all__ = (
17
17
  "AccessFlooringRangeV1",
18
- "CarpetRangeV1",
19
- "LaminateRangeV1",
20
- "OtherFlooringRangeV1",
21
- "ResilientFlooringRangeV1",
22
- "WallBaseRangeV1",
23
- "WoodFlooringRangeV1",
24
18
  "AcousticalCeilingsRangeV1",
25
- "CeramicTileRangeV1",
26
- "GaugedTileRangeV1",
27
- "GlassTileRangeV1",
28
- "GypsumSupportsRangeV1",
29
- "FlooringRangeV1",
30
- "CeilingPanelRangeV1",
31
19
  "BackingAndUnderlayRangeV1",
20
+ "CarpetRangeV1",
21
+ "CeilingPanelRangeV1",
32
22
  "CementBoardRangeV1",
33
- "TilingRangeV1",
23
+ "CeramicTileRangeV1",
34
24
  "DeckingBoardsRangeV1",
25
+ "FinishesRangeV1",
26
+ "FlooringRangeV1",
27
+ "GaugedTileRangeV1",
35
28
  "GlassFiberReinforcedGypsumFabricationsRangeV1",
29
+ "GlassTileRangeV1",
36
30
  "GypsumRangeV1",
31
+ "GypsumSupportsRangeV1",
32
+ "LaminateRangeV1",
37
33
  "MirrorsRangeV1",
34
+ "OtherFlooringRangeV1",
35
+ "PaintByAreaRangeV1",
38
36
  "PaintByMassRangeV1",
39
37
  "PaintByVolumeRangeV1",
40
- "PaintByAreaRangeV1",
41
38
  "PaintingAndCoatingRangeV1",
42
- "WallFinishesRangeV1",
43
39
  "PlasterRangeV1",
44
- "FinishesRangeV1",
40
+ "ResilientFlooringRangeV1",
41
+ "TilingRangeV1",
42
+ "WallBaseRangeV1",
43
+ "WallFinishesRangeV1",
44
+ "WoodFlooringRangeV1",
45
45
  )
46
46
 
47
47
  # NB! This is a generated code. Do not edit it manually. Please see src/openepd/model/specs/README.md
@@ -14,11 +14,11 @@
14
14
  # limitations under the License.
15
15
  #
16
16
  __all__ = (
17
- "IntumescentFireproofingRangeV1",
18
- "SprayFireproofingRangeV1",
19
17
  "AppliedFireproofingRangeV1",
20
- "FirestoppingRangeV1",
21
18
  "FireAndSmokeProtectionRangeV1",
19
+ "FirestoppingRangeV1",
20
+ "IntumescentFireproofingRangeV1",
21
+ "SprayFireproofingRangeV1",
22
22
  )
23
23
 
24
24
  # NB! This is a generated code. Do not edit it manually. Please see src/openepd/model/specs/README.md
@@ -14,22 +14,22 @@
14
14
  # limitations under the License.
15
15
  #
16
16
  __all__ = (
17
- "DemountablePartitionTrackRangeV1",
18
17
  "ChairsRangeV1",
18
+ "ClosedStorageFurnitureRangeV1",
19
19
  "CountertopsRangeV1",
20
+ "DemountablePartitionTrackRangeV1",
20
21
  "DemountablePartitionsRangeV1",
21
- "OtherFurnishingsRangeV1",
22
- "OpenStorageFurnitureRangeV1",
23
- "ClosedStorageFurnitureRangeV1",
24
- "RetractableStorageFurnitureRangeV1",
22
+ "FurnishingsRangeV1",
25
23
  "MobileStorageFurnitureRangeV1",
26
- "WallMountedStorageShelvingRangeV1",
24
+ "OpenStorageFurnitureRangeV1",
25
+ "OtherFurnishingsRangeV1",
27
26
  "OtherStorageFurnitureRangeV1",
27
+ "RetractableStorageFurnitureRangeV1",
28
28
  "StorageFurnitureRangeV1",
29
29
  "TablesRangeV1",
30
+ "WallMountedStorageShelvingRangeV1",
30
31
  "WorkSurfacesRangeV1",
31
32
  "WorkspacesRangeV1",
32
- "FurnishingsRangeV1",
33
33
  )
34
34
 
35
35
  # NB! This is a generated code. Do not edit it manually. Please see src/openepd/model/specs/README.md
@@ -14,16 +14,16 @@
14
14
  # limitations under the License.
15
15
  #
16
16
  __all__ = (
17
- "CementRangeV1",
18
- "MasonryCementRangeV1",
19
- "SupplementaryCementitiousMaterialsRangeV1",
20
17
  "AccessFlooringPedestalsRangeV1",
21
18
  "CarpetBackingRangeV1",
22
19
  "CarpetFiberRangeV1",
20
+ "CementRangeV1",
23
21
  "CementitiousMaterialsRangeV1",
24
22
  "ConcreteAdmixturesRangeV1",
25
- "TextilesRangeV1",
26
23
  "ManufacturingInputsRangeV1",
24
+ "MasonryCementRangeV1",
25
+ "SupplementaryCementitiousMaterialsRangeV1",
26
+ "TextilesRangeV1",
27
27
  )
28
28
 
29
29
  # NB! This is a generated code. Do not edit it manually. Please see src/openepd/model/specs/README.md
@@ -14,9 +14,9 @@
14
14
  # limitations under the License.
15
15
  #
16
16
  __all__ = (
17
- "GMURangeV1",
18
17
  "AutoclavedAeratedConcreteRangeV1",
19
18
  "BrickRangeV1",
19
+ "GMURangeV1",
20
20
  "MasonryRangeV1",
21
21
  )
22
22
 
@@ -14,21 +14,21 @@
14
14
  # limitations under the License.
15
15
  #
16
16
  __all__ = (
17
- "HvacVrfControlRangeV1",
18
- "HvacVrfIndoorRangeV1",
19
- "HvacVrfOutdoorRangeV1",
17
+ "HvacAHUsRangeV1",
20
18
  "HvacAirDiffusersRangeV1",
21
19
  "HvacAirFiltersRangeV1",
22
- "HvacAHUsRangeV1",
23
20
  "HvacBoilersRangeV1",
24
21
  "HvacChillersRangeV1",
22
+ "HvacDuctsRangeV1",
25
23
  "HvacFansRangeV1",
26
- "HvacHeatPumpsRangeV1",
27
24
  "HvacHeatExRangeV1",
25
+ "HvacHeatPumpsRangeV1",
28
26
  "HvacPumpsRangeV1",
29
27
  "HvacRTUsRangeV1",
28
+ "HvacVrfControlRangeV1",
29
+ "HvacVrfIndoorRangeV1",
30
+ "HvacVrfOutdoorRangeV1",
30
31
  "HvacVrfSystemsRangeV1",
31
- "HvacDuctsRangeV1",
32
32
  "MechanicalRangeV1",
33
33
  )
34
34
 
@@ -14,14 +14,14 @@
14
14
  # limitations under the License.
15
15
  #
16
16
  __all__ = (
17
- "PDURangeV1",
18
17
  "CabinetsRacksAndEnclosuresRangeV1",
18
+ "CommunicationsConduitRangeV1",
19
19
  "DataCablingRangeV1",
20
20
  "FloorBoxesAndAccessoriesRangeV1",
21
+ "NetworkInfrastructureRangeV1",
21
22
  "NetworkingCableTraysRangeV1",
22
23
  "NetworkingRacewaysRangeV1",
23
- "CommunicationsConduitRangeV1",
24
- "NetworkInfrastructureRangeV1",
24
+ "PDURangeV1",
25
25
  )
26
26
 
27
27
  # NB! This is a generated code. Do not edit it manually. Please see src/openepd/model/specs/README.md
@@ -14,34 +14,34 @@
14
14
  # limitations under the License.
15
15
  #
16
16
  __all__ = (
17
- "PanelDoorsRangeV1",
18
- "PressureResistantDoorsRangeV1",
19
- "SpecialFunctionDoorsRangeV1",
20
- "SlidingGlassDoorsRangeV1",
17
+ "CurtainWallsRangeV1",
18
+ "DoorsAndFramesRangeV1",
19
+ "EntrancesRangeV1",
21
20
  "FenestrationAccessoriesRangeV1",
22
21
  "FenestrationFramingRangeV1",
23
22
  "FenestrationHardwareRangeV1",
23
+ "FenestrationPartsRangeV1",
24
24
  "FlatGlassPanesRangeV1",
25
- "ProcessedNonInsulatingGlassPanesRangeV1",
25
+ "GlassPanesRangeV1",
26
26
  "GlazedDoorsRangeV1",
27
- "UnitSkylightsRangeV1",
28
- "WindowsRangeV1",
27
+ "GlazingRangeV1",
28
+ "InsulatingGlazingUnitsRangeV1",
29
29
  "IntegratedDoorsOpeningAssembliesRangeV1",
30
30
  "MetalDoorAndFramesRangeV1",
31
- "SpecialtyDoorsAndFramesRangeV1",
32
- "WoodDoorsRangeV1",
33
- "FenestrationPartsRangeV1",
34
- "GlassPanesRangeV1",
35
31
  "NAFSFenestrationRangeV1",
36
- "InsulatingGlazingUnitsRangeV1",
37
- "CurtainWallsRangeV1",
38
- "DoorsAndFramesRangeV1",
39
- "EntrancesRangeV1",
40
- "GlazingRangeV1",
32
+ "OpeningsRangeV1",
33
+ "PanelDoorsRangeV1",
34
+ "PressureResistantDoorsRangeV1",
35
+ "ProcessedNonInsulatingGlassPanesRangeV1",
36
+ "SlidingGlassDoorsRangeV1",
37
+ "SpecialFunctionDoorsRangeV1",
38
+ "SpecialtyDoorsAndFramesRangeV1",
41
39
  "StorefrontsRangeV1",
42
40
  "TranslucentWallAndRoofAssembliesRangeV1",
41
+ "UnitSkylightsRangeV1",
43
42
  "WindowWallAssembliesRangeV1",
44
- "OpeningsRangeV1",
43
+ "WindowsRangeV1",
44
+ "WoodDoorsRangeV1",
45
45
  )
46
46
 
47
47
  # NB! This is a generated code. Do not edit it manually. Please see src/openepd/model/specs/README.md
@@ -17,17 +17,17 @@ __all__ = (
17
17
  "AuxiliariesRangeV1",
18
18
  "CleaningProductsRangeV1",
19
19
  "ClothingRangeV1",
20
- "FoodBeverageRangeV1",
21
- "TransportationInfrastructureRangeV1",
22
- "UnsupportedRangeV1",
23
20
  "CopperRangeV1",
24
21
  "EarthworkRangeV1",
25
22
  "ExteriorSunControlDevicesRangeV1",
23
+ "FoodBeverageRangeV1",
26
24
  "GypsumFinishingCompoundsRangeV1",
25
+ "OtherMaterialsRangeV1",
27
26
  "ProfilesRangeV1",
27
+ "TransportationInfrastructureRangeV1",
28
28
  "UnknownRangeV1",
29
+ "UnsupportedRangeV1",
29
30
  "ZincRangeV1",
30
- "OtherMaterialsRangeV1",
31
31
  )
32
32
 
33
33
  # NB! This is a generated code. Do not edit it manually. Please see src/openepd/model/specs/README.md
@@ -16,17 +16,17 @@
16
16
  __all__ = (
17
17
  "BathtubsRangeV1",
18
18
  "FaucetsRangeV1",
19
- "OtherPlumbingFixturesRangeV1",
20
- "WaterClosetsRangeV1",
21
19
  "FireProtectionPipingRangeV1",
22
20
  "FireSprinklersRangeV1",
23
- "StorageTanksRangeV1",
24
- "WaterHeatersRangeV1",
25
- "PlumbingFixturesRangeV1",
26
21
  "FireSuppressionRangeV1",
22
+ "OtherPlumbingFixturesRangeV1",
27
23
  "PipingRangeV1",
28
24
  "PlumbingEquipmentRangeV1",
25
+ "PlumbingFixturesRangeV1",
29
26
  "PlumbingRangeV1",
27
+ "StorageTanksRangeV1",
28
+ "WaterClosetsRangeV1",
29
+ "WaterHeatersRangeV1",
30
30
  )
31
31
 
32
32
  # NB! This is a generated code. Do not edit it manually. Please see src/openepd/model/specs/README.md
@@ -15,10 +15,10 @@
15
15
  #
16
16
  __all__ = (
17
17
  "ArchitecturalPrecastRangeV1",
18
- "StructuralPrecastRangeV1",
19
- "UtilityUndergroundPrecastRangeV1",
20
18
  "CivilPrecastRangeV1",
21
19
  "PrecastConcreteRangeV1",
20
+ "StructuralPrecastRangeV1",
21
+ "UtilityUndergroundPrecastRangeV1",
22
22
  )
23
23
 
24
24
  # NB! This is a generated code. Do not edit it manually. Please see src/openepd/model/specs/README.md
@@ -14,29 +14,27 @@
14
14
  # limitations under the License.
15
15
  #
16
16
  __all__ = (
17
+ "CoilSteelRangeV1",
17
18
  "ColdFormedFramingRangeV1",
19
+ "ColdFormedSteelRangeV1",
18
20
  "DeckingSteelRangeV1",
19
- "SteelSuspensionAssemblyRangeV1",
20
21
  "HollowSectionsRangeV1",
21
22
  "HotRolledSectionsRangeV1",
22
- "PlateSteelRangeV1",
23
+ "MBQSteelRangeV1",
23
24
  "MetalRailingsRangeV1",
24
25
  "MetalStairsRangeV1",
25
26
  "MiscMetalFabricationRangeV1",
26
27
  "OpenWebMembranesRangeV1",
27
- "MBQSteelRangeV1",
28
- "CoilSteelRangeV1",
29
- "ColdFormedSteelRangeV1",
30
- "StructuralSteelRangeV1",
31
- "PrefabricatedSteelAssembliesRangeV1",
28
+ "PlateSteelRangeV1",
32
29
  "PostTensioningSteelRangeV1",
30
+ "PrefabricatedSteelAssembliesRangeV1",
33
31
  "RebarSteelRangeV1",
34
- "WireMeshSteelRangeV1",
35
32
  "SteelRangeV1",
33
+ "SteelSuspensionAssemblyRangeV1",
34
+ "StructuralSteelRangeV1",
35
+ "WireMeshSteelRangeV1",
36
36
  )
37
37
 
38
- # NB! This is a generated code. Do not edit it manually. Please see src/openepd/model/specs/README.md
39
-
40
38
 
41
39
  from openepd.compat.pydantic import pyd
42
40
  from openepd.model.common import RangeFloat, RangeRatioFloat
@@ -306,6 +304,12 @@ class OtherSteelRangeV1(BaseOpenEpdHierarchicalSpec):
306
304
  _EXT_VERSION = "1.0"
307
305
 
308
306
 
307
+ class CurdeSteelRangeV1(BaseOpenEpdHierarchicalSpec):
308
+ """Curde steel products."""
309
+
310
+ _EXT_VERSION = "1.0"
311
+
312
+
309
313
  class SteelRangeV1(BaseOpenEpdHierarchicalSpec):
310
314
  """
311
315
  Broad category for construction materials made from steel and its alloys.
@@ -313,7 +317,7 @@ class SteelRangeV1(BaseOpenEpdHierarchicalSpec):
313
317
  Range version.
314
318
  """
315
319
 
316
- _EXT_VERSION = "1.1"
320
+ _EXT_VERSION = "1.2"
317
321
 
318
322
  yield_tensile_str: AmountRangePressureMpa | None = pyd.Field(
319
323
  default=None,
@@ -347,3 +351,4 @@ class SteelRangeV1(BaseOpenEpdHierarchicalSpec):
347
351
  RebarSteel: RebarSteelRangeV1 | None = None
348
352
  WireMeshSteel: WireMeshSteelRangeV1 | None = None
349
353
  OtherSteel: OtherSteelRangeV1 | None = None
354
+ CrudeSteel: CurdeSteelRangeV1 | None = None
@@ -14,28 +14,28 @@
14
14
  # limitations under the License.
15
15
  #
16
16
  __all__ = (
17
+ "AirBarriersRangeV1",
17
18
  "BituminousRoofingRangeV1",
18
- "SinglePlyEPDMRangeV1",
19
- "SinglePlyKEERangeV1",
20
- "SinglePlyOtherRangeV1",
21
- "SinglePlyPolyurethaneRangeV1",
22
- "SinglePlyPVCRangeV1",
23
- "SinglePlyTPORangeV1",
24
19
  "BlanketInsulationRangeV1",
25
20
  "BlownInsulationRangeV1",
26
21
  "BoardInsulationRangeV1",
27
- "FoamedInPlaceRangeV1",
28
- "SprayedInsulationRangeV1",
29
- "AirBarriersRangeV1",
30
- "MembraneRoofingRangeV1",
31
- "InsulationRangeV1",
32
22
  "DampproofingAndWaterproofingRangeV1",
33
23
  "FlashingAndSheetMetalRangeV1",
24
+ "FoamedInPlaceRangeV1",
25
+ "InsulationRangeV1",
34
26
  "JointProtectionRangeV1",
27
+ "MembraneRoofingRangeV1",
35
28
  "RoofCoverBoardsRangeV1",
29
+ "SinglePlyEPDMRangeV1",
30
+ "SinglePlyKEERangeV1",
31
+ "SinglePlyOtherRangeV1",
32
+ "SinglePlyPVCRangeV1",
33
+ "SinglePlyPolyurethaneRangeV1",
34
+ "SinglePlyTPORangeV1",
35
+ "SprayedInsulationRangeV1",
36
36
  "SteepSlopeRoofingRangeV1",
37
- "WeatherBarriersRangeV1",
38
37
  "ThermalMoistureProtectionRangeV1",
38
+ "WeatherBarriersRangeV1",
39
39
  )
40
40
 
41
41
  # NB! This is a generated code. Do not edit it manually. Please see src/openepd/model/specs/README.md
@@ -14,26 +14,23 @@
14
14
  # limitations under the License.
15
15
  #
16
16
  __all__ = (
17
- "WoodDeckingRangeV1",
18
- "WoodFramingRangeV1",
19
- "PrefabricatedWoodInsulatedPanelsRangeV1",
20
- "PrefabricatedWoodTrussRangeV1",
21
17
  "CompositeLumberRangeV1",
22
18
  "DimensionLumberRangeV1",
23
19
  "HeavyTimberRangeV1",
24
20
  "MassTimberRangeV1",
25
21
  "NonStructuralWoodRangeV1",
22
+ "PrefabricatedWoodInsulatedPanelsRangeV1",
26
23
  "PrefabricatedWoodRangeV1",
24
+ "PrefabricatedWoodTrussRangeV1",
27
25
  "SheathingPanelsRangeV1",
28
26
  "UnfinishedWoodRangeV1",
27
+ "WoodDeckingRangeV1",
28
+ "WoodFramingRangeV1",
29
29
  "WoodRangeV1",
30
30
  )
31
31
 
32
32
  # NB! This is a generated code. Do not edit it manually. Please see src/openepd/model/specs/README.md
33
33
 
34
-
35
- from builtins import float
36
-
37
34
  from openepd.compat.pydantic import pyd
38
35
  from openepd.model.org import OrgRef
39
36
  from openepd.model.specs.base import BaseOpenEpdHierarchicalSpec