Skip to main content

Transferring Text to MDX

0. Intro​

Below is a canonical, opinionated schema for mice: frontmatter, with exhaustive option comments for categories, domains, statuses, modes, inputs, etc.

Note: The "EyeBrow" for MICEes should include both the ID and the MEID code. E.g.: <p className="eyebrow">DLT - MEID_CALC_DELTA</p>


1. Canonical MICE categories (engine function class)​

The following align with the MICE architecture (CALC, VALI, TAGG, etc.) and leave room for future expansion without breaking MEIDs.

category: CALC
# CALC = Calculation / quantitative computation engines
# VALI = Validation & verification engines (rule-based, threshold, plausibility)
# TAGG = Tagging / classification / mapping engines (taxonomy, labels, flags)
# AGGR = Aggregation / roll-up engines (temporal, organizational, scope-based)
# TRANS = Transformation / normalization engines (unit, currency, structure)
# SCEN = Scenario / projection engines (Monte Carlo, Bayesian, forecasts)
# SCORE = Scoring / rating engines (ESG scores, risk indices, benchmarks)
# LINK = Linking / relationship engines (entity, supply-chain, graph edges)
# ALERT = Alert / trigger engines (threshold breaches, anomalies, signals)
# META = Meta-engines (orchestrators, routers, explainability, diagnostics)

Rule:

  • category is singular
  • Category is encoded in the MEID and MUST match frontmatter

2. Canonical MICE domains (semantic problem space)​

Domains describe what sustainability problem space the engine operates in, not how it computes.

domain: emissions
# emissions = GHG emissions (Scopes 1–3, removals, intensity)
# energy = Energy consumption, mix, efficiency
# climate_risk = Physical & transition climate risks
# biodiversity = Biodiversity, ecosystems, land use
# water = Water use, stress, discharge
# pollution = Air, water, soil pollution (non-GHG)
# materials = Materials, circularity, waste
# supply_chain = Upstream/downstream supply chain analysis
# products = Product-level footprints (PEF, LCA)
# finance = Financial impacts, CapEx/OpEx, alignment
# taxonomy = EU Taxonomy & regulatory classification
# social = Social factors (workforce, communities)
# governance = Governance, controls, policies
# compliance = CSRD/ESRS, regulatory logic
# assurance = Audit, verification, evidence logic
# meta = Cross-domain / system-level engines

Rule:

  • Exactly one primary domain
  • Cross-domain engines use meta + explicit metric_types_supported

3. Status lifecycle (governance-critical)​

status: active
# active = Production-ready, supported
# experimental = Available but unstable / evolving
# deprecated = Kept for backward compatibility only
# retired = Disabled; MEID kept for audit traceability

Rule:

  • MEIDs are never deleted
  • Deprecation always points to a successor MEID (in registry, not docs)

4. Supported modes (how the engine behaves)​

This maps directly to your supported_modes concept in the registry.

supported_modes:
- calculation
# calculation = Returns computed quantitative results
# validation = Returns pass/fail, flags, reasons
# classification= Returns labels, categories, tags
# aggregation = Returns rolled-up / summarized results
# projection = Returns future/scenario values
# scoring = Returns normalized scores or ratings
# signal = Emits events, alerts, or indicators

5. Input types (technical contract)​

input_types:
- json
# json = Structured JSON payload (default)
# csv = Tabular batch input
# xlsx = Spreadsheet input
# xml = Structured regulatory formats
# api_ref = Reference to upstream API object
# registry = Reference to internal registry entities

6. Metric type binding (semantic anchoring)​

This is critical to avoid “engine does a bit of everything” drift.

metric_types_supported:
- ghg.scope3.cat6.business_travel
# Format should align with:
# - ESRS metric identifiers
# - Internal SSSR / metric ontology
# - Carbon passport / PEF metrics where applicable

Rule:

  • Engines MUST declare what metric types they touch
  • Empty list only allowed for META engines

7. API block (execution contract)​

api:
route: /api/mice/MEID_CALC02_v1
method: POST
# method: POST | GET | PUT | PATCH

Rule:

  • Route MUST include the MEID
  • No implicit routing

8. Source / alias binding (optional but powerful)​

source_map_ref: EngineAliasMap
# Optional reference to:
# - Engine Alias Map
# - Source-to-engine resolution tables
# - Backward compatibility mappings

9. Full canonical example (ready to standardise)​

---
title: Flight Emissions Calculation Engine
meid: MEID_CALC02_v1

mice:
meid: ...
category: CALC
# CALC | VALI | TAGG | AGGR | TRANS | SCEN | SCORE | LINK | ALERT | META

version: 1
status: active
# active | experimental | deprecated | retired

domain: emissions
# emissions | energy | climate_risk | biodiversity | water | pollution
# materials | supply_chain | products | finance | taxonomy
# social | governance | compliance | assurance | meta

input_types:
- json
# json | csv | xlsx | xml | api_ref | registry

supported_modes:
- calculation
# calculation | validation | classification | aggregation
# projection | scoring | signal

api:
route: /api/mice/MEID_CALC02_v1
method: POST
# POST | GET | PUT | PATCH

metric_types_supported:
- ghg.scope3.cat6.business_travel

source_map_ref: EngineAliasMap
---

JSON Schema (draft 2020-12)

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://ecoworld.ai/schemas/zayaz/mice-frontmatter.schema.json",
"title": "ZAYAZ MICE Frontmatter Schema",
"type": "object",
"additionalProperties": true,
"required": ["title", "meid", "mice"],
"properties": {
"title": { "type": "string", "minLength": 1 },

"meid": {
"type": "string",
"description": "Canonical Micro Engine ID. Must match category and version fields.",
"pattern": "^MEID_(CALC|VALI|TAGG|AGGR|TRANS|SCEN|SCORE|LINK|ALERT|META)\\d{2}_v\\d+$"
},

"mice": {
"type": "object",
"additionalProperties": false,
"required": [
"category",
"version",
"status",
"domain",
"input_types",
"supported_modes",
"api",
"metric_types_supported"
],
"properties": {
"category": {
"type": "string",
"enum": ["CALC", "VALI", "TAGG", "AGGR", "TRANS", "SCEN", "SCORE", "LINK", "ALERT", "META"]
},

"version": {
"type": "integer",
"minimum": 1,
"description": "Engine major version number (must match MEID suffix vN)."
},

"status": {
"type": "string",
"enum": ["active", "experimental", "deprecated", "retired"]
},

"domain": {
"type": "string",
"enum": [
"emissions",
"energy",
"climate_risk",
"biodiversity",
"water",
"pollution",
"materials",
"supply_chain",
"products",
"finance",
"taxonomy",
"social",
"governance",
"compliance",
"assurance",
"meta"
]
},

"input_types": {
"type": "array",
"minItems": 1,
"uniqueItems": true,
"items": {
"type": "string",
"enum": ["json", "csv", "xlsx", "xml", "api_ref", "registry"]
}
},

"supported_modes": {
"type": "array",
"minItems": 1,
"uniqueItems": true,
"items": {
"type": "string",
"enum": [
"calculation",
"validation",
"classification",
"aggregation",
"projection",
"scoring",
"signal"
]
}
},

"api": {
"type": "object",
"additionalProperties": false,
"required": ["route", "method"],
"properties": {
"route": {
"type": "string",
"minLength": 1,
"pattern": "^/api/mice/MEID_(CALC|VALI|TAGG|AGGR|TRANS|SCEN|SCORE|LINK|ALERT|META)\\d{2}_v\\d+$"
},
"method": {
"type": "string",
"enum": ["POST", "GET", "PUT", "PATCH"]
}
}
},

"metric_types_supported": {
"type": "array",
"description": "List of semantic metric identifiers this engine produces/validates/transforms.",
"items": { "type": "string", "minLength": 1 },
"uniqueItems": true
},

"source_map_ref": {
"type": "string",
"minLength": 1,
"description": "Optional reference to Engine Alias Map / source-to-engine mapping registry key."
}
},

"allOf": [
{
"$comment": "If category is META, domain may be meta (recommended). Otherwise domain must not be meta.",
"if": {
"properties": { "category": { "const": "META" } },
"required": ["category"]
},
"then": {},
"else": {
"not": { "properties": { "domain": { "const": "meta" } } }
}
}
]
}
},

"allOf": [
{
"$comment": "Cross-field check: MEID category must match mice.category (enforced by downstream linter; JSON Schema cannot reliably extract capture groups).",
"description": "Implement MEID<->category and MEID<->version equality in CI lint rules."
}
]
}



GitHub RepoRequest for Change (RFC)