UNPKG

@hestia-earth/schema

Version:
109 lines (108 loc) 5.46 kB
import { JSON, SchemaType } from './types'; import { Term } from './Term'; import { Site } from './Site'; import { Property } from './Property'; import { Input } from './Input'; import { Emission } from './Emission'; import { Product } from './Product'; import { Practice } from './Practice'; import { TermTermType } from './Term'; /** * Contains all the TermTermType with override on the Transformation. * Note: it does not contain the default TermTermType on related Blank Nodes. */ export declare const transformationTermTermType: { term: TermTermType[]; all: TermTermType[]; }; /** * Contains all the fields that make the blank nodes unique. */ export declare const transformationUniquenessFields: { properties: string[]; inputs: string[]; emissions: string[]; products: string[]; practices: string[]; }; /** * The Transformation of one [Product](/schema/Product) to a new Product in the same [Cycle](/schema/Cycle). One Transformation can follow another and they can be linked using <code>[transformationId](/schema/Transformation#transformationId)</code>. Environmental impacts created during Transformations are then included in the [Impact Assessment](/schema/ImpactAssessment). This means that Transformations should be used to represent any processes which are required to get the Product to its marketable form or to manage any waste that is created during production. In general, any essential grain drying, crop grading, and animal excreta management should be represented using Transformations. */ export declare class Transformation extends JSON<SchemaType.Transformation> { /** * An identifier for each Transformation which must be unique within the Cycle. */ transformationId?: string; /** * A reference to the [Term](/schema/Term) describing the process or operation for transforming the Product. */ term?: Term; /** * A description of the Transformation process or operation, including information not captured with other fields. */ description?: string; /** * The start date of the Transformation if different from the start date of the [Cycle](/schema/Cycle) in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format (YYYY-MM-DD, YYYY-MM, or YYYY). */ startDate?: string; /** * The end date of the Transformation if different from the end date of the [Cycle](/schema/Cycle) in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format (YYYY-MM-DD, YYYY-MM, or YYYY). */ endDate?: string; /** * The duration of the Transformation in days. Defaulting to <code>[cycleDuration](/schema/Cycle#cycleDuration)</code> when not provided. */ transformationDuration?: number; /** * The <code>[transformationId](/schema/Transformation#transformationId)</code> of the previous Transformation. This is used to link Transformations, so that a [share](/schema/Transformation#transformedShare) of the <code>[products](/schema/Transformation#products)</code> from the previous Transformation become the <code>[inputs](/schema/Transformation#inputs)</code> of the current Transformation. If this field is not specified, the <code>[inputs](/schema/Transformation#inputs)</code> of the Transformation come from the Cycle. */ previousTransformationId?: string; /** * The share of [Products](/schema/Product) from the [Cycle](/schema/Cycle) or the previous Transformation that enter the current Transformation. This field is useful when the physical quantities of Products being transformed are unknown, but the share transformed is known. For example, if [Excreta, dairy cattle (kg mass)](/term/excretaDairyCattleKgMass) is a Product of a Cycle, <code>[transformedShare](/schema/Transformation#transformedShare) = 50</code>, and [Excreta, dairy cattle (kg mass)](/term/excretaDairyCattleKgMass) is an Input into this Transformation, <code>50%</code> of the excreta is an Input to this Transformation. If there are more than one Product being transformed, <code>[transformedShare](/schema/Transformation#transformedShare)</code> applies equally to all Products. */ transformedShare?: number; /** * If the Cycle occurred on multiple [Sites](/schema/Site), the Site where this Transformation occurred. Use <code>[transformedShare](/schema/Transformation#transformedShare)</code> to apportion the transformed Product across each Site. */ site?: Site; /** * A list of [Properties](/schema/Property) of the Transformation. */ properties?: Property[]; /** * The Inputs into the Transformation. */ inputs?: Input[]; /** * The Emissions created from the Transformation. */ emissions?: Emission[]; /** * The Products created from the Transformation. */ products?: Product[]; /** * The Practices used during the Transformation. */ practices?: Practice[]; /** * 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)[]; }