GHG-SCC
GHG Share / Composition Calculator Micro Engine
1. Identity
Depends on module:
Purpose
Computes GHG composition shares (ratios or percentages) in a GHG-governed way, enforcing canonical scope/category identifiers and disclosure-grade metadata.
Typical uses include:
- Scope 3 category share of total Scope 3
- Scope shares of total GHG (S1/S2/S3 composition)
- Optional: category share of total GHG (if configured)
This engine is a domain adapter over the generic MEID_CALC_SHARE primitive.
2. Contract References (ZAR)
2.1. Input Schema
ZAR Address: schema.compute.ghg.share.inputs.v1_0_0
Required conceptual fields:
numerator_ref: identifies numerator source (e.g.cat6,scope3,scope2)denominator_ref: identifies denominator source (e.g.scope3_total,ghg_total)values: the numeric series for numerator and denominator, or resolvable refs (see below)share_mode:RATIO|PERCENT(defaultPERCENT)alignment:BY_YEAR|BY_INDEX(defaultBY_YEAR)
Two supported input styles:
Style A (direct values):
numerator: scalar or time-seriesdenominator: scalar or time-series
Style B (reference values):
numerator_signal_refanddenominator_signal_ref(CSI/USO references)- resolved upstream by orchestration, then provided here as values at runtime
2.2. Options Schema
ZAR Address: schema.compute.ghg.share.options.v1_0_0
Common options:
denominator_floor(default:1e-9)cap_range:ENFORCE|ALLOW(defaultENFORCE)missing_policy:ERROR|SKIPcategory_normalization:STRICT|LENIENT(defaultSTRICT)rounding: optional digits
2.3. Output Schema
ZAR Address: schema.compute.ghg.share.output.v1_0_0
Outputs include:
share_seriesshare_unit(ratioorpercent)metadata(normalized keys, caps applied, denominator floors, alignment)
3. Accepted Input Shapes
A. Scope 3 category share of Scope 3 total
{
"numerator_ref": "cat6",
"denominator_ref": "scope3_total",
"numerator": [[2025, 150], [2026, 140]],
"denominator": [[2025, 3000], [2026, 2800]],
"share_mode": "PERCENT",
"alignment": "BY_YEAR"
}
B. Scope composition (Scope 2 share of total GHG)
{
"numerator_ref": "scope2",
"denominator_ref": "ghg_total",
"numerator": [[2025, 800]],
"denominator": [[2025, 12500]],
"share_mode": "RATIO"
}
4. Compute Semantics (Normative)
For each aligned period :
4.1. Base ratio
Where:
- is numerator value,
- is denominator value,
- is
denominator_floor.
4.2. Output scaling
If share_mode = RATIO, output:
If share_mode = PERCENT, output:
4.3. Range enforcement
If cap_range = ENFORCE:
- For ratio mode: clamp to
- For percent mode: clamp to
All clamp events MUST be recorded in metadata.capped_values_count.
5. GHG-Specific Normalization Rules (Normative)
5.1. Allowed numerator_ref / denominator_ref
This engine MUST enforce canonical allowed refs.
Allowed numerator_ref
scope1,scope2,scope3cat1…cat15
Allowed denominator_ref
ghg_totalscope3_totalscope1+2scope1+2+3(alias ofghg_totalif configured)
5.2. Strict category normalization
If category_normalization = STRICT:
Cat6,CAT6,cat06MUST normalize tocat6- non-mappable category keys MUST error
If LENIENT:
- non-mappable keys MAY be dropped with metadata annotation
Metadata MUST include:
normalized_numerator_refnormalized_denominator_ref
6. Alignment Rules
BY_YEAR
- Numerator and denominator MUST share the same period keys unless
missing_policy = SKIP.
BY_INDEX
- Ordered alignment; length mismatch handled per
missing_policy.
Metadata MUST include:
aligned_periodsmissing_in_numeratormissing_in_denominatordenominator_floor_applied_count
7. Validation & Error Model
Invariants
- Values must be finite
denominator_floor > 0- Denominator must not be negative (default) unless explicitly allowed by schema
- Refs must be valid canonical forms
Error codes (suggested)
GHG_SHARE_INVALID_REFGHG_SHARE_ALIGNMENT_MISMATCHGHG_SHARE_DENOMINATOR_ZERO_GUARDED(informational if floor applied)GHG_SHARE_VALUE_OUT_OF_RANGEGHG_SHARE_NON_FINITE_VALUE
Errors MUST include:
- engine
cmi_short_code - offending ref and period
8. Dependencies
MEID_CALC_GHG_SHARE depends on:
MEID_CALC_SHARE(primitive)- schema resolver (ZAR)
- canonical Scope 3 category reference list (Cat1–Cat15)
Declared via ZAR dependencies.
9. Federation & Audit Requirements
To reproduce GHG share outputs externally, the export MUST include:
- Engine identity (
cmiorzar_code) - Engine build proof (
execution_ref+build_hash) - Input/options/output schemas
- Numerator and denominator series used
- Normalization settings and caps
Provenance chain MUST show:
… → MEID_CALC_GHG_SHARE → …
with cmi_short_code recorded in USO tail arrays.
10. Performance Notes
- Complexity: over periods
- Memory:
- Suitable for batch reporting and KPI analytics
11. Methods Served (v1)
GHG.scope3.cat.share(primary)- Optional (if method registry includes):
GHG.scope3.shareGHG.scope2.shareGHG.scope1.share