Metrics pillar · v0.16.0
kpi-definition KpiDefinition
KPI definition.
$id · https://corpospec.com/schemas/v0.16.0/kpi-definition.schema.json
Fields
| Field | Type | Required | Description |
|---|---|---|---|
| cadence | KpiCadence | yes | Reporting cadence. |
| data_source | PathRef | yes | PathRef to the underlying data source / query / dashboard. |
| description | string | yes | |
| domain | KpiDomain | yes | KPI domain. |
| effective_from | IsoDate | yes | ISO 8601 date (YYYY-MM-DD). |
| entity | PathRef | yes | Path-based cross-reference relative to .corpospec/ root. Pattern: `^[a-z0-9_-]+(/[a-z0-9_.-]+)+$` |
| formula | string | yes | Formula or calculation narrative. |
| id | PathRef | yes | Path-based cross-reference relative to .corpospec/ root. Pattern: `^[a-z0-9_-]+(/[a-z0-9_.-]+)+$` |
| key | string | yes | Stable key (snake_case). |
| name | string | yes | |
| owner | PathRef | yes | Path-based cross-reference relative to .corpospec/ root. Pattern: `^[a-z0-9_-]+(/[a-z0-9_.-]+)+$` |
| polarity | KpiPolarity | yes | Polarity — whether higher is better. |
| status | KpiStatus | yes | Lifecycle. |
| target_value | number | yes | |
| thresholds | KpiThresholds | yes | Threshold bands (red / yellow / green). |
| unit | string | yes | Unit (e.g. "EUR", "pct", "count", "days"). |
| effective_to | IsoDate? | — | |
| linked_okrs | PathRef[] | — | PathRefs to OKRs that consume this KPI. |
| linked_slas | PathRef[] | — | PathRefs to SLAs that consume this KPI. |
| regulatory_refs | PathRef[] | — | PathRefs to regulatory disclosures. |
Definitions
Shared types referenced within this schema.
IsoDate
ISO 8601 date (YYYY-MM-DD).
type: string
KpiCadence
Reporting cadence.
enum: "realtime", "daily", "weekly", "monthly", "quarterly", "annual"
KpiDomain
KPI domain.
KpiPolarity
Polarity — whether higher is better.
KpiStatus
Lifecycle.
enum: "proposed", "active", "deprecated", "retired"
KpiThresholds
Threshold bands (red / yellow / green).
type: object
PathRef
Path-based cross-reference relative to .corpospec/ root.
Pattern: `^[a-z0-9_-]+(/[a-z0-9_.-]+)+$`
pattern: ^[a-z0-9_-]+(/[a-z0-9_.-]+)+$
Reference in your YAML
# yaml-language-server: $schema=https://corpospec.com/schemas/v0.16.0/kpi-definition.schema.json