Skip to content

APP-6E / MIL-STD-2525E Symbol Rendering

Status: Implemented

See the Status & Roadmap for the system-wide view.

What it is

MIL-STD-2525E (US), APP-6E (NATO), and ADatP-37 are three equivalent expressions of the same military map-symbology standard: MIL-STD-2525E is the US publication, APP-6E is the NATO publication (2525E and APP-6E are equivalent), and ADatP-37 defines the numeric SIDC coding scheme they share. Together they specify how a unit is drawn on a map — frame shape, affiliation colour, echelon indicator, and modifier overlays — from its SIDC.

Bedrock's integration

The SIDC parser and data model are implemented in common/src/sidc/ (parsing, 7 symbol sets, builder API, semantic validation, round-trip tests), exposed to Android via JNI. The renderer is implemented in android/ui/symbols/ (NatoSymbolDrawing.kt Jetpack Compose Canvas rendering, SidcEncoder.kt, NatoEnums.kt) with all frame shapes, echelon indicators, and HQ/TF/planned status, and no external dependencies.

The web client renders symbols on the MapLibre map via mil-sym-ts — the official US Army C5ISR TypeScript library and sister of mil-sym-android, with byte-identical parity intent. The web integration lives in web/inertia/features/map/symbols/tactical_symbols.ts. Repo-specific implementation detail is tracked with the owning repo: android/docs/standards/app6-symbology.md.

See also