@hestia-earth/schema
Version:
Hestia Schema
274 lines (273 loc) • 10.2 kB
TypeScript
import { JSON, JSONLD, NodeType, SchemaType } from './types';
import { Organisation } from './Organisation';
import { Cycle } from './Cycle';
import { Site } from './Site';
import { Term } from './Term';
import { Source } from './Source';
import { Indicator } from './Indicator';
import { TermTermType } from './Term';
export declare enum ImpactAssessmentAllocationMethod {
economic = "economic",
energy = "energy",
mass = "mass",
none = "none",
noneRequired = "noneRequired",
systemExpansion = "systemExpansion"
}
/**
* Contains all the TermTermType with override on the ImpactAssessment.
* Note: it does not contain the default TermTermType on related Blank Nodes.
*/
export declare const impactAssessmentTermTermType: {
product: TermTermType[];
country: TermTermType[];
region: TermTermType[];
emissionsResourceUse: {
term: TermTermType[];
};
impacts: {
term: TermTermType[];
};
endpoints: {
term: TermTermType[];
};
all: TermTermType[];
};
/**
* The emissions, resource uses, and environmental impacts created during the production of one unit of a [Product] from a [Cycle]. The functional unit is defined by the units of the [product](#product). If there are more than one Product in the Cycle, allocation is used to apportion these impacts across the Products.
*/
export declare class ImpactAssessment extends JSON<SchemaType.ImpactAssessment> {
/**
* The name of the Impact Assessment.
*/
name?: string;
/**
* The version of the Impact Assessment.
*/
version?: string;
/**
* A text description of the version of the Impact Assessment.
*/
versionDetails?: string;
/**
* A reference to the node describing the [Organisation] that produced the Product.
*/
organisation?: Organisation;
/**
* A reference to the node describing the production [Cycle].
*/
cycle?: Cycle;
/**
* The end date or year of production in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format (YYYY-MM-DD, YYYY-MM, or YYYY).
*/
endDate?: string;
/**
* The start date of production in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format (YYYY-MM-DD, YYYY-MM, or YYYY).
*/
startDate?: string;
/**
* A reference to the node describing the [Site] where production occurred.
*/
site?: Site;
/**
* The country name from the [Glossary](/glossary?termType=region), following [GADM](https://gadm.org/) naming conventions.
*/
country?: Term;
/**
* The lowest level [GADM](https://gadm.org/) region available following the naming convention used in the [Glossary](/glossary?termType=region).
*/
region?: Term;
/**
* A reference to the [Term] describing the [Product] produced during the production [Cycle], which is the target of this Impact Assessment.
*/
product?: Term;
/**
* The quantity of the [product](#product) that this Impact Assessment is expressed per. The units are determined by the Term of the product (e.g., 1kg for [Wheat, grain](/term/wheatGrain), or 1 head for a [Pig](/term/pig)).
*/
functionalUnitQuantity?: number;
/**
* The method used to allocate environmental impacts between [Products](./Product).
*/
allocationMethod?: ImpactAssessmentAllocationMethod;
/**
* The [Source] for the data in the Impact Assessment. Not required (but reccomended) if [dataPrivate](#dataPrivate) = true.
*/
source?: Source;
/**
* A list of emissions and resource uses.
*/
emissionsResourceUse?: Indicator[];
/**
* The mid-point environmental impact [Indicators](./Indicator). These are calculated from [emissions](#emissions) and [resourceUse](#resourceUse) by applying characterisation factors to generate a [characterised impact indicator](/glossary?termType=characterisedIndicator).
*/
impacts?: Indicator[];
/**
* The end-point environmental impact [Indicators](./Indicator). These are calculated from the mid-point [impacts](#impacts) by applying characterisation factors to generate an [end-point impact indicator](/glossary?termType=endpointIndicator).
*/
endpoints?: Indicator[];
/**
* If the [Cycle](#cycle) has an organic label. Used by the aggregation engine only.
*/
organic?: boolean;
/**
* If the [Cycle](#cycle) was irrigated. Used by the aggregation engine only.
*/
irrigated?: boolean;
/**
* If this node was autogenerated during upload.
*/
autoGenerated?: boolean;
/**
* The identifier for these data in the source database (e.g. if the data were converted from openLCA or ecoinvent, the id field from that database).
*/
originalId?: string;
/**
* The version of the schema when these data were created.
*/
schemaVersion?: string;
/**
* A list of fields that have been added to the original dataset.
*/
added?: (string)[];
/**
* A list of versions of the model used to add these fields.
*/
addedVersion?: (string)[];
/**
* A list of fields that have been updated on the original dataset.
*/
updated?: (string)[];
/**
* A list of versions of the model used to update these fields.
*/
updatedVersion?: (string)[];
/**
* If this Cycle has been 'aggregated' using data from multiple [Cycles](./Cycle).
*/
aggregated?: boolean;
/**
* A version of the aggregation engine corresponding to this Cycle.
*/
aggregatedVersion?: string;
/**
* If these data stored in this file are private.
*/
dataPrivate?: boolean;
}
/**
* The emissions, resource uses, and environmental impacts created during the production of one unit of a [Product] from a [Cycle]. The functional unit is defined by the units of the [product](#product). If there are more than one Product in the Cycle, allocation is used to apportion these impacts across the Products.
*/
export interface IImpactAssessmentJSONLD extends JSONLD<NodeType.ImpactAssessment> {
/**
* The version of the Impact Assessment.
*/
version?: string;
/**
* A text description of the version of the Impact Assessment.
*/
versionDetails?: string;
/**
* A reference to the node describing the [Organisation] that produced the Product.
*/
organisation?: Organisation;
/**
* A reference to the node describing the production [Cycle].
*/
cycle?: Cycle;
/**
* The end date or year of production in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format (YYYY-MM-DD, YYYY-MM, or YYYY).
*/
endDate?: string;
/**
* The start date of production in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format (YYYY-MM-DD, YYYY-MM, or YYYY).
*/
startDate?: string;
/**
* A reference to the node describing the [Site] where production occurred.
*/
site?: Site;
/**
* The country name from the [Glossary](/glossary?termType=region), following [GADM](https://gadm.org/) naming conventions.
*/
country?: Term;
/**
* The lowest level [GADM](https://gadm.org/) region available following the naming convention used in the [Glossary](/glossary?termType=region).
*/
region?: Term;
/**
* A reference to the [Term] describing the [Product] produced during the production [Cycle], which is the target of this Impact Assessment.
*/
product?: Term;
/**
* The quantity of the [product](#product) that this Impact Assessment is expressed per. The units are determined by the Term of the product (e.g., 1kg for [Wheat, grain](/term/wheatGrain), or 1 head for a [Pig](/term/pig)).
*/
functionalUnitQuantity?: number;
/**
* The method used to allocate environmental impacts between [Products](./Product).
*/
allocationMethod?: ImpactAssessmentAllocationMethod;
/**
* The [Source] for the data in the Impact Assessment. Not required (but reccomended) if [dataPrivate](#dataPrivate) = true.
*/
source?: Source;
/**
* A list of emissions and resource uses.
*/
emissionsResourceUse?: Indicator[];
/**
* The mid-point environmental impact [Indicators](./Indicator). These are calculated from [emissions](#emissions) and [resourceUse](#resourceUse) by applying characterisation factors to generate a [characterised impact indicator](/glossary?termType=characterisedIndicator).
*/
impacts?: Indicator[];
/**
* The end-point environmental impact [Indicators](./Indicator). These are calculated from the mid-point [impacts](#impacts) by applying characterisation factors to generate an [end-point impact indicator](/glossary?termType=endpointIndicator).
*/
endpoints?: Indicator[];
/**
* If the [Cycle](#cycle) has an organic label. Used by the aggregation engine only.
*/
organic?: boolean;
/**
* If the [Cycle](#cycle) was irrigated. Used by the aggregation engine only.
*/
irrigated?: boolean;
/**
* If this node was autogenerated during upload.
*/
autoGenerated?: boolean;
/**
* The identifier for these data in the source database (e.g. if the data were converted from openLCA or ecoinvent, the id field from that database).
*/
originalId?: string;
/**
* The version of the schema when these data were created.
*/
schemaVersion?: string;
/**
* A list of fields that have been added to the original dataset.
*/
added?: (string)[];
/**
* A list of versions of the model used to add these fields.
*/
addedVersion?: (string)[];
/**
* A list of fields that have been updated on the original dataset.
*/
updated?: (string)[];
/**
* A list of versions of the model used to update these fields.
*/
updatedVersion?: (string)[];
/**
* If this Cycle has been 'aggregated' using data from multiple [Cycles](./Cycle).
*/
aggregated?: boolean;
/**
* A version of the aggregation engine corresponding to this Cycle.
*/
aggregatedVersion?: string;
/**
* If these data stored in this file are private.
*/
dataPrivate?: boolean;
}