Skip to main content

turbo-ea-capabilities

Reference Business Capability catalogue for Turbo EA, bundled as a Python package.

All catalogue data ships inside the wheel — no network access required at runtime. Designed for offline / airgapped Turbo EA deployments.

Install

pip install turbo-ea-capabilities

Usage

from turbo_ea_capabilities import (
    load_all,
    load_tree,
    get_by_id,
    get_children,
    get_subtree,
    get_ancestors,
    load_macros,
    get_macros_for_capability,
    VERSION,
    SCHEMA_VERSION,
    GENERATED_AT,
)

print(f"Catalogue {VERSION} (schema v{SCHEMA_VERSION}), built {GENERATED_AT}")
print(f"{len(load_all())} capabilities, {len(load_macros())} macro capabilities")

root = get_subtree("BC-2")
for child in root.children:
    print(f"  {child.id}  {child.name}")

# Macro navigation overlay (optional — empty list on pre-macro snapshots)
for m in load_macros():
    print(f"  {m.id}  {m.name}  ({len(m.capability_ids)} L1s)")
print(get_macros_for_capability("BC-100"))  # → [MacroCapability(id='MC-10', ...)]

API

Function Returns
load_all() list[Capability] — flat, every node, sorted by id
load_tree() list[Capability] — nested, one entry per L1
get_by_id(id) Capability | None
get_children(id) list[Capability] — direct children only
get_subtree(id) Capability | None — node with .children populated recursively
get_ancestors(id) list[Capability] — root → parent (excludes the node itself)
load_macros() list[MacroCapability] — executive navigation overlay above L1 (empty on snapshots without the layer)
get_macro(mc_id) MacroCapability | None
get_macros_for_capability(bc_id) list[MacroCapability] — the ≤1 macro claiming the BC's L1 ancestor
get_capabilities_in_macro(mc_id) list[Capability] — L1 capabilities grouped by the macro

Capability (with new optional macro_id backlink), MacroCapability, BusinessProcess, ValueStream are all frozen Pydantic v2 models — see _models.py. The macro layer is purely additive: existing Capability fields are unchanged and SCHEMA_VERSION is not bumped when only macros are added or edited.

Macro capabilities

When the L1 layer of the catalogue is too large for unaided executive consumption, the wheel ships an optional Macro Capability overlay that groups L1s into a small set of executive-level domains for navigation. The Cross-Industry baseline currently ships 9 macros covering all 41 Cross-Industry L1s; industry-specific L1s do not (yet) have a macro layer.

The overlay is:

  • Optional. Older wheels without data/macro-capabilities.json keep working — load_macros() returns [].
  • Additive. No existing field on Capability/BusinessProcess/ValueStream was changed. Capability gains one new optional field, macro_id: Optional[str], populated at build time on every L1 (and inherited via prefix lookup to descendants). SCHEMA_VERSION is unchanged.
  • Orthogonal. Macros do not enter the BC tree, do not participate in value-stream stage links, and do not realize processes. They group L1s — that's all.
from turbo_ea_capabilities import (
    load_macros,
    get_macro,
    get_macros_for_capability,
    get_capabilities_in_macro,
)

# 1. Render Cross-Industry as 9 executive cards
for macro in load_macros():
    if macro.industry == "Cross-Industry":
        print(f"{macro.id}  {macro.name}  ({len(macro.capability_ids)} L1s)")

# 2. Breadcrumb / category label on a capability detail page
m = get_macros_for_capability("BC-100.10.20")  # walks to L1 BC-100
# → [MacroCapability(id='MC-10', name='Enterprise Governance & Risk', ...)]

# 3. Drill into a macro
caps = get_capabilities_in_macro("MC-10")
# → [Capability(id='BC-100', ...), Capability(id='BC-110', ...), ...]

# 4. Translate the macro display name
fr = get_macro("MC-10").localized("fr")
print(fr.name)  # "Gouvernance d'Entreprise et Risque"

The model is documented in Section 13 of the governance doc.

Versioning

Two version numbers travel together:

  • VERSION — semver of the catalogue content.
  • SCHEMA_VERSION — integer; bumps only on non-additive field/value changes.

Pin against SCHEMA_VERSION to detect breaking shape changes; pin against VERSION minor for additive content updates.

Source

The catalogue YAML and build pipeline live at https://github.com/vincentmakes/turbo-ea-capabilities.

License

Dual-licensed, split along the data/code seam:

  • The bundled catalogue data (turbo_ea_capabilities/data/*.json) is licensed under CC BY 4.0. Free to use, adapt, and redistribute commercially, provided you credit the source and indicate changes.
  • The library code is licensed under MIT.

When you share or adapt the catalogue, credit:

Turbo EA Capabilities by Vincent Verdet — Turbo EA, https://github.com/vincentmakes/turbo-ea-capabilities, CC BY 4.0

The same string is available programmatically — the bundled version.json carries license, license_url, and attribution fields. Full terms: LICENSING.md.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

turbo_ea_capabilities-2026.7.29.513.tar.gz (5.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

turbo_ea_capabilities-2026.7.29.513-py3-none-any.whl (5.6 MB view details)

Uploaded Python 3

File details

Details for the file turbo_ea_capabilities-2026.7.29.513.tar.gz.

File metadata

File hashes

Hashes for turbo_ea_capabilities-2026.7.29.513.tar.gz
Algorithm Hash digest
SHA256 8796fd30a82b628b7f660cabd9b3fb7ef4b7f58dbe0884a213ec9c81c1e4ec08
MD5 c06c3a3f5055a0544162b3d4c235cb05
BLAKE2b-256 01a7b02f7986f691e823d842d55b8aca35e998bdf85ba97c7fa3f2958c6eb0d8

See more details on using hashes here.

Provenance

The following attestation bundles were made for turbo_ea_capabilities-2026.7.29.513.tar.gz:

Publisher: publish-package.yml on vincentmakes/turbo-ea-capabilities

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file turbo_ea_capabilities-2026.7.29.513-py3-none-any.whl.

File metadata

File hashes

Hashes for turbo_ea_capabilities-2026.7.29.513-py3-none-any.whl
Algorithm Hash digest
SHA256 7560fdd9db2029acfc03413318700547f9b06d3c2b0ffe8eb95149098fade7bd
MD5 b7942b2c93b34a55a2f648a93687538a
BLAKE2b-256 ce90fc6c861bdef738c8c77dd4b2f5dc79f1b9f656974ed4e0d2d4992abcff63

See more details on using hashes here.

Provenance

The following attestation bundles were made for turbo_ea_capabilities-2026.7.29.513-py3-none-any.whl:

Publisher: publish-package.yml on vincentmakes/turbo-ea-capabilities

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page