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

alignment_status: review — topic 05 working doc ready — Stage 2 of 3, per-topic research review.
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.
Topic-04 hand-off (read-only) — topic 04 approved the 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.

Topic-05 relationship model
Division formation anchor ToeProfile formation pattern ToeClassWeight primary / scarce DivisionDeckMapping structural audit surface Deck topic 04 CardRosterEntry topic 04 join

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.

FieldTypeReq?Notes
idstring (stable key)requiredStable internal identifier, e.g. uk_11th_armoured_division.
display_namestringrequiredPlayer-facing formation name.
factionref FactionrequiredOwning faction or premise faction; shared with Deck.faction and card.faction.
formation_kindenum FormationKindrequiredBroad historical scale/pattern.
toe_profileref ToeProfilerequiredThe formation's To&E proportion profile.
roster_statusenum DeckStatusoptionalMirrors topic 04 status when the division anchors a playable deck.
confidenceenum ConfidenceTagoptionalResearch confidence: high / medium / gap / carried. Source-quality metadata, not card reliability.
source_refstringoptionalCanonical source anchor, e.g. divisions-1945 Claim 2.3.
framing_notestringoptionalRequired 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

EnumMembersPurpose
FormationKindinfantry_division, armoured_division, airborne_division, rifle_division, guards_rifle_division, tank_corps_equivalent, mechanized_corps_equivalent, artillery_division, kampfgruppe_rebuild, attachment_or_local_forceBroad historical scale/pattern.
WeightBandprimary, secondary, tertiary, scarce, absentOrdinal class-weight descriptor, not a ratio.
ProportionRuleKindguide, minimum_presence, cap_pressure, exclusionHow the profile should affect deck construction.

4. The ToeProfile model

ToeProfile records the formation's historical pattern as card-class weights and notes.

FieldTypeReq?Notes
idstring (stable key)requirede.g. uk_armoured_division_1945.
display_namestringrequiredHuman-readable pattern label.
formation_kindenum FormationKindrequiredThe profile's broad pattern.
class_weightsref ToeClassWeight[]requiredPer-card-class weight entries.
support_notesstringoptionalQualitative notes, e.g. organic SU-76 for Guards rifle or brigade-group pairing.
source_refstringrequiredSource claim or section anchor in divisions-1945.

ToeClassWeight

FieldTypeReq?Notes
card_classenum CardClassrequiredTopic 01's accepted card-class leaf.
weight_bandenum WeightBandrequiredOrdinal descriptor: primary / secondary / tertiary / scarce / absent.
rule_kindenum ProportionRuleKindrequiredHow the profile should affect deck construction.
evidence_notestringoptionalPlain-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.

FieldTypeReq?Notes
divisionref DivisionrequiredHistorical or premise formation anchor.
deckref DeckrequiredPlayer-facing deck selection set from topic 04.
toe_profileref ToeProfilerequiredUsually division.toe_profile; explicit so campaign variants can swap profile later.
roster_entriesref CardRosterEntry[]requiredThe deck rows to be checked against the profile.
mapping_modeenum MappingModerequiredstrict, adapted, or attachment_augmented.
deviation_notesstringoptionalWhy 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.

ToeProfileFormationKindExample class weightsReading
uk_armoured_division_1945armoured_divisiontank_medium=primary; line_squad=secondary; recon=secondary; artillery_towed=secondaryArmor-led but paired with infantry brigade-group teams and artillery support.
us_infantry_division_1945infantry_divisionline_squad=primary; artillery_towed=secondary; engineer=tertiary; tank_medium=scarceInfantry/artillery first; armor usually attachment-augmented.
soviet_tank_corps_1945tank_corps_equivalenttank_medium=primary; tank_heavy=secondary; assault_gun=secondary; line_squad=scarceArmor-heavy with thin infantry availability.
soviet_breakthrough_artillery_divisionartillery_divisionartillery_towed=primary; rocket_artillery=secondary; line_squad=scarce; tank_medium=absentFire-plan identity comes from artillery mass, not an armored core.

7. Open questions & route

  1. open Profile normalization — reusable pattern library vs copied per-division profiles with overrides.
  2. open Attachment modelling — mapping mode, separate attachment decks, or explicit roster-entry provenance fields.
  3. open Faction table final shape — references are confirmed here; minimal fields land in synthesis unless topic 06 needs them.
  4. 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)

DeferredWhyWhere it lands
Exact card counts per division or deckUD-A1 shape-not-values; balance/contentcontent/balance pass
Numeric To&E ratios translated into slotsValues and tuning, not schema shapedeck-content pass
Availability caps, costs, veterancy quantitiesCombat/balance valuesprototype balance pass
Campaign profile mutation triggers and magnitudesCampaign economycampaign-economy pass
Attachment quantities and exact attached unitsContent valuesroster/content pass

9. Source log (topic 05)

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.