Unit Data Schema — Topic 05: Division / To&E Mapping — Omega War
Stage 2 · per-topic review · topic 05 of 6 · cycle unit-data-schema · page created 2026-06-15 · approved 2026-06-15
This page reviews topic 05 only: the
Division formation anchor, the
ToeProfile table-of-organization shape, class-weight bands, and the
DivisionDeckMapping relationship that maps a division's To&E pattern onto topic 04's
Deck and CardRosterEntry rows. It compiles from
research/unthinkable/_working/unit-data-schema/05-division-to-and-e.md.
Boundary (UD-A1): shape, not values. This topic assigns no combat stats, prices, exact card counts, roster capacities, class quotas, or balance magnitudes. To&E evidence is represented as ordinal class-weight bands and mapping rules.
missing_required: [], section_feedback: []. All three schema gates are approved,
and the route approves topic 05 and proceeds to topic 06.
| Gate | Answer |
|---|---|
division-shape | approve-division-shape |
toe-profile-model | approve-toe-profile-model |
deck-mapping | approve-deck-mapping |
route | proceed-topic-06 (approve topic 05; proceed to command-post & wonder-slot governance) |
Verbatim compiled YAML (frozen):
Deck,
CardRosterEntry, and CommandPost shapes, and left Deck.division as a
deferred slot. This topic resolves that slot: the division's To&E profile becomes the structural reason a deck
leans armor-heavy, infantry-heavy, artillery-heavy, or attachment-augmented.
1. Purpose & scope of this topic
Author the formation layer below the deck and above individual cards. A deck is still the player-facing selection set. A division is the historical identity and proportion source that explains why the deck has more of some card classes and fewer of others.
| Object | Role |
|---|---|
Division | Historical or premise formation anchor for a deck. |
ToeProfile | Reusable formation pattern expressed as card-class weight bands. |
ToeClassWeight | Per-CardClass ordinal descriptor: primary, secondary, scarce, absent. |
DivisionDeckMapping | Joins a division and deck, then checks roster entries against the profile. |
2. The Division entity — the formation anchor
A Division is the named formation, equivalent corps-scale formation, or strictly-framed premise formation used as a deck anchor. It is source identity plus To&E proportion profile, not a list of final cards.
| Field | Type | Req? | Notes |
|---|---|---|---|
id | string (stable key) | required | Stable internal identifier, e.g. uk_11th_armoured_division. |
display_name | string | required | Player-facing formation name. |
faction | ref Faction | required | Owning faction or premise faction; shared with Deck.faction and card.faction. |
formation_kind | enum FormationKind | required | Broad historical scale/pattern. |
toe_profile | ref ToeProfile | required | The formation's To&E proportion profile. |
roster_status | enum DeckStatus | optional | Mirrors topic 04 status when the division anchors a playable deck. |
confidence | enum ConfidenceTag | optional | Research confidence: high / medium / gap / carried. Source-quality metadata, not card reliability. |
source_ref | string | optional | Canonical source anchor, e.g. divisions-1945 Claim 2.3. |
framing_note | string | optional | Required for premise or morally loaded rows, especially re-armed German formations. |
Gate — division-shape required
Does the Division entity correctly capture formation identity and the deck anchor relationship?
3. Enum value sets
| Enum | Members | Purpose |
|---|---|---|
FormationKind | infantry_division, armoured_division, airborne_division, rifle_division, guards_rifle_division, tank_corps_equivalent, mechanized_corps_equivalent, artillery_division, kampfgruppe_rebuild, attachment_or_local_force | Broad historical scale/pattern. |
WeightBand | primary, secondary, tertiary, scarce, absent | Ordinal class-weight descriptor, not a ratio. |
ProportionRuleKind | guide, minimum_presence, cap_pressure, exclusion | How the profile should affect deck construction. |
4. The ToeProfile model
ToeProfile records the formation's historical pattern as card-class weights and notes.
| Field | Type | Req? | Notes |
|---|---|---|---|
id | string (stable key) | required | e.g. uk_armoured_division_1945. |
display_name | string | required | Human-readable pattern label. |
formation_kind | enum FormationKind | required | The profile's broad pattern. |
class_weights | ref ToeClassWeight[] | required | Per-card-class weight entries. |
support_notes | string | optional | Qualitative notes, e.g. organic SU-76 for Guards rifle or brigade-group pairing. |
source_ref | string | required | Source claim or section anchor in divisions-1945. |
ToeClassWeight
| Field | Type | Req? | Notes |
|---|---|---|---|
card_class | enum CardClass | required | Topic 01's accepted card-class leaf. |
weight_band | enum WeightBand | required | Ordinal descriptor: primary / secondary / tertiary / scarce / absent. |
rule_kind | enum ProportionRuleKind | required | How the profile should affect deck construction. |
evidence_note | string | optional | Plain-language rationale from the source pattern. |
Gate — toe-profile-model required
Does the ToeProfile + ToeClassWeight model express To&E proportions at the right shape-not-values level?
5. DivisionDeckMapping — To&E profile onto deck/card-roster
The mapping supplies an audit surface for later content work: every
CardRosterEntry.card.card_class can be read against the profile and explained as core, supported,
scarce, capped, excluded, or attachment-augmented.
| Field | Type | Req? | Notes |
|---|---|---|---|
division | ref Division | required | Historical or premise formation anchor. |
deck | ref Deck | required | Player-facing deck selection set from topic 04. |
toe_profile | ref ToeProfile | required | Usually division.toe_profile; explicit so campaign variants can swap profile later. |
roster_entries | ref CardRosterEntry[] | required | The deck rows to be checked against the profile. |
mapping_mode | enum MappingMode | required | strict, adapted, or attachment_augmented. |
deviation_notes | string | optional | Why a deck deviates from the pure profile, if it does. |
No final deck fill. This mapping does not compute final roster contents, card quantities, or slot capacities. It gives later roster/content work a way to explain why a division-backed deck leans toward or away from specific card classes.
Gate — deck-mapping required
Does DivisionDeckMapping correctly connect the division / To&E profile to topic 04's deck and roster entries?
6. Illustrative profile rows (shape demonstration only)
Rows use weight bands only. They avoid numeric ratios, availability counts, card quantities, and slot capacities.
ToeProfile | FormationKind | Example class weights | Reading |
|---|---|---|---|
uk_armoured_division_1945 | armoured_division | tank_medium=primary; line_squad=secondary; recon=secondary; artillery_towed=secondary | Armor-led but paired with infantry brigade-group teams and artillery support. |
us_infantry_division_1945 | infantry_division | line_squad=primary; artillery_towed=secondary; engineer=tertiary; tank_medium=scarce | Infantry/artillery first; armor usually attachment-augmented. |
soviet_tank_corps_1945 | tank_corps_equivalent | tank_medium=primary; tank_heavy=secondary; assault_gun=secondary; line_squad=scarce | Armor-heavy with thin infantry availability. |
soviet_breakthrough_artillery_division | artillery_division | artillery_towed=primary; rocket_artillery=secondary; line_squad=scarce; tank_medium=absent | Fire-plan identity comes from artillery mass, not an armored core. |
7. Open questions & route
- open Profile normalization — reusable pattern library vs copied per-division profiles with overrides.
- open Attachment modelling — mapping mode, separate attachment decks, or explicit roster-entry provenance fields.
- open Faction table final shape — references are confirmed here; minimal fields land in synthesis unless topic 06 needs them.
- open Automated roster audit — whether later tooling should validate roster entries against To&E rule kinds.
Gate — route required
How should the cycle proceed? This also disposes the §7 open questions (they carry to synthesis unless you direct otherwise in notes).
8. Deferred-values register (this topic)
| Deferred | Why | Where it lands |
|---|---|---|
| Exact card counts per division or deck | UD-A1 shape-not-values; balance/content | content/balance pass |
| Numeric To&E ratios translated into slots | Values and tuning, not schema shape | deck-content pass |
| Availability caps, costs, veterancy quantities | Combat/balance values | prototype balance pass |
| Campaign profile mutation triggers and magnitudes | Campaign economy | campaign-economy pass |
| Attachment quantities and exact attached units | Content values | roster/content pass |
9. Source log (topic 05)
divisions-1945§2 / DRQ2 — formation anatomy claims for US, UK, Soviet, German, and French formation patterns.divisions-1945§4 — deliverable To&E patterns mapped to card-class proportions.divisions-1945§8 — division-as-deck-anchor proposal, used as proposal-record input only.proposed-divisions-and-decks-roster§3 — deck archetypes and formation anchors.- Topic 01
01-core-unit-card-entity.md—CardClassset referenced by class weights. - Topic 04
04-deck-band-card-roster.md—Deck,CardRosterEntry, and the deferredDeck.divisionslot.
10. Compile Responses
Answer the required gates above, add optional section feedback, then compile and copy the YAML into the next execution message. You may compile partial responses.