openepd 4.6.0__py3-none-any.whl → 4.6.1__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/base.py +2 -2
- openepd/model/epd.py +7 -5
- openepd/model/generic_estimate.py +7 -3
- {openepd-4.6.0.dist-info → openepd-4.6.1.dist-info}/METADATA +1 -1
- {openepd-4.6.0.dist-info → openepd-4.6.1.dist-info}/RECORD +8 -8
- {openepd-4.6.0.dist-info → openepd-4.6.1.dist-info}/LICENSE +0 -0
- {openepd-4.6.0.dist-info → openepd-4.6.1.dist-info}/WHEEL +0 -0
openepd/__version__.py
CHANGED
openepd/model/base.py
CHANGED
@@ -16,7 +16,7 @@
|
|
16
16
|
import abc
|
17
17
|
from enum import StrEnum
|
18
18
|
import json
|
19
|
-
from typing import Any, Callable, Generic, Optional, Type, TypeAlias, TypeVar
|
19
|
+
from typing import Any, Callable, ClassVar, Generic, Optional, Type, TypeAlias, TypeVar
|
20
20
|
|
21
21
|
from openepd.compat.pydantic import pyd, pyd_generics
|
22
22
|
from openepd.model.validation.common import validate_version_compatibility, validate_version_format
|
@@ -177,7 +177,7 @@ TOpenEpdObjectClass = TypeVar("TOpenEpdObjectClass", bound=Type[BaseOpenEpdSchem
|
|
177
177
|
class RootDocument(abc.ABC, BaseOpenEpdSchema):
|
178
178
|
"""Base class for all objects representing openEPD root element. E.g. Epd, IndustryEpd, GenericEstimate, etc."""
|
179
179
|
|
180
|
-
_FORMAT_VERSION: str
|
180
|
+
_FORMAT_VERSION: ClassVar[str]
|
181
181
|
"""Version of this document format. Must be defined in the concrete class."""
|
182
182
|
|
183
183
|
doctype: str = pyd.Field(
|
openepd/model/epd.py
CHANGED
@@ -20,7 +20,7 @@ from openepd.model.base import BaseDocumentFactory, OpenEpdDoctypes
|
|
20
20
|
from openepd.model.common import Amount, Ingredient, WithAltIdsMixin, WithAttachmentsMixin
|
21
21
|
from openepd.model.declaration import BaseDeclaration
|
22
22
|
from openepd.model.lcia import WithLciaMixin
|
23
|
-
from openepd.model.org import Org,
|
23
|
+
from openepd.model.org import Org, Plant
|
24
24
|
from openepd.model.specs import Specs
|
25
25
|
from openepd.model.versioning import OpenEpdVersions, Version
|
26
26
|
|
@@ -66,8 +66,8 @@ class EpdPreviewV0(WithAttachmentsMixin, WithAltIdsMixin, BaseDeclaration, title
|
|
66
66
|
description="Link to data object on original registrar's site",
|
67
67
|
example="https://epd-online.com/EmbeddedEpdList/Download/6029",
|
68
68
|
)
|
69
|
-
manufacturer:
|
70
|
-
epd_developer:
|
69
|
+
manufacturer: Org | None = pyd.Field(description=MANUFACTURER_DESCRIPTION)
|
70
|
+
epd_developer: Org | None = pyd.Field(
|
71
71
|
description=DEVELOPER_DESCRIPTION,
|
72
72
|
default=None,
|
73
73
|
)
|
@@ -82,14 +82,14 @@ class EpdPreviewV0(WithAttachmentsMixin, WithAltIdsMixin, BaseDeclaration, title
|
|
82
82
|
description="List of object(s) for one or more plant(s) that this declaration applies to.",
|
83
83
|
default_factory=list,
|
84
84
|
)
|
85
|
-
program_operator:
|
85
|
+
program_operator: Org | None = pyd.Field(description=PROGRAM_OPERATOR_DESCRIPTION)
|
86
86
|
program_operator_doc_id: str | None = pyd.Field(
|
87
87
|
max_length=200, description="Document identifier from Program Operator.", example="123-456.789/b"
|
88
88
|
)
|
89
89
|
program_operator_version: str | None = pyd.Field(
|
90
90
|
max_length=200, description="Document version number from Program Operator.", example="4.3.0"
|
91
91
|
)
|
92
|
-
third_party_verifier:
|
92
|
+
third_party_verifier: Org | None = pyd.Field(description=THIRD_PARTY_VERIFIER_DESCRIPTION)
|
93
93
|
third_party_verification_url: pyd.AnyUrl | None = pyd.Field(
|
94
94
|
description="Optional link to a verification statement.",
|
95
95
|
example="https://we-verify-epds.com/en/letters/123-456.789b.pdf",
|
@@ -204,6 +204,8 @@ class EpdWithDepsV0(EpdV0, title="EPD (with Dependencies)"):
|
|
204
204
|
Expanded version of the EPD.
|
205
205
|
|
206
206
|
Contains related entities - orgs - with full fields, to support object matching in implementations.
|
207
|
+
For now the implementation matches the above EpdV0 entity, but they will diverge as normal Epd would have
|
208
|
+
some required fields in Org (like web_domain), and WithDeps would not.
|
207
209
|
"""
|
208
210
|
|
209
211
|
manufacturer: Org | None = pyd.Field(description=MANUFACTURER_DESCRIPTION)
|
@@ -21,7 +21,7 @@ from openepd.model.common import WithAltIdsMixin, WithAttachmentsMixin
|
|
21
21
|
from openepd.model.declaration import BaseDeclaration
|
22
22
|
from openepd.model.geography import Geography
|
23
23
|
from openepd.model.lcia import WithLciaMixin
|
24
|
-
from openepd.model.org import Org
|
24
|
+
from openepd.model.org import Org
|
25
25
|
from openepd.model.versioning import OpenEpdVersions, Version
|
26
26
|
|
27
27
|
|
@@ -65,11 +65,11 @@ class GenericEstimatePreviewV0(WithAttachmentsMixin, BaseDeclaration, title="Gen
|
|
65
65
|
description="1-paragraph description of the Generic Estimate. Supports plain text or github flavored markdown.",
|
66
66
|
)
|
67
67
|
|
68
|
-
publisher:
|
68
|
+
publisher: Org | None = pyd.Field(description="Organization that published the LCA results.")
|
69
69
|
reviewer_email: pyd.EmailStr | None = pyd.Field(
|
70
70
|
description="Email address of the third party verifier", example="john.doe@example.com", default=None
|
71
71
|
)
|
72
|
-
reviewer:
|
72
|
+
reviewer: Org | None = pyd.Field(description="Org that performed a critical review of the LCA.")
|
73
73
|
license_terms: LicenseTerms | None = pyd.Field(description="The license terms for use of the data.")
|
74
74
|
geography: list[Geography] | None = pyd.Field(
|
75
75
|
"Jurisdiction(s) in which the LCA result is applicable. An empty array, or absent properties, implies global applicability."
|
@@ -102,6 +102,10 @@ class GenericEstimateWithDepsV0(GenericEstimateV0, title="Generic Estimate (with
|
|
102
102
|
Expanded version of the GenericEstimate.
|
103
103
|
|
104
104
|
Contains related entities - orgs - with full fields, to support object matching in implementations.
|
105
|
+
|
106
|
+
For now the implementation matches the above GenericEstimate entity, but they will diverge as normal GE would have
|
107
|
+
some required fields in Org (like web_domain), and WithDeps would not.
|
108
|
+
|
105
109
|
"""
|
106
110
|
|
107
111
|
publisher: Org | None = pyd.Field(description="Organization that published the LCA results.")
|
@@ -1,5 +1,5 @@
|
|
1
1
|
openepd/__init__.py,sha256=Shkfh0Kun0YRhmRDw7LkUj2eQL3X-HnP55u2THOEALw,794
|
2
|
-
openepd/__version__.py,sha256=
|
2
|
+
openepd/__version__.py,sha256=DXakfiUA1effLWRpKMRN1IPK6Lee3hgHwn2AMgqmsuw,638
|
3
3
|
openepd/api/__init__.py,sha256=UGmZGEyMnASrYwEBPHuXmVzHiuCUskUsJEPoHTIo-lg,620
|
4
4
|
openepd/api/base_sync_client.py,sha256=jviqtQgsOVdRq5x7_Yh_Tg8zIdWtVTIUqNCgebf6YDg,20925
|
5
5
|
openepd/api/category/__init__.py,sha256=UGmZGEyMnASrYwEBPHuXmVzHiuCUskUsJEPoHTIo-lg,620
|
@@ -30,13 +30,13 @@ openepd/compat/__init__.py,sha256=UGmZGEyMnASrYwEBPHuXmVzHiuCUskUsJEPoHTIo-lg,62
|
|
30
30
|
openepd/compat/compat_functional_validators.py,sha256=yz6DfWeg7knBHEN_enpCGGTLRknEsecXfpzD1FDlywY,834
|
31
31
|
openepd/compat/pydantic.py,sha256=DOjSixsylLqMtFAIARu50sGcT4VPXN_c473q_2JwZQ0,1146
|
32
32
|
openepd/model/__init__.py,sha256=UGmZGEyMnASrYwEBPHuXmVzHiuCUskUsJEPoHTIo-lg,620
|
33
|
-
openepd/model/base.py,sha256=
|
33
|
+
openepd/model/base.py,sha256=Uy2Fh7Z9nPzrXrOn2aHPoJjktQfVOQ7UBCXiATkPfEQ,9008
|
34
34
|
openepd/model/category.py,sha256=IQXNGQFQmFZ_H9PRONloX_UOSf1sTMDq1rM1yz8JR0Y,1639
|
35
35
|
openepd/model/common.py,sha256=aa_bfotPybPoYyzHtwj5E5X1T-fCEyznMfVUWvpUhiM,5460
|
36
36
|
openepd/model/declaration.py,sha256=5mzX24KpsezqBuGFAr-InsgB4FFNqI7HPJeDHQ93ZCI,5322
|
37
|
-
openepd/model/epd.py,sha256=
|
37
|
+
openepd/model/epd.py,sha256=bhmPNWQQ28uhaoxE7sW8_mxyswSCEvGovQ2tH69jzUo,10324
|
38
38
|
openepd/model/factory.py,sha256=StQUH7GNmRqskMnnRYkr_PLCl5X5sSLEPiYZOIQI9eo,2541
|
39
|
-
openepd/model/generic_estimate.py,sha256=
|
39
|
+
openepd/model/generic_estimate.py,sha256=RSpQ4F4uVpwLg7NeymoX-V7c4vw3vbR5O4oObFON62A,4764
|
40
40
|
openepd/model/geography.py,sha256=OngHXz-Dkg-NrVPIwNPP53xu4-HkQ_fnEfX5fYIVEfA,37417
|
41
41
|
openepd/model/lcia.py,sha256=Cw4dwEy5Fb13XyYxpqQyGNhkuZNdjsjucAC7L1TAn7I,17560
|
42
42
|
openepd/model/org.py,sha256=FHcYh2WOOQrCMyzm0Ow-iP79jMTBPcneidjH6NXIklA,3760
|
@@ -91,7 +91,7 @@ openepd/model/validation/quantity.py,sha256=kzug0MZ3Ao0zeVzN-aleyxUg5hA_7D5tNOOe
|
|
91
91
|
openepd/model/versioning.py,sha256=R_zm6rCrgF3vlJQYbpyWhirdS_Oek16cv_mvZmpuE8I,4473
|
92
92
|
openepd/patch_pydantic.py,sha256=xrkzblatmU9HBzukWkp1cPq9ZSuohoz1p0pQqVKSlKs,4122
|
93
93
|
openepd/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
94
|
-
openepd-4.6.
|
95
|
-
openepd-4.6.
|
96
|
-
openepd-4.6.
|
97
|
-
openepd-4.6.
|
94
|
+
openepd-4.6.1.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
95
|
+
openepd-4.6.1.dist-info/METADATA,sha256=pvos-C9saphU8DSs1JnDZ9pTtMR3Mut_D-EUwQiMD9U,8534
|
96
|
+
openepd-4.6.1.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
|
97
|
+
openepd-4.6.1.dist-info/RECORD,,
|
File without changes
|
File without changes
|