Estimations

Where Net Purpose’s research indicates that a company provides a good or service which delivers measurable impact, the magnitude of that impact will be calculated using lifecycle assessment. These estimations are computed in a transparent way following a standardised framework of datapoints related to each other to drive from either revenue or output to outcomes and impact. For any given estimation, not all roles in the estimation will be populated, for example some estimations can start at Outcome level 1, it is dependent on the theory of change and the availability of data.

Each estimation can have one or more branches. These branches have an impact_theme and represent the multi-dimensional impact a given solution can have. For example, when considering Wind power as a solution, it has an impact on climate due to the avoidance of CO2e. It also, however, impacts Air quality as there is a consumate reduction in particulates such as NOX, SOX and PM2.5. These different branches capture this multi-faceted behaviour.

Each estimation is represented by a set of estimation_lifecycle rows. These row represent a singular node in the lifecycle graph, with the underlying value, source material and derivation of that node being the linked datapoint and datapoint_derivations. The provided lifecycle_index column exists to aid correct sorting of the rows to provide legible estimations.

All views on this page are versioned — filter is_current = TRUE (see Conventions).

datapoints

One row per estimated value. When datapoint has required derivation there is a formula (expressed as excel like manipulations of other datapoints) and the populated ast. These are provided for transparency purposes on the underlying calculations.

ColumnTypeDescription
datapoint_idVARCHAR (UUID)Primary key
typeVARCHARKind of datapoint within the model.
is_derivedBOOLEANTRUE when computed from other datapoints, FALSE for model inputs
question_idNUMBERWhat the value answers. Joins to questions
canonical_question_idVARCHARThe question’s readable slug, for convenience
valueFLOATThe value in the standard unit
unitVARCHARName of the standard unit
reported_valueFLOATThe originally reported value, where the input came from a disclosure
reported_unitVARCHARUnit of the reported value
source_idNUMBERSource document for reported inputs. Joins to sources
page_numNUMBERPage of the document

datapoint_derivations

The formula behind each derived datapoint, for full transparency on how an estimate was computed.

ColumnTypeDescription
datapoint_idVARCHAR (UUID)The derived datapoint
formulaVARCHARHuman-readable formula
astVARIANTThe parsed formula tree (machine-readable)

estimation_lifecycle

Ties datapoints together into an estimation chain for one entity, taxonomy activity and year. The taxon_id points at the modelled activity — a technology-level node in the taxonomy, for example a renewable energy generation technology whose outputs and impacts we model.

ColumnTypeDescription
entity_idNUMBERWho. Joins to entities
taxon_idNUMBERThe modelled activity. Joins to taxonomy
yearNUMBERFiscal year
lifecycle_roleVARCHARThe role this datapoint plays in the chain (ouput, outcome_level_1, etc.)
lifecycle_indexNUMBERPosition of the step within the chain
impact_themeVARCHARImpact theme the chain contributes to, where applicable
datapoint_idVARCHAR (UUID)The datapoint at this step. Joins to datapoints

Example: Get all lifecycle estimations for a given entity

SELECT
  el.entity_id,
  el.taxon_id,
  el.year,
  el.impact_theme,
  q.name,
  d.value,
  d.unit
FROM NET_PURPOSE.FOUNDATIONS.ESTIMATION_LIFECYCLE el
JOIN NET_PURPOSE.FOUNDATIONS.DATAPOINTS d
  ON el.datapoint_id = d.datapoint_id
JOIN NET_PURPOSE.REFERENCE.QUESTIONS q
  ON d.question_id = q.question_id
ORDER BY year desc, el.lifecycle_index asc