openLCA schema
The openLCA schema is the data exchange format of openLCA. It is the only format that supports all modeling features of openLCA and thus, a lossless data exchange.
Why another LCA data exchange format?
There are other LCA data formats, but the concepts of these formats are sometimes quite different or they are missing features that are important for openLCA. However, whenever possible we try to be compatible with these formats:
- EcoSpold 1: It was one of the first standardized LCA data formats but it is not really used anymore. The format is nice and simple but quite some essential features are missing, like parameters and formulas. The openLCA schema adopted the general structure of processes, with inputs and outputs as exchanges, flexible schemes of allocation factors etc., from this format.
- ISO/TS 14048: ISO 14048 defines the general requirements for inventory data in form of process data sets. The openLCA schema implements these requirements for process data sets.
- SimaPro CSV: It is similar to EcoSpold 1 regarding the structural simplicity (which is good) and the fact that things are identified by names (which can be an issue in collaborative environments where name clashes could happen). It has some really nice concepts, like parameters on different levels, which was adopted in the openLCA schema. One thing that is really missing for openLCA in this format, is the concept of product systems: there is no way of linking the same processes differently in multiple product systems; everything is linked hard by name in this format. Also, there is no formal specification of this format; it is a proprietary format with some very specific properties.
- ILCD: The nice concept of different data set types and references between data sets of this format was adopted for the openLCA schema. For data exchange (e.g. over web APIs), it has quite some advantages when not everything is stored in a single file. The openLCA schema has the same general concepts as the ILCD format. However, there are still quite some things missing in the ILCD format, like stand-alone global parameters, and other things are a bit strange (e.g. it has unit groups with unit conversions but there is no possibility for using these units for input and output amounts; LCIA method data sets in this format are in fact LCIA categories; etc.). With the extended ILCD format eILCD, it is now possible to also define linked product systems in this format, but eILCD has a concept of process instances (means copies of processes) in product systems which is not so practical for matrix based LCA software. Also, the linking is limited in eILCD: the same flow in two different exchanges of a process can be only linked to different processes when the location is different (a direct linking of exchanges is missing).
- EcoSpold II: This format solves some problems of the EcoSpold I format (e.g. supports parameters and formulas, provides unique IDs for entities, etc.). However, it reflects more the structure and needs of the ecoinvent database (e.g. has a concept of parent and child activities) and thus, is rarely used in other contexts.
Finally, there are things that are not covered by these formats but supported in openLCA and the openLCA schema:
- social indicators that can be linked as social aspects in processes
- costs can be attached to every input and output of a process, also as formulas, with referenced currencies
- allocation factors for multiple allocation methods can be stored in the same process, also using formulas (the calculation picks then the respective factors depending on the selected allocation method)
- standalone LCIA categories that can be referenced in different LCIA methods, also supporting parameters and formulas
- result data sets that can contain LCI and LCIA results
- EPD data sets that can reference different result data sets for there respective life cycle stages / modules
- product system data sets in which processes can be flexibly linked, also to sub-systems and results (yes, also results of EPDs)
- ... and more
Format concepts
The openLCA schema is a typed data format with the type Entity
as starting
point. An Entity
is basically a set of key-value pairs, also called fields.
Every field has its specific type which can be:
- a number (integer or floating point number),
- a Boolean value (
true
orfalse
), - a string,
- again an
Entity
, - or a list of such values.
An entity type can inherit the fields from another entity type where the root of
this inheritance tree is always Entity
. The type RefEntity
describes
entities that can be referenced by a unique ID, stored in the field @id
.
Another data set can point to such a RefEntity
via a Ref
that contains that
@id
. With this, we do not need to repeat the information when the same data
set is referenced multiple times (e.g. when the same flow is used in different
processes).
A RootEntity
describes a stand-alone data set, like a Flow
or Process
.
These data set types form the root of an entity tree. All other entity types are
always part of such an entity tree. For example, a Unit
is not a RootEntity
,
it always lives within a UnitGroup
. But it is a RefEntity
because it can be
referenced from other entities, e.g. in an Exchange
of a process.
It should be quite easy to implement these concepts in common programming languages an serialization formats. In fact, such implementations can be directly generated from the schema definition.
JSON-LD / RDF
In most cases, the openLCA schema is just used as a structured data format.
However, the JSON serialization uses the two standard JSON-LD annotations
@type
and @id
for the type and identifier of a data set or data set
reference. We also provide a JSON-LD
context and a RDF ontology for the schema.
The vocabulary base of the schema is http://greendelta.github.io/olca-schema#
but the data set identifiers are relative to the specific context. Instances of
the openLCA schema classes or properties are not part of its ontology. For
example, in the following document, the type is expanded to
http://greendelta.github.io/olca-schema#Flow
but the ID is relative to the
respective context:
{
"@type": "Flow",
"@id": "123"
}
Zip packages
For the data exchange with openLCA, openLCA schema data sets are typically packed as JSON serialized files in zip files. Data sets of the different root entity types are then stored in the following folders within such a zip file:
type | folder |
---|---|
Actor | actors |
Currency | currencies |
DQSystem | dq_systems |
Epd | epds |
Flow | flows |
FlowProperty | flow_properties |
ImpactCategory | lcia_categories |
ImpactMethod | lcia_methods |
Location | locations |
Parameter | parameters |
Process | processes |
ProductSystem | product_systems |
Project | projects |
Result | results |
SocialIndicator | social_indicators |
Source | sources |
UnitGroup | unit_groups |
The name of the file is then the ID of the data set followed by the .json
extension. At the root level, such a zip-file contains a olca-schema.json
file
that contains the version of the package format and possibly some other
meta-data:
+ actors
- 23af...e4.json
- 1e32...f1.json
- ...
+ ...
- olca-schema.json
Changes in version 2
New types
The following new types were added to the schema:
Epd
ParameterRedefSet
Result
ImpactResult
FlowResult
New fields
The following fields were added to existing classes:
class | field | type |
---|---|---|
AllocationFactor | formula | string |
Exchange | location | Ref[Location] |
ImpactCategory | code | string |
ImpactCategory | parameters | List[Parameter |
ImpactCategory | source | Ref[Source] |
ImpactFactor | location | Ref[Location] |
ImpactMethod | code | string |
ImpactMethod | source | Ref[Source] |
ParameterRedef | isProtected | boolean |
ProductSystem | parameterSets | List[ParameterRedefSet] |
Project | isWithCosts | boolean |
Project | isWithRegionalization | boolean |
ProjectVariant | description | string |
ProjectVariant | isDisabled | boolean |
Renamed fields
class | old name | new name |
---|---|---|
Currency | referenceCurrency | refCurrency |
Exchange | avoidedProduct | isAvoidedProduct |
Exchange | input | isInput |
Exchange | quantitativeReference | isQuantitativeReference |
Flow | infrastructureFlow | isInfrastructureFlow |
FlowPropertyFactor | referenceFlowProperty | isRefFlowProperty |
ImpactCategory | referenceUnitName | refUnit |
Parameter | inputParameter | isIputParameter |
Process | infrastructureProcess | isInfrastructureProcess |
ProcessDocumentation | copyright | isCopyrightProtected |
ProductSystem | referenceExchange | refExchange |
ProductSystem | referenceProcess | refProcess |
Unit | referenceUnit | isRefUnit |
Type changes
- the field
category
inRootEntity
is now a string of the full category path instead of a reference to a category - the abstract class
RootEntity
was renamed toRefEntity
; the abstract classCategorizedEntity
toRootEntity
Removed fields
The following fields were removed:
class | field |
---|---|
ImpactMethod | parameterMean |
ImpactMethod | parameters |
ImpactMethod | parameters |
Parameter | externalSource |
Parameter | sourceType |
ProcessLink | isSystemLink |
ProductSystem | parameterRedefs |
ProductSystem | parameterRedefs |
Project | creationDate |
Project | functionalUnit |
Project | goal |
Project | lastModificationDate |
Project | author |
Uncertainty | geomMeanFormula |
Uncertainty | geomSdFormula |
Uncertainty | maximumFormula |
Uncertainty | meanFormula |
Uncertainty | minimumFormula |
Uncertainty | modeFormula |
Uncertainty | sdFormula |
Actor
An actor is a person or organisation.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
@id
Inherited from RefEntity.@id
- Type:
string
(external doc) - Proto-Index: 2
name
Inherited from RefEntity.name
- Type:
string
(external doc) - Proto-Index: 3
description
Inherited from RefEntity.description
- Type:
string
(external doc) - Proto-Index: 4
category
Inherited from RootEntity.category
- Type:
string
(external doc) - Proto-Index: 5
lastChange
Inherited from RootEntity.lastChange
- Type:
dateTime
(external doc) - Proto-Index: 6
tags
Inherited from RootEntity.tags
- Type:
List
ofstring
(external doc) - Proto-Index: 7
version
Inherited from RootEntity.version
- Type:
string
(external doc) - Proto-Index: 8
address
- Type:
string
(external doc) - Proto-Index: 10
city
- Type:
string
(external doc) - Proto-Index: 11
country
- Type:
string
(external doc) - Proto-Index: 12
email
- Type:
string
(external doc) - Proto-Index: 13
telefax
- Type:
string
(external doc) - Proto-Index: 14
telephone
- Type:
string
(external doc) - Proto-Index: 15
website
- Type:
string
(external doc) - Proto-Index: 16
zipCode
- Type:
string
(external doc) - Proto-Index: 17
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class Actor:
id: str
address: str
category: str
city: str
country: str
description: str
email: str
last_change: str
name: str
tags: List[str]
telefax: str
telephone: str
version: str
website: str
zip_code: str
Currency
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
@id
Inherited from RefEntity.@id
- Type:
string
(external doc) - Proto-Index: 2
name
Inherited from RefEntity.name
- Type:
string
(external doc) - Proto-Index: 3
description
Inherited from RefEntity.description
- Type:
string
(external doc) - Proto-Index: 4
category
Inherited from RootEntity.category
- Type:
string
(external doc) - Proto-Index: 5
lastChange
Inherited from RootEntity.lastChange
- Type:
dateTime
(external doc) - Proto-Index: 6
tags
Inherited from RootEntity.tags
- Type:
List
ofstring
(external doc) - Proto-Index: 7
version
Inherited from RootEntity.version
- Type:
string
(external doc) - Proto-Index: 8
code
- Type:
string
(external doc) - Proto-Index: 10
conversionFactor
- Type:
double
(external doc) - Proto-Index: 11
refCurrency
The reference currency to which the conversion factor is related.
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class Currency:
id: str
category: str
code: str
conversion_factor: float
description: str
last_change: str
name: str
ref_currency: Ref
tags: List[str]
version: str
DQSystem
A data quality system (DQS) in openLCA describes a pedigree matrix of m
data quality indicators (DQIs) and n
data quality scores (DQ scores). Such a system can then be used to assess the data quality of processes and exchanges by tagging them with an instance of the system D
where D
is a m * n
matrix with an entry d_ij
containing the value of the data quality score j
for indicator i
.
As each indicator in D
can only have a single score value, D
can be stored in a vector d
where d_i
contains the data quality score for indicator i
. The possible values of the data quality scores are defined as a linear order 1 ... n
. In openLCA, the data quality entry d
of a process or exchange is stored as a string like (3;2;4;n.a.;2)
which means the data quality score for the first indicator is 3
, for the second 2
etc. A specific value is n.a.
which stands for not applicable.
In calculations, these data quality entries can be aggregated in different ways. For example, the data quality entry of a flow f
with a contribution of 0.5 kg
and a data quality entry of (3;2;4;n.a.;2)
in a process p
and a contribution of 1.5 kg
and a data quality entry of (2;3;1;n.a.;5)
in a process q
could be aggregated to (2;3;2;n.a.;4)
by applying an weighted average and rounding.
Finally, custom labels like A, B, C, ...
or Very good, Good, Fair, ...
for the DQ scores can be assigned by the user. These labels are then displayed instead of 1, 2, 3 ...
in the user interface or result exports. However, internally the numeric values are used in the data model and calculations.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
@id
Inherited from RefEntity.@id
- Type:
string
(external doc) - Proto-Index: 2
name
Inherited from RefEntity.name
- Type:
string
(external doc) - Proto-Index: 3
description
Inherited from RefEntity.description
- Type:
string
(external doc) - Proto-Index: 4
category
Inherited from RootEntity.category
- Type:
string
(external doc) - Proto-Index: 5
lastChange
Inherited from RootEntity.lastChange
- Type:
dateTime
(external doc) - Proto-Index: 6
tags
Inherited from RootEntity.tags
- Type:
List
ofstring
(external doc) - Proto-Index: 7
version
Inherited from RootEntity.version
- Type:
string
(external doc) - Proto-Index: 8
hasUncertainties
- Type:
boolean
(external doc) - Proto-Index: 10
source
indicators
- Type:
List
of DQIndicator - Proto-Index: 12
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class DQSystem:
id: str
category: str
description: str
has_uncertainties: bool
indicators: List[DQIndicator]
last_change: str
name: str
source: Ref
tags: List[str]
version: str
DQIndicator
An indicator of a data quality system (DQSystem
).
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
name
- Type:
string
(external doc) - Proto-Index: 2
position
- Type:
int
(external doc) - Proto-Index: 3
scores
- Type:
List
of DQScore - Proto-Index: 4
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class DQIndicator:
name: str
position: int
scores: List[DQScore]
DQScore
An score value of an indicator (DQIndicator
) in a data quality system (DQSystem
).
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
description
- Type:
string
(external doc) - Proto-Index: 2
label
- Type:
string
(external doc) - Proto-Index: 3
position
- Type:
int
(external doc) - Proto-Index: 4
uncertainty
- Type:
optional
double
(external doc) - Proto-Index: 5
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class DQScore:
description: str
label: str
position: int
uncertainty: float
Epd
The results and some meta-data of an environmental product declarartion, EPD.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
@id
Inherited from RefEntity.@id
- Type:
string
(external doc) - Proto-Index: 2
name
Inherited from RefEntity.name
- Type:
string
(external doc) - Proto-Index: 3
description
Inherited from RefEntity.description
- Type:
string
(external doc) - Proto-Index: 4
category
Inherited from RootEntity.category
- Type:
string
(external doc) - Proto-Index: 5
lastChange
Inherited from RootEntity.lastChange
- Type:
dateTime
(external doc) - Proto-Index: 6
tags
Inherited from RootEntity.tags
- Type:
List
ofstring
(external doc) - Proto-Index: 7
version
Inherited from RootEntity.version
- Type:
string
(external doc) - Proto-Index: 8
manufacturer
modules
The results of this EPD structured in modules.
- Type:
List
of EpdModule - Proto-Index: 11
pcr
product
The declared product of the EPD.
- Type: EpdProduct
- Proto-Index: 13
programOperator
urn
An universal resource name (URN) that identifies where the EPD comes from, e.g. openEPD:ec3yznau
.
- Type:
string
(external doc) - Proto-Index: 15
verifier
epdType
- Type: EpdType
- Proto-Index: 17
validFrom
- Type:
date
(external doc) - Proto-Index: 18
validUntil
- Type:
date
(external doc) - Proto-Index: 19
location
originalEpd
manufacturing
- Type:
string
(external doc) - Proto-Index: 22
productUsage
- Type:
string
(external doc) - Proto-Index: 23
useAdvice
- Type:
string
(external doc) - Proto-Index: 24
registrationId
- Type:
string
(external doc) - Proto-Index: 25
dataGenerator
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class Epd:
id: str
category: str
data_generator: Ref
description: str
epd_type: EpdType
last_change: str
location: Ref
manufacturer: Ref
manufacturing: str
modules: List[EpdModule]
name: str
original_epd: Ref
pcr: Ref
product: EpdProduct
product_usage: str
program_operator: Ref
registration_id: str
tags: List[str]
urn: str
use_advice: str
valid_from: str
valid_until: str
verifier: Ref
version: str
EpdModule
The results of an EPD are typically structured in modules.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
multiplier
Scales the linked result to the required amount for this module.
- Type:
double
(external doc) - Proto-Index: 2
name
The name or identifier of the module, like A1
.
- Type:
string
(external doc) - Proto-Index: 3
result
A reference to the module's result. Note that results are stand-alone entities and that the same result could be referenced from different modules. Also, results can be directly linked in product systems.
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class EpdModule:
multiplier: float
name: str
result: Ref
EpdProduct
The declared product of an EPD.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
amount
The amount of the declared product.
- Type:
double
(external doc) - Proto-Index: 2
flow
The reference to the product flow.
flowProperty
The reference to the flow property (quantity) in which the amount of the declared product is given for the respective EPD. A missing flow property reference means that the amount is given in the reference flow property of the respective product flow.
- Type: Ref of FlowProperty
- Proto-Index: 4
unit
The reference to the unit in which the amount of the declared product is given for the respective EPD. A missing unit reference means that the amount is given in the reference unit of the respective product flow.
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class EpdProduct:
amount: float
flow: Ref
flow_property: Ref
unit: Ref
Flow
Everything that can be an input or output of a process (e.g. a substance, a product, a waste, a service etc.)
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
@id
Inherited from RefEntity.@id
- Type:
string
(external doc) - Proto-Index: 2
name
Inherited from RefEntity.name
- Type:
string
(external doc) - Proto-Index: 3
description
Inherited from RefEntity.description
- Type:
string
(external doc) - Proto-Index: 4
category
Inherited from RootEntity.category
- Type:
string
(external doc) - Proto-Index: 5
lastChange
Inherited from RootEntity.lastChange
- Type:
dateTime
(external doc) - Proto-Index: 6
tags
Inherited from RootEntity.tags
- Type:
List
ofstring
(external doc) - Proto-Index: 7
version
Inherited from RootEntity.version
- Type:
string
(external doc) - Proto-Index: 8
cas
A CAS number of the flow.
- Type:
string
(external doc) - Proto-Index: 10
flowProperties
The flow properties (quantities) in which amounts of the flow can be expressed together with conversion factors between these flow flow properties.
- Type:
List
of FlowPropertyFactor - Proto-Index: 11
flowType
The type of the flow. Note that this type is more a descriptor of how the flow is handled in calculations.
- Type: FlowType
- Proto-Index: 12
formula
A chemical formula of the flow.
- Type:
string
(external doc) - Proto-Index: 13
isInfrastructureFlow
Indicates whether this flow describes an infrastructure product. This field is part of the openLCA schema because of backward compatibility with EcoSpold 1. It does not really have a meaning in openLCA and should not be used anymore.
- Type:
boolean
(external doc) - Proto-Index: 14
location
The location of the flow. Normally the location of a flow is defined by the process location where the flow is an input or output. However, some data formats define a location as a property of a flow.
synonyms
A list of synonyms but packed into a single field. Best is to use semicolons as separator as commas are sometimes used in names of chemicals.
- Type:
string
(external doc) - Proto-Index: 16
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class Flow:
id: str
cas: str
category: str
description: str
flow_properties: List[FlowPropertyFactor]
flow_type: FlowType
formula: str
is_infrastructure_flow: bool
last_change: str
location: Ref
name: str
synonyms: str
tags: List[str]
version: str
JSON example
{
"@type": "Flow",
"@id": "4a40cb39-e306-3649-b6da-ca061e384e23",
"name": "electricity, high voltage, at grid",
"category": "electricity/supply mix",
"flowType": "PRODUCT_FLOW",
"location": {
"@type": "Location",
"@id": "28840420-4e3d-3522-a930-8317344a285d",
"name": "Poland"
},
"flowProperties": [
{
"@type": "FlowPropertyFactor",
"isRefFlowProperty": true,
"conversionFactor": 1.0,
"flowProperty": {
"@type": "FlowProperty",
"@id": "f6811440-ee37-11de-8a39-0800200c9a66",
"name": "Energy"
}
}
]
}
FlowPropertyFactor
A FlowPropertyFactor
is a conversion factor between flow properties (quantities; FlowProperty
) of a flow (Flow
). As an example the amount of the flow 'water' in a process could be expressed in 'kg' mass or 'm3' volume. In this case the flow water would have two flow property factors: one for the flow property 'mass' and one for 'volume'. Each of these flow properties has a reference to a unit group (UnitGroup
) which again has a reference unit. In the example the flow property 'mass' could reference the unit group 'units of mass' with 'kg' as reference unit and volume could reference the unit group 'units of volume' with 'm3' as reference unit. The flow property factor is now the conversion factor between these two reference units where the factor of the reference flow property of the flow is 1. If the reference flow property of 'water' in the example would be 'mass' the respective flow property factor would be 1 and the factor for 'volume' would be 0.001 (as 1 kg water is 0.001 m3). The amount of water in a process can now be also given in liter, tons, grams etc. For this, the unit conversion factor of the respective unit group can be used to convert into the reference unit (which then can be used to convert to the reference unit of another flow property). Another thing to note is that different flow properties can refer to the same unit group (e.g. MJ upper calorific value and MJ lower calorific value.)
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
conversionFactor
The value of the conversion factor.
- Type:
double
(external doc) - Proto-Index: 2
isRefFlowProperty
Indicates whether the flow property of the factor is the reference flow property of the flow. The reference flow property must have a conversion factor of 1.0 and there should be only one reference flow property.
- Type:
boolean
(external doc) - Proto-Index: 3
flowProperty
The flow property (quantity) of the factor.
- Type: Ref of FlowProperty
- Proto-Index: 4
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class FlowPropertyFactor:
conversion_factor: float
flow_property: Ref
is_ref_flow_property: bool
JSON example
{
"@type": "FlowPropertyFactor",
"isRefFlowProperty": true,
"conversionFactor": 1.0,
"flowProperty": {
"@type": "FlowProperty",
"@id": "f6811440-ee37-11de-8a39-0800200c9a66",
"name": "Energy"
}
}
FlowMap
A crosswalk of flows from a source flow list to a target flow list.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
@id
Inherited from RefEntity.@id
- Type:
string
(external doc) - Proto-Index: 2
name
Inherited from RefEntity.name
- Type:
string
(external doc) - Proto-Index: 3
description
Inherited from RefEntity.description
- Type:
string
(external doc) - Proto-Index: 4
category
Inherited from RootEntity.category
- Type:
string
(external doc) - Proto-Index: 5
lastChange
Inherited from RootEntity.lastChange
- Type:
dateTime
(external doc) - Proto-Index: 6
tags
Inherited from RootEntity.tags
- Type:
List
ofstring
(external doc) - Proto-Index: 7
version
Inherited from RootEntity.version
- Type:
string
(external doc) - Proto-Index: 8
mappings
A list of flow mappings from flows in a source flow list to flows in a target flow list.
- Type:
List
of FlowMapEntry - Proto-Index: 10
source
The reference (id, name, description) of the source flow list.
- Type: Ref
- Proto-Index: 11
target
The reference (id, name, description) of the target flow list.
- Type: Ref
- Proto-Index: 12
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class FlowMap:
id: str
category: str
description: str
last_change: str
mappings: List[FlowMapEntry]
name: str
source: Ref
tags: List[str]
target: Ref
version: str
FlowMapEntry
A mapping from a source flow to a target flow.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
conversionFactor
The conversion factor to convert the amount of 1 unit of the source flow into the corresponding quantity of the target flow.
- Type:
double
(external doc) - Proto-Index: 2
from
Describes the source flow of the mapping.
- Type: FlowMapRef
- Proto-Index: 3
to
Describes the target of the mapping.
- Type: FlowMapRef
- Proto-Index: 4
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class FlowMapEntry:
conversion_factor: float
from_: FlowMapRef
to: FlowMapRef
FlowMapRef
Describes a source or target flow in a FlowMappingEntry
of a FlowMap
. Such a flow reference can also optionally specify the unit and flow property (quantity) for which the mapping is valid. If the unit or quantity is not given, the mapping is based on the respective reference unit and reference flow property of the flow.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
flow
The reference to the flow data set.
flowProperty
An optional reference to a flow property of the flow for which the mapping is valid.
- Type: Ref of FlowProperty
- Proto-Index: 3
unit
An optional reference to a unit of the flow for which the mapping is valid
provider
In case of a product or waste flow a flow mapping can contain a provider which is the process that produces the product or a waste treatment process that consumes the waste flow. This is useful when we want to apply mappings of product and waste flows on databases and link them in the corresponding processes and product systems.
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class FlowMapRef:
flow: Ref
flow_property: Ref
provider: Ref
unit: Ref
FlowProperty
A flow property is a quantity that can be used to express amounts of a flow.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
@id
Inherited from RefEntity.@id
- Type:
string
(external doc) - Proto-Index: 2
name
Inherited from RefEntity.name
- Type:
string
(external doc) - Proto-Index: 3
description
Inherited from RefEntity.description
- Type:
string
(external doc) - Proto-Index: 4
category
Inherited from RootEntity.category
- Type:
string
(external doc) - Proto-Index: 5
lastChange
Inherited from RootEntity.lastChange
- Type:
dateTime
(external doc) - Proto-Index: 6
tags
Inherited from RootEntity.tags
- Type:
List
ofstring
(external doc) - Proto-Index: 7
version
Inherited from RootEntity.version
- Type:
string
(external doc) - Proto-Index: 8
flowPropertyType
The type of the flow property
- Type: FlowPropertyType
- Proto-Index: 10
unitGroup
The units of measure that can be used to express quantities of the flow property.
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class FlowProperty:
id: str
category: str
description: str
flow_property_type: FlowPropertyType
last_change: str
name: str
tags: List[str]
unit_group: Ref
version: str
JSON example
{
"@type": "FlowProperty",
"@id": "93a60a56-a3c8-11da-a746-0800200b9a66",
"name": "Mass",
"category": "Technical flow properties",
"flowPropertyType": "PHYSICAL_QUANTITY",
"unitGroup": {
"@type": "UnitGroup",
"@id": "93a60a57-a4c8-11da-a746-0800200c9a66",
"name": "Units of mass"
}
}
ImpactCategory
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
@id
Inherited from RefEntity.@id
- Type:
string
(external doc) - Proto-Index: 2
name
Inherited from RefEntity.name
- Type:
string
(external doc) - Proto-Index: 3
description
Inherited from RefEntity.description
- Type:
string
(external doc) - Proto-Index: 4
category
Inherited from RootEntity.category
- Type:
string
(external doc) - Proto-Index: 5
lastChange
Inherited from RootEntity.lastChange
- Type:
dateTime
(external doc) - Proto-Index: 6
tags
Inherited from RootEntity.tags
- Type:
List
ofstring
(external doc) - Proto-Index: 7
version
Inherited from RootEntity.version
- Type:
string
(external doc) - Proto-Index: 8
code
- Type:
string
(external doc) - Proto-Index: 10
impactFactors
The characterisation factors of the LCIA category.
- Type:
List
of ImpactFactor - Proto-Index: 11
parameters
A set of parameters which can be used in formulas of the characterisation factors in this impact category.
- Type:
List
of Parameter - Proto-Index: 12
refUnit
The name of the reference unit of the LCIA category (e.g. kg CO2-eq.).
- Type:
string
(external doc) - Proto-Index: 13
direction
The impact direction of this impact category.
- Type: Direction
- Proto-Index: 14
source
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class ImpactCategory:
id: str
category: str
code: str
description: str
direction: Direction
impact_factors: List[ImpactFactor]
last_change: str
name: str
parameters: List[Parameter]
ref_unit: str
source: Ref
tags: List[str]
version: str
JSON example
{
"@type": "ImpactCategory",
"@id": "3a08605b-d7c9-4f40-a17e-74cece1dde8b",
"name": "Depletion of abiotic resources - elements, ultimate reserves",
"description": "ADPelements (Oers et al. 2001)",
"referenceUnitName": "kg antimony eq.",
"impactFactors": [
{
"@type": "ImpactFactor",
"value": 1.0943318963E-9,
"flow": {
"@type": "Flow",
"@id": "0305b169-255d-4041-8f5d-6e095bcb6358",
"name": "Aluminium"
},
"unit": {
"@type": "Unit",
"@id": "20aadc24-a391-41cf-b340-3e4529f44bde",
"name": "kg"
},
"flowProperty": {
"@type": "FlowProperty",
"@id": "93a60a56-a3c8-11da-a746-0800200b9a66",
"name": "Mass"
}
}
]
}
ImpactFactor
A single characterisation factor of a LCIA category for a flow.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
flow
The [Flow] of the impact assessment factor.
flowProperty
The quantity of the flow to which the LCIA factor is related (e.g. Mass).
- Type: Ref of FlowProperty
- Proto-Index: 3
location
In case of a regionalized impact category, this field can contain the location for which this factor is valid.
unit
The flow unit to which the LCIA factor is related (e.g. kg).
value
The value of the impact assessment factor.
- Type:
double
(external doc) - Proto-Index: 6
formula
A mathematical formula for calculating the value of the LCIA factor.
- Type:
string
(external doc) - Proto-Index: 7
uncertainty
The uncertainty distribution of the factors' value.
- Type: Uncertainty
- Proto-Index: 8
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class ImpactFactor:
flow: Ref
flow_property: Ref
formula: str
location: Ref
uncertainty: Uncertainty
unit: Ref
value: float
JSON example
{
"@type": "ImpactFactor",
"value": 1.0943318963E-9,
"flow": {
"@type": "Flow",
"@id": "0305b169-255d-4041-8f5d-6e095bcb6358",
"name": "Aluminium"
},
"unit": {
"@type": "Unit",
"@id": "20aadc24-a391-41cf-b340-3e4529f44bde",
"name": "kg"
},
"flowProperty": {
"@type": "FlowProperty",
"@id": "93a60a56-a3c8-11da-a746-0800200b9a66",
"name": "Mass"
}
}
ImpactMethod
An impact assessment method.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
@id
Inherited from RefEntity.@id
- Type:
string
(external doc) - Proto-Index: 2
name
Inherited from RefEntity.name
- Type:
string
(external doc) - Proto-Index: 3
description
Inherited from RefEntity.description
- Type:
string
(external doc) - Proto-Index: 4
category
Inherited from RootEntity.category
- Type:
string
(external doc) - Proto-Index: 5
lastChange
Inherited from RootEntity.lastChange
- Type:
dateTime
(external doc) - Proto-Index: 6
tags
Inherited from RootEntity.tags
- Type:
List
ofstring
(external doc) - Proto-Index: 7
version
Inherited from RootEntity.version
- Type:
string
(external doc) - Proto-Index: 8
code
- Type:
string
(external doc) - Proto-Index: 10
impactCategories
The impact categories of the method.
- Type:
List
of Ref of ImpactCategory - Proto-Index: 11
nwSets
The normalization and weighting sets of the method.
- Type:
List
of NwSet - Proto-Index: 12
source
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class ImpactMethod:
id: str
category: str
code: str
description: str
impact_categories: List[Ref]
last_change: str
name: str
nw_sets: List[NwSet]
source: Ref
tags: List[str]
version: str
Location
A location like a country, state, city, etc.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
@id
Inherited from RefEntity.@id
- Type:
string
(external doc) - Proto-Index: 2
name
Inherited from RefEntity.name
- Type:
string
(external doc) - Proto-Index: 3
description
Inherited from RefEntity.description
- Type:
string
(external doc) - Proto-Index: 4
category
Inherited from RootEntity.category
- Type:
string
(external doc) - Proto-Index: 5
lastChange
Inherited from RootEntity.lastChange
- Type:
dateTime
(external doc) - Proto-Index: 6
tags
Inherited from RootEntity.tags
- Type:
List
ofstring
(external doc) - Proto-Index: 7
version
Inherited from RootEntity.version
- Type:
string
(external doc) - Proto-Index: 8
code
The code of the location (e.g. an ISO 2-letter country code).
- Type:
string
(external doc) - Proto-Index: 10
latitude
The average latitude of the location.
- Type:
optional
double
(external doc) - Proto-Index: 11
longitude
The average longitude of the location.
- Type:
optional
double
(external doc) - Proto-Index: 12
geometry
A GeoJSON object.
- Type:
GeoJSON
(external doc) - Proto-Index: 13
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class Location:
id: str
category: str
code: str
description: str
geometry: Dict[str, Any]
last_change: str
latitude: float
longitude: float
name: str
tags: List[str]
version: str
JSON example
{
"@type": "Location",
"@id": "28840420-4e3d-3522-a930-8317344a285d",
"name": "Poland",
"description": "reference location, sources: ISO 3166-1, ecoinvent 3, ILCD, GaBi",
"code": "PL",
"latitude": 52.125,
"longitude": 19.401
}
Parameter
In openLCA, parameters can be defined in different scopes: global, process, or LCIA method. The parameter name can be used in formulas and, thus, need to conform to a specific syntax. Within a scope the parameter name should be unique (otherwise the evaluation is not deterministic). There are two types of parameters in openLCA: input parameters and dependent parameters. An input parameter can have an optional uncertainty distribution but not a formula. A dependent parameter can (should) have a formula (where also other parameters can be used) but no uncertainty distribution.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
@id
Inherited from RefEntity.@id
- Type:
string
(external doc) - Proto-Index: 2
name
Inherited from RefEntity.name
- Type:
string
(external doc) - Proto-Index: 3
description
Inherited from RefEntity.description
- Type:
string
(external doc) - Proto-Index: 4
category
Inherited from RootEntity.category
- Type:
string
(external doc) - Proto-Index: 5
lastChange
Inherited from RootEntity.lastChange
- Type:
dateTime
(external doc) - Proto-Index: 6
tags
Inherited from RootEntity.tags
- Type:
List
ofstring
(external doc) - Proto-Index: 7
version
Inherited from RootEntity.version
- Type:
string
(external doc) - Proto-Index: 8
formula
A mathematical expression to calculate the parameter value.
- Type:
string
(external doc) - Proto-Index: 10
isInputParameter
Indicates whether the parameter is an input parameter (true) or a dependent/calculated parameter (false). A parameter can have a formula if it is not an input parameter.
- Type:
boolean
(external doc) - Proto-Index: 11
parameterScope
The scope where the parameter is valid.
- Type: ParameterScope
- Proto-Index: 12
uncertainty
An uncertainty distribution of the parameter value. This is only valid for input parameters.
- Type: Uncertainty
- Proto-Index: 13
value
The parameter value.
- Type:
double
(external doc) - Proto-Index: 14
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class Parameter:
id: str
category: str
description: str
formula: str
is_input_parameter: bool
last_change: str
name: str
parameter_scope: ParameterScope
tags: List[str]
uncertainty: Uncertainty
value: float
version: str
Process
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
@id
Inherited from RefEntity.@id
- Type:
string
(external doc) - Proto-Index: 2
name
Inherited from RefEntity.name
- Type:
string
(external doc) - Proto-Index: 3
description
Inherited from RefEntity.description
- Type:
string
(external doc) - Proto-Index: 4
category
Inherited from RootEntity.category
- Type:
string
(external doc) - Proto-Index: 5
lastChange
Inherited from RootEntity.lastChange
- Type:
dateTime
(external doc) - Proto-Index: 6
tags
Inherited from RootEntity.tags
- Type:
List
ofstring
(external doc) - Proto-Index: 7
version
Inherited from RootEntity.version
- Type:
string
(external doc) - Proto-Index: 8
allocationFactors
- Type:
List
of AllocationFactor - Proto-Index: 10
defaultAllocationMethod
- Type: AllocationType
- Proto-Index: 11
exchanges
The inputs and outputs of the process.
- Type:
List
of Exchange - Proto-Index: 12
lastInternalId
This field holds the last internal ID that was used in an exchange (which may have been deleted, so it can be larger than the largest internal ID of the exchanges of the process.) The internal ID of an exchange is used to identify exchanges within a process (for updates, data exchanges (see process links), etc.). When you add an exchange to a process, you should increment this field in the process and set the resulting value as the internal ID of that exchange. The sequence of internal IDs should start with 1
.
- Type:
int
(external doc) - Proto-Index: 13
location
The location of the process.
parameters
- Type:
List
of Parameter - Proto-Index: 15
processDocumentation
- Type: ProcessDocumentation
- Proto-Index: 16
processType
- Type: ProcessType
- Proto-Index: 17
dqSystem
A reference to a data quality system (DQSystem
) with which the overall quality of the process can be assessed.
exchangeDqSystem
A reference to a data quality system (DQSystem
) with which the quality of individual inputs and outputs (Exchange
) of the process can be assessed.
socialDqSystem
A reference to a data quality system (DQSystem
) with which the quality of individual social aspects of the process can be assessed.
dqEntry
A data quality entry like (1;3;2;5;1)
. The entry is a vector of data quality values that need to match the overall data quality system of the process (the system that is stored in the dqSystem
property). In such a system the data quality indicators have fixed positions and the respective values in the dqEntry
vector map to these positions.
- Type:
string
(external doc) - Proto-Index: 21
isInfrastructureProcess
Indicates whether this process describes an infrastructure process. This field is part of the openLCA schema because of backward compatibility with EcoSpold 1. It does not really have a meaning in openLCA and should not be used anymore.
- Type:
boolean
(external doc) - Proto-Index: 22
socialAspects
A set of social aspects related to this process.
- Type:
List
of SocialAspect - Proto-Index: 23
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class Process:
id: str
allocation_factors: List[AllocationFactor]
category: str
default_allocation_method: AllocationType
description: str
dq_entry: str
dq_system: Ref
exchange_dq_system: Ref
exchanges: List[Exchange]
is_infrastructure_process: bool
last_change: str
last_internal_id: int
location: Ref
name: str
parameters: List[Parameter]
process_documentation: ProcessDocumentation
process_type: ProcessType
social_aspects: List[SocialAspect]
social_dq_system: Ref
tags: List[str]
version: str
JSON example
{
"@type": "Process",
"@id": "59963026-9b57-4666-a732-59fa9ebd9223",
"name": "Steel production",
"description": "",
"processType": "UNIT_PROCESS",
"location": {
"@type": "Location",
"@id": "5f02f088-9301-3d7b-a1ac-972c11bf3e7d",
"name": "Germany"
},
"processDocumentation": {
"copyright": false,
"creationDate": "2015-02-11T13:58:48.789+01:00"
},
"exchanges": [
{
"@type": "Exchange",
"internalId": 1,
"amount": 1.0,
"isAvoidedProduct": false,
"isInput": false,
"isQuantitativeReference": true,
"flow": {
"@type": "Flow",
"@id": "54290a29-8baa-495c-84b3-db212c75f7b7",
"name": "Steel"
},
"unit": {
"@type": "Unit",
"@id": "20aadc24-a391-41cf-b340-3e4529f44bde",
"name": "kg"
},
"flowProperty": {
"@type": "FlowProperty",
"@id": "93a60a56-a3c8-11da-a746-0800200b9a66",
"name": "Mass"
}
}
]
}
AllocationFactor
A single allocation factor in a process.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
allocationType
The type of allocation.
- Type: AllocationType
- Proto-Index: 2
exchange
A product input, waste output, or elementary flow exchange which is allocated by this factor. This is only valid for causal allocation where allocation factors can be assigned to single exchanges.
- Type: ExchangeRef
- Proto-Index: 3
formula
An optional formula from which the value of the allocation factor is calculated.
- Type:
string
(external doc) - Proto-Index: 4
product
The output product (or waste input) to which this allocation factor is related. The must be an exchange with this product output (or waste input) in this process.
value
The value of the allocation factor.
- Type:
double
(external doc) - Proto-Index: 6
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class AllocationFactor:
allocation_type: AllocationType
exchange: ExchangeRef
formula: str
product: Ref
value: float
ComplianceDeclaration
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
system
comment
- Type:
string
(external doc) - Proto-Index: 3
aspects
- Type:
List
of AspectValue - Proto-Index: 4
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class ComplianceDeclaration:
aspects: List[AspectValue]
comment: str
system: Ref
Exchange
An Exchange is an input or output of a Flow
in a Process
. The amount of an exchange is given in a specific unit of a quantity (FlowProperty
) of the flow. The allowed units and flow properties that can be used for a flow in an exchange are defined by the flow property information in that flow (see also the FlowPropertyFactor
type).
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
amount
- Type:
double
(external doc) - Proto-Index: 2
amountFormula
- Type:
string
(external doc) - Proto-Index: 3
baseUncertainty
- Type:
optional
double
(external doc) - Proto-Index: 4
costFormula
A formula for calculating the costs of this exchange.
- Type:
string
(external doc) - Proto-Index: 5
costValue
The costs of this exchange.
- Type:
optional
double
(external doc) - Proto-Index: 6
currency
The currency in which the costs of this exchange are given.
defaultProvider
A default provider is a Process
that is linked as the provider of a product input or the waste treatment provider of a waste output. It is just an optional default setting which can be also ignored when building product systems in openLCA. The user is always free to link processes in product systems ignoring these defaults (but the flows and flow directions have to match of course).
description
A general comment about the input or output.
- Type:
string
(external doc) - Proto-Index: 9
dqEntry
A data quality entry like (1;3;2;5;1)
. The entry is a vector of data quality values that need to match the data quality scheme for flow inputs and outputs that is assigned to the Process
. In such a scheme the data quality indicators have fixed positions and the respective values in the dqEntry
vector map to these positions.
- Type:
string
(external doc) - Proto-Index: 10
flow
The reference to the flow of the exchange.
flowProperty
The quantity in which the amount is given.
- Type: Ref of FlowProperty
- Proto-Index: 12
internalId
The process internal ID of the exchange. This is used to identify exchanges unambiguously within a process (e.g. when linking exchanges in a product system where multiple exchanges with the same flow are allowed). The value should be >= 1.
- Type:
int
(external doc) - Proto-Index: 13
isAvoidedProduct
Indicates whether this exchange is an avoided product (or waste flow). Note that there is a difference in the data model and the openLCA user interface: in the user interface avoided products (waste flows) are shown as outputs (inputs) but in the data model avoided products (waste flows) have isInput
set to true
(false
). The reason for this is, that it is (maybe) more understandable in the user interface that the production (treatment) of some other product (waste) is avoided this way. However, openLCA links product inputs and waste outputs to providers. Avoided flows are linked in the same way but with a negative sign so that the respective upstream (downstream) chain is subtracted effectively from the result. This is why in the data model we have the isInput
property set according to this linking logic.
- Type:
boolean
(external doc) - Proto-Index: 14
isInput
- Type:
boolean
(external doc) - Proto-Index: 15
isQuantitativeReference
Indicates whether the exchange is the quantitative reference of the process.
- Type:
boolean
(external doc) - Proto-Index: 16
location
uncertainty
- Type: Uncertainty
- Proto-Index: 18
unit
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class Exchange:
amount: float
amount_formula: str
base_uncertainty: float
cost_formula: str
cost_value: float
currency: Ref
default_provider: Ref
description: str
dq_entry: str
flow: Ref
flow_property: Ref
internal_id: int
is_avoided_product: bool
is_input: bool
is_quantitative_reference: bool
location: Ref
uncertainty: Uncertainty
unit: Ref
JSON example
{
"@type": "Exchange",
"internalId": 1,
"amount": 1.0,
"isAvoidedProduct": false,
"isInput": false,
"isQuantitativeReference": true,
"flow": {
"@type": "Flow",
"@id": "54290a29-8baa-495c-84b3-db212c75f7b7",
"name": "Steel"
},
"unit": {
"@type": "Unit",
"@id": "20aadc24-a391-41cf-b340-3e4529f44bde",
"name": "kg"
},
"flowProperty": {
"@type": "FlowProperty",
"@id": "93a60a56-a3c8-11da-a746-0800200b9a66",
"name": "Mass"
},
"description": "This is an example output of 1 kg steel."
}
ProcessDocumentation
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
completenessDescription
- Type:
string
(external doc) - Proto-Index: 2
creationDate
- Type:
dateTime
(external doc) - Proto-Index: 3
dataCollectionDescription
- Type:
string
(external doc) - Proto-Index: 4
dataDocumentor
dataGenerator
dataSelectionDescription
- Type:
string
(external doc) - Proto-Index: 7
dataSetOwner
dataTreatmentDescription
- Type:
string
(external doc) - Proto-Index: 9
geographyDescription
- Type:
string
(external doc) - Proto-Index: 10
intendedApplication
- Type:
string
(external doc) - Proto-Index: 11
inventoryMethodDescription
- Type:
string
(external doc) - Proto-Index: 12
isCopyrightProtected
- Type:
boolean
(external doc) - Proto-Index: 13
modelingConstantsDescription
- Type:
string
(external doc) - Proto-Index: 14
projectDescription
- Type:
string
(external doc) - Proto-Index: 15
publication
restrictionsDescription
- Type:
string
(external doc) - Proto-Index: 17
samplingDescription
- Type:
string
(external doc) - Proto-Index: 20
sources
technologyDescription
- Type:
string
(external doc) - Proto-Index: 22
timeDescription
- Type:
string
(external doc) - Proto-Index: 23
validFrom
- Type:
date
(external doc) - Proto-Index: 24
validUntil
- Type:
date
(external doc) - Proto-Index: 25
useAdvice
- Type:
string
(external doc) - Proto-Index: 26
flowCompleteness
- Type:
List
of AspectValue - Proto-Index: 27
complianceDeclarations
- Type:
List
of ComplianceDeclaration - Proto-Index: 28
reviews
- Type:
List
of Review - Proto-Index: 29
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class ProcessDocumentation:
completeness_description: str
compliance_declarations: List[ComplianceDeclaration]
creation_date: str
data_collection_description: str
data_documentor: Ref
data_generator: Ref
data_selection_description: str
data_set_owner: Ref
data_treatment_description: str
flow_completeness: List[AspectValue]
geography_description: str
intended_application: str
inventory_method_description: str
is_copyright_protected: bool
modeling_constants_description: str
project_description: str
publication: Ref
restrictions_description: str
reviews: List[Review]
sampling_description: str
sources: List[Ref]
technology_description: str
time_description: str
use_advice: str
valid_from: str
valid_until: str
Review
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
reviewType
- Type:
string
(external doc) - Proto-Index: 2
scopes
- Type:
List
of ReviewScope - Proto-Index: 3
details
- Type:
string
(external doc) - Proto-Index: 4
report
assessment
- Type:
List
of AspectValue - Proto-Index: 6
reviewers
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class Review:
assessment: List[AspectValue]
details: str
report: Ref
review_type: str
reviewers: List[Ref]
scopes: List[ReviewScope]
ReviewScope
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
name
- Type:
string
(external doc) - Proto-Index: 2
methods
- Type:
List
ofstring
(external doc) - Proto-Index: 3
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class ReviewScope:
methods: List[str]
name: str
SocialAspect
An instance of this class describes a social aspect related to a social indicator in a process.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
activityValue
The value of the activity variable of the related indicator.
- Type:
double
(external doc) - Proto-Index: 2
comment
- Type:
string
(external doc) - Proto-Index: 3
quality
A data quality entry, e.g. (3,1,2,4,1)
.
- Type:
string
(external doc) - Proto-Index: 4
rawAmount
The raw amount of the indicator's unit of measurement (not required to be numeric currently)
- Type:
string
(external doc) - Proto-Index: 5
riskLevel
- Type: RiskLevel
- Proto-Index: 6
socialIndicator
- Type: Ref of SocialIndicator
- Proto-Index: 7
source
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class SocialAspect:
activity_value: float
comment: str
quality: str
raw_amount: str
risk_level: RiskLevel
social_indicator: Ref
source: Ref
ProductSystem
A product system describes the supply chain of a product (the functional unit) ...
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
@id
Inherited from RefEntity.@id
- Type:
string
(external doc) - Proto-Index: 2
name
Inherited from RefEntity.name
- Type:
string
(external doc) - Proto-Index: 3
description
Inherited from RefEntity.description
- Type:
string
(external doc) - Proto-Index: 4
category
Inherited from RootEntity.category
- Type:
string
(external doc) - Proto-Index: 5
lastChange
Inherited from RootEntity.lastChange
- Type:
dateTime
(external doc) - Proto-Index: 6
tags
Inherited from RootEntity.tags
- Type:
List
ofstring
(external doc) - Proto-Index: 7
version
Inherited from RootEntity.version
- Type:
string
(external doc) - Proto-Index: 8
parameterSets
A list of possible sets of parameter redefinitions for this product system.
- Type:
List
of ParameterRedefSet - Proto-Index: 10
processLinks
The process links of the product system.
- Type:
List
of ProcessLink - Proto-Index: 11
processes
The descriptors of all processes and sub-systems that are contained in the product system.
- Type:
List
of Ref - Proto-Index: 12
refExchange
The exchange of the reference processes (typically the product output) that provides the flow of the functional unit of the product system.
- Type: ExchangeRef
- Proto-Index: 13
refProcess
The descriptor of the process that provides the flow of the functional unit of the product system.
targetAmount
The flow amount of the functional unit of the product system.
- Type:
double
(external doc) - Proto-Index: 15
targetFlowProperty
The flow property in which the flow amount of the functional unit is given.
- Type: Ref of FlowProperty
- Proto-Index: 16
targetUnit
The unit in which the flow amount of the functional unit is given.
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class ProductSystem:
id: str
category: str
description: str
last_change: str
name: str
parameter_sets: List[ParameterRedefSet]
process_links: List[ProcessLink]
processes: List[Ref]
ref_exchange: ExchangeRef
ref_process: Ref
tags: List[str]
target_amount: float
target_flow_property: Ref
target_unit: Ref
version: str
JSON example
{
"@type": "ProductSystem",
"@id": "e673be33-b071-4ba2-9097-5b77a9c3ced2",
"name": "Ingot casting",
"refProcess": {
"@type": "Process",
"@id": "55fd27b1-c73d-4a76-b560-cfc461e81efd",
"name": "Ingot casting"
},
"refExchange": {
"@type": "ExchangeRef",
"internalId": 1
},
"targetAmount": 1.0,
"targetFlowProperty": {
"@type": "FlowProperty",
"@id": "93a60a56-a3c8-11da-a746-0800200b9a66",
"name": "Mass"
},
"targetUnit": {
"@type": "Unit",
"@id": "20aadc24-a391-41cf-b340-3e4529f44bde",
"name": "kg"
},
"processes": [
{
"@type": "Process",
"@id": "55fd27b1-c73d-4a76-b560-cfc461e81efd",
"name": "Ingot casting"
},
{
"@type": "Process",
"@id": "41b31d77-5223-47a1-a24a-153ac1a9f670",
"name": "Electrolysis"
}
],
"processLinks": [
{
"@type": "ProcessLink",
"provider": {
"@type": "Process",
"@id": "41b31d77-5223-47a1-a24a-153ac1a9f670",
"name": "Electrolysis"
},
"flow": {
"@type": "Flow",
"@id": "b55f8bd2-404d-4830-b053-4731e36668b9",
"name": "liquid aluminium"
},
"process": {
"@type": "Process",
"@id": "55fd27b1-c73d-4a76-b560-cfc461e81efd",
"name": "Ingot casting"
},
"exchange": {
"@type": "ExchangeRef",
"internalId": 2
}
}
]
}
ParameterRedefSet
An instance of this class is just a set of parameter redefinitions attached to a product system. It can have a name and a description. One of the parameter sets can be defined as the baseline of the product system. In the calculation the baseline set is then taken by default.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
description
A description of the parameter set.
- Type:
string
(external doc) - Proto-Index: 2
isBaseline
Indicates if this set of parameter redefinitions is the baseline for a product system.
- Type:
boolean
(external doc) - Proto-Index: 3
name
The name of the parameter set.
- Type:
string
(external doc) - Proto-Index: 4
parameters
The parameter redefinitions of this redefinition set.
- Type:
List
of ParameterRedef - Proto-Index: 5
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class ParameterRedefSet:
description: str
is_baseline: bool
name: str
parameters: List[ParameterRedef]
ProcessLink
A process link is a connection between two processes in a product system.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
exchange
The exchange of the linked process (this is useful if the linked process has multiple exchanges with the same flow that are linked to different provides, e.g. in an electricity mix).
- Type: ExchangeRef
- Proto-Index: 2
flow
The descriptor of the flow that is exchanged between the two processes.
process
The descriptor of the process that is linked to the provider.
provider
A reference to a process, product system, or result that provides the product or a waste (treatment) flow.
- Type: Ref
- Proto-Index: 5
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class ProcessLink:
exchange: ExchangeRef
flow: Ref
process: Ref
provider: Ref
JSON example
{
"@type": "ProcessLink",
"provider": {
"@type": "Process",
"@id": "41b31d77-5223-47a1-a24a-153ac1a9f670",
"name": "Electrolysis"
},
"flow": {
"@type": "Flow",
"@id": "b55f8bd2-404d-4830-b053-4731e36668b9",
"name": "liquid aluminium"
},
"process": {
"@type": "Process",
"@id": "55fd27b1-c73d-4a76-b560-cfc461e81efd",
"name": "Ingot casting"
},
"exchange": {
"@type": "ExchangeRef",
"internalId": 1
}
}
Project
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
@id
Inherited from RefEntity.@id
- Type:
string
(external doc) - Proto-Index: 2
name
Inherited from RefEntity.name
- Type:
string
(external doc) - Proto-Index: 3
description
Inherited from RefEntity.description
- Type:
string
(external doc) - Proto-Index: 4
category
Inherited from RootEntity.category
- Type:
string
(external doc) - Proto-Index: 5
lastChange
Inherited from RootEntity.lastChange
- Type:
dateTime
(external doc) - Proto-Index: 6
tags
Inherited from RootEntity.tags
- Type:
List
ofstring
(external doc) - Proto-Index: 7
version
Inherited from RootEntity.version
- Type:
string
(external doc) - Proto-Index: 8
impactMethod
- Type: Ref of ImpactMethod
- Proto-Index: 10
isWithCosts
- Type:
boolean
(external doc) - Proto-Index: 11
isWithRegionalization
- Type:
boolean
(external doc) - Proto-Index: 12
nwSet
- Type: NwSet
- Proto-Index: 13
variants
- Type:
List
of ProjectVariant - Proto-Index: 14
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class Project:
id: str
category: str
description: str
impact_method: Ref
is_with_costs: bool
is_with_regionalization: bool
last_change: str
name: str
nw_set: NwSet
tags: List[str]
variants: List[ProjectVariant]
version: str
ProjectVariant
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
allocationMethod
- Type: AllocationType
- Proto-Index: 2
amount
- Type:
double
(external doc) - Proto-Index: 3
description
- Type:
string
(external doc) - Proto-Index: 4
isDisabled
- Type:
boolean
(external doc) - Proto-Index: 5
name
- Type:
string
(external doc) - Proto-Index: 6
parameterRedefs
- Type:
List
of ParameterRedef - Proto-Index: 7
productSystem
- Type: Ref of ProductSystem
- Proto-Index: 8
unit
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class ProjectVariant:
allocation_method: AllocationType
amount: float
description: str
is_disabled: bool
name: str
parameter_redefs: List[ParameterRedef]
product_system: Ref
unit: Ref
Result
A calculation result of a product system.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
@id
Inherited from RefEntity.@id
- Type:
string
(external doc) - Proto-Index: 2
name
Inherited from RefEntity.name
- Type:
string
(external doc) - Proto-Index: 3
description
Inherited from RefEntity.description
- Type:
string
(external doc) - Proto-Index: 4
category
Inherited from RootEntity.category
- Type:
string
(external doc) - Proto-Index: 5
lastChange
Inherited from RootEntity.lastChange
- Type:
dateTime
(external doc) - Proto-Index: 6
tags
Inherited from RootEntity.tags
- Type:
List
ofstring
(external doc) - Proto-Index: 7
version
Inherited from RootEntity.version
- Type:
string
(external doc) - Proto-Index: 8
flowResults
An array of FlowResult
objects.
- Type:
List
of FlowResult - Proto-Index: 10
impactMethod
A reference to the ImpactMethod
that was used to calculate the result.
- Type: Ref of ImpactMethod
- Proto-Index: 11
impactResults
An array of ImpactResult
objects.1
- Type:
List
of ImpactResult - Proto-Index: 12
productSystem
A reference to the ProductSystem
from which this result was calculated.
- Type: Ref of ProductSystem
- Proto-Index: 13
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class Result:
id: str
category: str
description: str
flow_results: List[FlowResult]
impact_method: Ref
impact_results: List[ImpactResult]
last_change: str
name: str
product_system: Ref
tags: List[str]
version: str
FlowResult
A calculation result of a flow.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
amount
- Type:
double
(external doc) - Proto-Index: 2
description
- Type:
string
(external doc) - Proto-Index: 3
flow
The flow reference.
flowProperty
The flow property in which the amount of the result is given. If missing, the amount is expected to be given in the reference flow property of the flow.
- Type: Ref of FlowProperty
- Proto-Index: 5
isInput
Indicates whether the flow is an input or not.
- Type:
boolean
(external doc) - Proto-Index: 6
isRefFlow
true
if this is the quantitative reference flow of the result.
- Type:
boolean
(external doc) - Proto-Index: 7
location
The location of this flow result in case of a regionalized result.
unit
The unit in which the amount of the result is given. If missing, the amount is expected to be given in the reference unit of the flow.
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class FlowResult:
amount: float
description: str
flow: Ref
flow_property: Ref
is_input: bool
is_ref_flow: bool
location: Ref
unit: Ref
ImpactResult
A calculation result of an impact assessment category.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
amount
The value the result.
- Type:
double
(external doc) - Proto-Index: 2
description
- Type:
string
(external doc) - Proto-Index: 3
indicator
The impact assessment category.
- Type: Ref of ImpactCategory
- Proto-Index: 4
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class ImpactResult:
amount: float
description: str
indicator: Ref
SocialIndicator
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
@id
Inherited from RefEntity.@id
- Type:
string
(external doc) - Proto-Index: 2
name
Inherited from RefEntity.name
- Type:
string
(external doc) - Proto-Index: 3
description
Inherited from RefEntity.description
- Type:
string
(external doc) - Proto-Index: 4
category
Inherited from RootEntity.category
- Type:
string
(external doc) - Proto-Index: 5
lastChange
Inherited from RootEntity.lastChange
- Type:
dateTime
(external doc) - Proto-Index: 6
tags
Inherited from RootEntity.tags
- Type:
List
ofstring
(external doc) - Proto-Index: 7
version
Inherited from RootEntity.version
- Type:
string
(external doc) - Proto-Index: 8
activityQuantity
The quantity of the activity variable.
- Type: Ref of FlowProperty
- Proto-Index: 10
activityUnit
The unit of the activity variable.
activityVariable
The name of the activity variable of the indicator.
- Type:
string
(external doc) - Proto-Index: 12
evaluationScheme
Documentation of the evaluation scheme of the indicator.
- Type:
string
(external doc) - Proto-Index: 13
unitOfMeasurement
The unit in which the indicator is measured.
- Type:
string
(external doc) - Proto-Index: 14
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class SocialIndicator:
id: str
activity_quantity: Ref
activity_unit: Ref
activity_variable: str
category: str
description: str
evaluation_scheme: str
last_change: str
name: str
tags: List[str]
unit_of_measurement: str
version: str
JSON example
{
"@type": "SocialIndicator",
"@id": "685bea55-61bf-44e5-87c3-71038cebd0b0",
"name": "Gender wage gap",
"category": "Discrimination",
"activityVariable": "Worker hours",
"activityQuantity": {
"@type": "FlowProperty",
"@id": "c0447923-0e60-4b3c-97c2-a86dddd9eea5",
"name": "Duration"
},
"activityUnit": {
"@type": "Unit",
"@id": "227a54d9-44e7-468c-b8bb-f2dd1ae68c7a",
"name": "h"
},
"unitOfMeasurement": "%",
"evaluationScheme": "0% = no risk; 0% - <5% and 0% - >-5%= very low risk; 5% - <10% and -5% - >-10% = low risk; 10% - <20% and -10% - >-20% = medium risk; 20% - <30% and -20% - >-30% = high risk; >=30% and <=-30 = very high risk; n.a. = no data"
}
Source
A source is a literature reference.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
@id
Inherited from RefEntity.@id
- Type:
string
(external doc) - Proto-Index: 2
name
Inherited from RefEntity.name
- Type:
string
(external doc) - Proto-Index: 3
description
Inherited from RefEntity.description
- Type:
string
(external doc) - Proto-Index: 4
category
Inherited from RootEntity.category
- Type:
string
(external doc) - Proto-Index: 5
lastChange
Inherited from RootEntity.lastChange
- Type:
dateTime
(external doc) - Proto-Index: 6
tags
Inherited from RootEntity.tags
- Type:
List
ofstring
(external doc) - Proto-Index: 7
version
Inherited from RootEntity.version
- Type:
string
(external doc) - Proto-Index: 8
externalFile
A direct link (relative or absolute URL) to the source file.
- Type:
string
(external doc) - Proto-Index: 10
textReference
The full text reference of the source.
- Type:
string
(external doc) - Proto-Index: 11
url
A URL that points to the source.
- Type:
string
(external doc) - Proto-Index: 12
year
The publication year of the source.
- Type:
optional
integer
(external doc) - Proto-Index: 13
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class Source:
id: str
category: str
description: str
external_file: str
last_change: str
name: str
tags: List[str]
text_reference: str
url: str
version: str
year: int
UnitGroup
A group of units that can be converted into each other.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
@id
Inherited from RefEntity.@id
- Type:
string
(external doc) - Proto-Index: 2
name
Inherited from RefEntity.name
- Type:
string
(external doc) - Proto-Index: 3
description
Inherited from RefEntity.description
- Type:
string
(external doc) - Proto-Index: 4
category
Inherited from RootEntity.category
- Type:
string
(external doc) - Proto-Index: 5
lastChange
Inherited from RootEntity.lastChange
- Type:
dateTime
(external doc) - Proto-Index: 6
tags
Inherited from RootEntity.tags
- Type:
List
ofstring
(external doc) - Proto-Index: 7
version
Inherited from RootEntity.version
- Type:
string
(external doc) - Proto-Index: 8
defaultFlowProperty
Some LCA data formats do not have the concept of flow properties or quantities. This field provides a default link to a flow property for units that are contained in this group.
- Type: Ref of FlowProperty
- Proto-Index: 10
units
The units of the unit group.
- Type:
List
of Unit - Proto-Index: 11
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class UnitGroup:
id: str
category: str
default_flow_property: Ref
description: str
last_change: str
name: str
tags: List[str]
units: List[Unit]
version: str
JSON example
{
"@type": "UnitGroup",
"@id": "93a60a57-a3c8-11da-a746-0800200c9a66",
"name": "Units of energy",
"category": "Technical unit groups",
"defaultFlowProperty": {
"@type": "FlowProperty",
"@id": "f6811440-ee37-11de-8a39-0800200c9a66",
"name": "Energy"
},
"units": [
{
"@type": "Unit",
"@id": "52765a6c-3896-43c2-b2f4-c679acf13efe",
"name": "MJ",
"description": "Megajoule",
"isRefUnit": true,
"conversionFactor": 1.0
},
{
"@type": "Unit",
"@id": "86ad2244-1f0e-4912-af53-7865283103e4",
"name": "kWh",
"description": "Kilowatt times hour",
"conversionFactor": 3.6
}
]
}
AspectValue
This is basically just a key-value pair, used to describe documentation aspects.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
aspect
- Type:
string
(external doc) - Proto-Index: 2
value
- Type:
string
(external doc) - Proto-Index: 3
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class AspectValue:
aspect: str
value: str
Entity
The most generic type of the openLCA data model.
Properties
@type
The type of the entity. This field is only required when different types can occur in a given context (e.g. in a process link when a product input of a process can be linked to the output of process or a sub-system).
- Type:
string
(external doc) - Proto-Index: 1
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class Entity:
ExchangeRef
An instance of this class describes a reference to an exchange in a process. When we reference such an exchange we only need the information to indentify that exchange unambiguously in a process.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
internalId
The internal ID of the exchange.
- Type:
int
(external doc) - Proto-Index: 2
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class ExchangeRef:
internal_id: int
LinkingConfig
A configuration for auto-completion of product systems.
Properties
providerLinking
Defines how default providers of linkable product inputs and waste outputs are handled.
- Type: ProviderLinking
- Proto-Index: 1
preferUnitProcesses
When there are multiple possible providers for linking product inputs or waste inputs, prefer unit processes when this property is set to true
, and system processes otherwise.
- Type:
boolean
(external doc) - Proto-Index: 2
cutoff
Applies a cutoff in the linking process. The cutoff is applied like the scaling factor in a sequential calculation. This only makes sense in a large mono-unit technosphere (e.g. input-output databases).
- Type:
optional
double
(external doc) - Proto-Index: 3
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class LinkingConfig:
cutoff: float
prefer_unit_processes: bool
provider_linking: ProviderLinking
NwSet
A normalization and weighting set.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
@id
Inherited from RefEntity.@id
- Type:
string
(external doc) - Proto-Index: 2
name
Inherited from RefEntity.name
- Type:
string
(external doc) - Proto-Index: 3
description
Inherited from RefEntity.description
- Type:
string
(external doc) - Proto-Index: 4
factors
The list of normalization and weighting factors of this set.
- Type:
List
of NwFactor - Proto-Index: 5
weightedScoreUnit
This is the optional unit of the (normalized and) weighted score when this normalization and weighting set was applied on a LCIA result.
- Type:
string
(external doc) - Proto-Index: 6
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class NwSet:
id: str
description: str
factors: List[NwFactor]
name: str
weighted_score_unit: str
NwFactor
A normalization and weighting factor of a NwSet
related to an impact category. Depending on the purpose of the NwSet
(normalization, weighting, or both) the normalization and weighting factor can be present or not.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
impactCategory
- Type: Ref of ImpactCategory
- Proto-Index: 2
normalisationFactor
- Type:
optional
double
(external doc) - Proto-Index: 3
weightingFactor
- Type:
optional
double
(external doc) - Proto-Index: 4
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class NwFactor:
impact_category: Ref
normalisation_factor: float
weighting_factor: float
ParameterRedef
A redefinition of a parameter in a product system.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
context
The context of the paramater (a process or LCIA method). If no context is provided it is assumed that this is a redefinition of a global parameter.
- Type: Ref
- Proto-Index: 2
description
A description of this parameter redefinition.
- Type:
string
(external doc) - Proto-Index: 3
isProtected
- Type:
boolean
(external doc) - Proto-Index: 4
name
The name of the redefined parameter. Note that parameter names are used in formulas so they need to follow specific syntax rules. A redefinition replaces a bound parameter in a specific context and thus has to exactly match the respective name.
- Type:
string
(external doc) - Proto-Index: 5
uncertainty
An uncertainty distribution for the redefined parameter value.
- Type: Uncertainty
- Proto-Index: 6
value
The value of the redefined parameter.
- Type:
double
(external doc) - Proto-Index: 7
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class ParameterRedef:
context: Ref
description: str
is_protected: bool
name: str
uncertainty: Uncertainty
value: float
Ref
A Ref
is a reference to some entity. When serializing an entity (e.g. a Process
) that references another standalone entity (e.g. a Flow
in an Exchange
) we do not want to write the complete referenced entity into the serialized JSON object but just a reference. However, the reference contains some meta-data like name, category path etc. that are useful to display.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
@id
Inherited from RefEntity.@id
- Type:
string
(external doc) - Proto-Index: 2
name
Inherited from RefEntity.name
- Type:
string
(external doc) - Proto-Index: 3
description
Inherited from RefEntity.description
- Type:
string
(external doc) - Proto-Index: 4
category
The category path of the referenced entity, e.g. Elementary flows/Emissions to air/unspecified
.
- Type:
string
(external doc) - Proto-Index: 5
refUnit
This field is valid for references to entities which can have a (reference) unit, like flows, impact categories, or flow properties.
- Type:
string
(external doc) - Proto-Index: 6
location
This field is only valid for references of processes or flows and contains the location name or code of that respective process or flow.
- Type:
string
(external doc) - Proto-Index: 7
flowType
In case of a reference to a flow, this field can contain the type of flow that is referenced.
- Type: FlowType
- Proto-Index: 8
processType
In case of a reference to a process, this fiel can contain the type of process that is referenced.
- Type: ProcessType
- Proto-Index: 9
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class Ref:
id: str
category: str
description: str
flow_type: FlowType
location: str
name: str
process_type: ProcessType
ref_unit: str
RefEntity
A RefEntity
is an entity that can be identified by a reference ID (or UUID). In most cases this is a stand-alone entity (RootEntity
) but there are also entities (e.g. Unit
, NwSet
) that need a unique ID, e.g. for reference data lists or mapping files.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
@id
The reference ID (or UUID) of this entity.
- Type:
string
(external doc) - Proto-Index: 2
name
The name of the entity.
- Type:
string
(external doc) - Proto-Index: 3
description
The description of the entity.
- Type:
string
(external doc) - Proto-Index: 4
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class RefEntity:
id: str
description: str
name: str
RootEntity
A RootEntity
is a stand-alone data set (like a Flow
or Process
).
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
@id
Inherited from RefEntity.@id
- Type:
string
(external doc) - Proto-Index: 2
name
Inherited from RefEntity.name
- Type:
string
(external doc) - Proto-Index: 3
description
Inherited from RefEntity.description
- Type:
string
(external doc) - Proto-Index: 4
category
A full path of the category. Forward slashes are used to separate the segments of this path, e.g. Elementary flows/emissions/air/unspecified
.
- Type:
string
(external doc) - Proto-Index: 5
lastChange
The timestamp when the entity was changed the last time.
- Type:
dateTime
(external doc) - Proto-Index: 6
tags
A list of optional tags. A tag is just a string which should not contain commas (and other special characters).
- Type:
List
ofstring
(external doc) - Proto-Index: 7
version
A version number in MAJOR.MINOR.PATCH format where the MINOR and PATCH fields are optional and the fields may have leading zeros (so 01.00.00 is the same as 1.0.0 or 1).
- Type:
string
(external doc) - Proto-Index: 8
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class RootEntity:
id: str
category: str
description: str
last_change: str
name: str
tags: List[str]
version: str
Uncertainty
Defines the parameter values of an uncertainty distribution. Depending on the uncertainty distribution type different parameters could be used.
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
distributionType
The uncertainty distribution type
- Type: UncertaintyType
- Proto-Index: 2
geomMean
The geometric mean value (used for log-normal distributions).
- Type:
optional
double
(external doc) - Proto-Index: 3
geomSd
The geometric standard deviation (used for log-normal distributions).
- Type:
optional
double
(external doc) - Proto-Index: 4
maximum
The maximum value (used for uniform and triangle distributions).
- Type:
optional
double
(external doc) - Proto-Index: 5
mean
The arithmetic mean (used for normal distributions).
- Type:
optional
double
(external doc) - Proto-Index: 6
minimum
The minimum value (used for uniform and triangle distributions).
- Type:
optional
double
(external doc) - Proto-Index: 7
mode
The most likely value (used for triangle distributions).
- Type:
optional
double
(external doc) - Proto-Index: 8
sd
The arithmetic standard deviation (used for normal distributions).
- Type:
optional
double
(external doc) - Proto-Index: 9
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class Uncertainty:
distribution_type: UncertaintyType
geom_mean: float
geom_sd: float
maximum: float
mean: float
minimum: float
mode: float
sd: float
JSON example
{
"@type": "Uncertainty",
"distributionType": "NORMAL_DISTRIBUTION",
"mean": 10.4,
"sd": 1
}
Unit
An unit of measure
Properties
@type
Inherited from Entity.@type
- Type:
string
(external doc) - Proto-Index: 1
@id
Inherited from RefEntity.@id
- Type:
string
(external doc) - Proto-Index: 2
name
Inherited from RefEntity.name
- Type:
string
(external doc) - Proto-Index: 3
description
Inherited from RefEntity.description
- Type:
string
(external doc) - Proto-Index: 4
conversionFactor
The conversion factor to the reference unit of the unit group to which this unit belongs.
- Type:
double
(external doc) - Proto-Index: 5
isRefUnit
Indicates whether the unit is the reference unit of the unit group to which this unit belongs. If it is the reference unit the conversion factor must be 1.0. There should be always only one reference unit in a unit group. The reference unit is used to convert amounts given in one unit to amounts given in another unit of the respective unit group.
- Type:
boolean
(external doc) - Proto-Index: 6
synonyms
A list of synonyms for the unit.
- Type:
List
ofstring
(external doc) - Proto-Index: 7
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class Unit:
id: str
conversion_factor: float
description: str
is_ref_unit: bool
name: str
synonyms: List[str]
JSON example
{
"@type": "Unit",
"@id": "52765a6c-3896-43c2-b2f4-c679acf13efe",
"name": "MJ",
"description": "Megajoule",
"isRefUnit": true,
"conversionFactor": 1.0
}
AllocationType
An enumeration type for allocation methods. This type is used to define the type of an AllocationFactor
, the default allocation method of a multi-functional Process
, or the allocation method in a CalculationSetup
.
Items
PHYSICAL_ALLOCATION
- Proto-Index: 1
ECONOMIC_ALLOCATION
- Proto-Index: 2
CAUSAL_ALLOCATION
- Proto-Index: 3
USE_DEFAULT_ALLOCATION
- Proto-Index: 4
NO_ALLOCATION
- Proto-Index: 5
Direction
Items
INPUT
- Proto-Index: 1
OUTPUT
- Proto-Index: 2
EpdType
Items
GENERIC_DATASET
- Proto-Index: 1
REPRESENTATIVE_DATASET
- Proto-Index: 2
AVERAGE_DATASET
- Proto-Index: 3
SPECIFIC_DATASET
- Proto-Index: 4
TEMPLATE_DATASET
- Proto-Index: 5
FlowPropertyType
An enumeration of flow property types.
Items
ECONOMIC_QUANTITY
- Proto-Index: 1
PHYSICAL_QUANTITY
- Proto-Index: 2
FlowType
The basic flow types.
Items
ELEMENTARY_FLOW
- Proto-Index: 1
PRODUCT_FLOW
- Proto-Index: 2
WASTE_FLOW
- Proto-Index: 3
ModelType
An enumeration of the root entity types.
Items
ACTOR
- Proto-Index: 1
CATEGORY
- Proto-Index: 2
CURRENCY
- Proto-Index: 3
DQ_SYSTEM
- Proto-Index: 4
EPD
- Proto-Index: 5
FLOW
- Proto-Index: 6
FLOW_PROPERTY
- Proto-Index: 7
IMPACT_CATEGORY
- Proto-Index: 8
IMPACT_METHOD
- Proto-Index: 9
LOCATION
- Proto-Index: 10
PARAMETER
- Proto-Index: 11
PROCESS
- Proto-Index: 12
PRODUCT_SYSTEM
- Proto-Index: 13
PROJECT
- Proto-Index: 14
RESULT
- Proto-Index: 15
SOCIAL_INDICATOR
- Proto-Index: 16
SOURCE
- Proto-Index: 17
UNIT_GROUP
- Proto-Index: 18
ParameterScope
The possible scopes of parameters. Parameters can be defined globally, in processes, or impact categories. They can be redefined in calculation setups on the project and product system level, but the initial definition is always only global, in a process, or an LCIA category.
Items
PROCESS_SCOPE
Indicates that the evaluation scope of a parameter is the process where it is defined.
- Proto-Index: 1
IMPACT_SCOPE
Indicates that the evaluation scope of a parameter is the impact category where it is defined.
- Proto-Index: 2
GLOBAL_SCOPE
Indicates that the evaluation scope of a parameter is the global scope.
- Proto-Index: 3
ProcessType
Items
LCI_RESULT
- Proto-Index: 1
UNIT_PROCESS
- Proto-Index: 2
ProviderLinking
Indicates how default providers of product inputs or waste outputs in processes should be considered in the linking of a product system.
Items
IGNORE_DEFAULTS
Default provider settings are ignored in the linking process. This means that the linker can also select another provider even when a default provider is set.
- Proto-Index: 1
PREFER_DEFAULTS
When a default provider is set for a product input or waste output the linker will always select this process. For other exchanges it will select the provider according to its other rules.
- Proto-Index: 2
ONLY_DEFAULTS
Means that links should be created only for product inputs or waste outputs where a default provider is defined which are then linked exactly to this provider.
- Proto-Index: 3
RiskLevel
Items
NO_OPPORTUNITY
- Proto-Index: 1
HIGH_OPPORTUNITY
- Proto-Index: 2
MEDIUM_OPPORTUNITY
- Proto-Index: 3
LOW_OPPORTUNITY
- Proto-Index: 4
NO_RISK
- Proto-Index: 5
VERY_LOW_RISK
- Proto-Index: 6
LOW_RISK
- Proto-Index: 7
MEDIUM_RISK
- Proto-Index: 8
HIGH_RISK
- Proto-Index: 9
VERY_HIGH_RISK
- Proto-Index: 10
NO_DATA
- Proto-Index: 11
NOT_APPLICABLE
- Proto-Index: 12
UncertaintyType
Enumeration of uncertainty distribution types that can be used in exchanges, parameters, LCIA factors, etc.
Items
LOG_NORMAL_DISTRIBUTION
- Proto-Index: 1
NORMAL_DISTRIBUTION
- Proto-Index: 2
TRIANGLE_DISTRIBUTION
- Proto-Index: 3
UNIFORM_DISTRIBUTION
- Proto-Index: 4
CalculationSetup
Properties
target
The calculation target. This can be a reference to a process or product system.
- Type: Ref
- Proto-Index: 1
impactMethod
The impact assessment method that should be used for the calculation.
- Type: Ref of ImpactMethod
- Proto-Index: 2
nwSet
A reference to a normalization and weighting set.
parameters
A list of parameter redefinitions that should be applied in the calculation.
- Type:
List
of ParameterRedef - Proto-Index: 4
allocation
The allocation method that should be applied.
- Type: AllocationType
- Proto-Index: 5
withCosts
Defines if cost results should be also calculated.
- Type:
boolean
(external doc) - Proto-Index: 6
withRegionalization
Defines if regionalization should be applied.
- Type:
boolean
(external doc) - Proto-Index: 7
amount
The amount of the reference flow of the calculation target for to which the result should be scaled.
- Type:
double
(external doc) - Proto-Index: 8
unit
The unit of the target amount.
flowProperty
The flow property of the target amount.
- Type: Ref of FlowProperty
- Proto-Index: 10
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class CalculationSetup:
allocation: AllocationType
amount: float
flow_property: Ref
impact_method: Ref
nw_set: Ref
parameters: List[ParameterRedef]
target: Ref
unit: Ref
with_costs: bool
with_regionalization: bool
CostValue
A value of a cost result.
Properties
currency
amount
- Type:
double
(external doc) - Proto-Index: 2
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class CostValue:
amount: float
currency: Ref
EnviFlow
An intervention flow.
Properties
flow
The reference to the flow.
location
In case of regionalized calculations, an EnviFlow
is a pair of flow and location.
isInput
Indicates whether this flow is an input or not.
- Type:
boolean
(external doc) - Proto-Index: 4
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class EnviFlow:
flow: Ref
is_input: bool
location: Ref
EnviFlowValue
A result related to an intervention flow.
Properties
enviFlow
- Type: EnviFlow
- Proto-Index: 1
amount
- Type:
double
(external doc) - Proto-Index: 2
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class EnviFlowValue:
amount: float
envi_flow: EnviFlow
ImpactValue
A value linked to an impact assessment category.
Properties
impactCategory
- Type: Ref of ImpactCategory
- Proto-Index: 1
amount
- Type:
double
(external doc) - Proto-Index: 2
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class ImpactValue:
amount: float
impact_category: Ref
ResultState
Properties
@id
The ID of the result. This can be used to query the next state or to query the result when it is ready.
- Type:
string
(external doc) - Proto-Index: 1
isReady
true
if the result is ready.
- Type:
boolean
(external doc) - Proto-Index: 2
isScheduled
true
if the result is scheduled for calculation but not ready yet.
- Type:
boolean
(external doc) - Proto-Index: 3
error
Contains an error message when the calculation of the result failed.
- Type:
string
(external doc) - Proto-Index: 4
time
The time when the state was obtained as Unix time stamp (see https://www.unixtimestamp.com/
).
- Type:
int
(external doc) - Proto-Index: 5
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class ResultState:
id: str
error: str
is_ready: bool
is_scheduled: bool
time: int
SankeyEdge
An edge (link) between two nodes in a [SankeyGraph]
Properties
nodeIndex
The index of node, where the product (waste) flow of the provider node is an input (output).
- Type:
int
(external doc) - Proto-Index: 1
providerIndex
The index of the node, that produces (treats) the linked product (waste), thus has it as an output (input)
- Type:
int
(external doc) - Proto-Index: 2
upstreamShare
The share of the total result of the provider node that is related to this link.
- Type:
double
(external doc) - Proto-Index: 3
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class SankeyEdge:
node_index: int
provider_index: int
upstream_share: float
SankeyGraph
A data structure that contains elements for a Sankey diagram.
Properties
rootIndex
The index of the node that represents the quantitative reference of the graph. In order to create and layout a Sankey diagram, an LCA system is typically traversed in breadth-first order. When back-links of cycles in this traversal order are ignored, the (sub-) graph created by this traversal is a directed acyclic graph (DAG) with this root.
- Type:
int
(external doc) - Proto-Index: 1
nodes
The nodes of the graph.
- Type:
List
of SankeyNode - Proto-Index: 2
edges
The edges of the graph.
- Type:
List
of SankeyEdge - Proto-Index: 3
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class SankeyGraph:
edges: List[SankeyEdge]
nodes: List[SankeyNode]
root_index: int
SankeyNode
A node in a [SankeyGraph]
Properties
index
The (matrix) index of the node. This is used as the identifier of this node in the graph. For each linked technosphere flow in the system there can be only one node in the graph.
- Type:
int
(external doc) - Proto-Index: 1
techFlow
The process-product or process-waste flow described by this node.
- Type: TechFlow
- Proto-Index: 2
directResult
The direct contribution of the production (treatment) of the product (waste) flow described by this node to the total result of the system.
- Type:
double
(external doc) - Proto-Index: 3
totalResult
The total result (upstream and direct) related to the production (treatment) of the product (waste) flow described by this node. Note that this product (waste) flow could be an input (output) of several processes in the system and all these instances are aggregated to a single node here. This is different than in the upstream contribution tree where these instances can be unrolled into multiple nodes (see [UpstreamNode]).
- Type:
double
(external doc) - Proto-Index: 4
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class SankeyNode:
direct_result: float
index: int
tech_flow: TechFlow
total_result: float
SankeyRequest
A configuration request for calculating a [SankeyGraph] for a result.
Properties
impactCategory
The reference to the impact category if a graph based on the results of that impact category should be returned.
- Type:
optional
Ref of ImpactCategory - Proto-Index: 1
enviFlow
The reference to the intervention flow if a graph based on the results of that flow should be returned.
- Type:
optional
EnviFlow - Proto-Index: 2
forCosts
If set to true, the returned graph will be based on the life cycle costing results of the system.
- Type:
optional
boolean
(external doc) - Proto-Index: 3
minShare
A cut-off rule based on the minimum result share of a node, that is the total result of that node (including direct and upstream contributions) divided by the total result of the system.
- Type:
optional
double
(external doc) - Proto-Index: 4
maxNodes
The maximum number of nodes that should be contained in the returned graph.
- Type:
optional
int
(external doc) - Proto-Index: 5
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class SankeyRequest:
envi_flow: EnviFlow
for_costs: bool
impact_category: Ref
max_nodes: int
min_share: float
TechFlow
A technosphere flow. These are flows that can be linked to product inputs are waste outputs. A technosphere flow has a provider, which can be a Process
, ProductSystem
, or Result
.
Properties
provider
The reference to the provider of the flow.
- Type: Ref
- Proto-Index: 2
flow
The reference to the flow.
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class TechFlow:
flow: Ref
provider: Ref
TechFlowValue
A value related to a technosphere flow.
Properties
techFlow
- Type: TechFlow
- Proto-Index: 1
amount
- Type:
double
(external doc) - Proto-Index: 2
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class TechFlowValue:
amount: float
tech_flow: TechFlow
UpstreamNode
A node in an upstream tree.
Properties
techFlow
The process (and product or waste flow) to which this upstream result is related.
- Type: TechFlow
- Proto-Index: 1
result
The total result at the point of the supply chain represented by this node. This includes upstream and direct contributions.
- Type:
double
(external doc) - Proto-Index: 2
directContribution
The direct contribution of the process at this point of the supply chain.
- Type:
double
(external doc) - Proto-Index: 3
requiredAmount
The required amount of the process product that is needed at this point of the supply chain to fulfill the demand of the calculated system. This value is given in the reference unit of the respective product flow.
- Type:
double
(external doc) - Proto-Index: 4
Python class stub
The snippet below shows the names of the properties of the corresponding Python class of the olca-schema package. Note that this is not the full class definition but just shows the names of the class and its properties.
@dataclass
class UpstreamNode:
direct_contribution: float
required_amount: float
result: float
tech_flow: TechFlow