When officers from different nations work together in a joint operations center, they must be able to read each other's screens. This is not a trivial requirement. Military map displays encode vast amounts of information through symbology conventions, layer management choices, and display modes — conventions that vary significantly between national systems if there is no standardization. A French officer looking at a German C2 display should not need a translator for the military symbols any more than they need one for the road signs. The CoMPD standard exists to guarantee this common picture.

CoMPD (Common Military Picture Display) is the NATO standard that specifies how the Common Operational Picture must be rendered — what symbols must appear for which entities, how layers must be managed, and what display behaviors must be standardized across all systems displaying the COP to coalition operators. For developers building C2 display software intended for coalition use, CoMPD compliance is not optional.

What CoMPD Is and Why Standardized Display Is Needed

The COP is meaningless if every system renders it differently. Consider the fundamental display question of unit size indicator display: if one national system represents a battalion with a tactical symbol frame and size modifier per APP-6D, but another represents the same unit with a proprietary icon that its operators have learned but coalition partners have not, then the common picture is not common — it is a source of confusion in precisely the situations where clarity is most critical.

CoMPD was developed within the FMN (Federated Mission Networking) framework and is published as an Allied Data Publication (ADatP) by NCIA. It defines minimum rendering requirements for COP displays in coalition operations: what must be shown, how it must be shown, and what display interactions must be supported. It explicitly allows national systems to provide additional capabilities beyond the minimum requirements, but requires that the minimum CoMPD-defined display behaviors are consistently implemented.

The practical scope of CoMPD covers military symbology rendering, layer management, coordinate display, zoom behavior, and a set of mandatory interactive capabilities. Each of these areas is technically non-trivial to implement correctly at scale — a COP display with tens of thousands of tracks must still meet CoMPD rendering requirements at interactive frame rates, which imposes performance constraints on the rendering architecture.

Key Requirements: APP-6D Symbology, Layer Management, Zoom Behaviour

The central technical requirement of CoMPD is APP-6D compliant symbol rendering. APP-6 (Application 6, Allied Procedural Publication 6) is the NATO publication defining military map symbols — the visual language of the common operational picture. APP-6D is the current edition. Every entity type that appears on a NATO COP — friendly ground units, hostile air contacts, maritime vessels, control measures, tactical graphics — has a defined symbol in APP-6D specified by frame shape, fill pattern, color, and modifier elements.

CoMPD requires that all entities with an APP-6D defined symbol be displayed with that symbol. Proprietary icons are not permitted for standardized entity types; the APP-6D symbol must be used. This creates a direct implementation requirement: the display engine must contain a complete APP-6D symbol library and a mapping from entity type identifiers in the COP data model to the correct APP-6D symbol for each entity.

Layer management requirements address the organization of the COP display into controllable layers. CoMPD defines a mandatory layer structure that all compliant displays must support: friendly force tracks, hostile force tracks, neutral/unknown tracks, control measures (phase lines, boundaries, objectives), terrain overlays, and imagery layers. Each layer must be independently toggleable, and the display must maintain a defined layer draw order (imagery below terrain below tracks below control measures) to prevent occlusion of tactically critical information.

Zoom behavior requirements ensure that the display provides consistent geographic context across zoom levels. CoMPD specifies that symbols must maintain a minimum screen size at all zoom levels to remain visible — symbols that disappear or become unreadably small when zoomed out are a compliance failure. It also specifies level-of-detail behavior for symbol modifier display: at high zoom levels, full symbol modifiers (unit size, reinforcement, task organization) are displayed; at lower zoom levels, only the core symbol is displayed to maintain display clarity. The zoom thresholds at which these transitions occur are specified to ensure consistent behavior across coalition systems.

Performance requirement: CoMPD compliance must be maintained at the operational scale of the COP — potentially tens of thousands of entity symbols rendered simultaneously. A display engine that renders correctly with a test dataset of 100 entities but degrades below CoMPD minimum frame rates at 10,000 entities will fail in coalition exercises. Performance testing against realistic entity counts must be part of the CoMPD compliance verification process, not an afterthought.

APP-6D Symbols: Implementation with Libraries

APP-6D symbols are formally defined as a coordinate-based vector graphics specification — each symbol is defined by a set of geometric primitives (lines, arcs, polygons) in a normalized coordinate space, with color, fill, and modifier rules. Implementing the full APP-6D symbol set from the specification requires either building a custom symbol renderer or using one of the available open-source symbol libraries.

The primary open-source APP-6D implementation is milsymbol (published by the Swedish defence agency FMV and available on GitHub as MilSymbol.js for JavaScript and in several ported versions for other languages). MilSymbol provides complete APP-6 symbol generation from SIDC (Symbol Identification Code) strings — the standard machine-readable encoding of military symbol specifications. Given a valid SIDC string, MilSymbol generates the correct SVG geometry for that symbol, handling the complex symbol construction rules (frame selection based on standard identity, fill pattern based on operational condition, modifier placement based on symbol type) that make manual implementation prohibitively complex.

For web-based COP displays, the JavaScript version of MilSymbol integrates naturally with Leaflet, OpenLayers, and Cesium mapping libraries. For native applications (C++, Java), the MilSymbol specification and community ports are available, though completeness and maintenance quality vary by port. Commercial APP-6D symbol engines with guaranteed completeness and support are available from defense geospatial software vendors including Esri Defense (integrated with ArcGIS Pro) and GeoMedia Defense.

Testing CoMPD Compliance

CoMPD compliance is verified through a formal test process that must be completed before a system can be certified for coalition COP display use. The test process covers symbol rendering accuracy (correct symbol generated for each SIDC), layer management compliance (correct layer behavior for all defined scenarios), zoom behavior (correct symbol visibility and detail level across the specified zoom range), and interactive capability (mandatory pan, zoom, and symbol query interactions perform correctly).

Automated testing of symbol rendering accuracy requires a reference symbol set — a collection of known-good SIDC strings with their correct visual rendering. NCIA maintains a CoMPD test symbol set, but it is restricted to programme participants. Development teams can construct their own reference sets using the APP-6D specification and milsymbol as a reference implementation, generating SVG renderings and comparing them against their display engine output. Pixel-perfect comparison is not the standard — the test criterion is visual equivalence, defined by a set of rendering rules in the APP-6D specification — but systematic difference detection is necessary to ensure symbol rendering accuracy across the full APP-6D symbol set.

Layer management and zoom behavior testing can be automated using standard UI testing frameworks with defined test scenarios: a scenario that loads a defined set of tracks, verifies layer toggle behavior, and checks that zoom behavior meets the specified thresholds. These tests should be part of the continuous integration pipeline for any CoMPD-compliant display system, ensuring that rendering regressions are detected as part of normal development workflow rather than during integration testing with coalition partners.