Skip to main content

What is Cursor on Target (CoT)?

Cursor on Target (CoT) is an XML-based data format used for real-time situational awareness and command-and-control applications. It provides a standardized way to represent position, status, and other tactical information.

CoT Message Structure

Basic XML Format

A CoT message consists of three main elements: event, point, and detail.

Event Element

The root element containing metadata about the tactical event.
string
required
Schema version of the CoT message (typically “2.0”)
string
required
Globally unique identifier for this event. Format varies by event type.
string
required
Hierarchical CoT type string (e.g., “a-f-G-E-S” for friendly ground equipment)Format: a-{attitude}-{dimension}-{function}-{specific}
  • a: Atom (basic entity)
  • attitude: f (friendly), h (hostile), n (neutral), u (unknown)
  • dimension: G (ground), A (air), S (surface), U (subsurface), P (space)
  • function: E (equipment), U (unit), I (installation), etc.
datetime
required
Timestamp when the event was generated (ISO 8601 format with Zulu time)Format: YYYY-MM-DDTHH:MM:SS.fffZ
datetime
required
Timestamp when the event becomes valid
datetime
required
Timestamp when the event should be considered expiredDefault: 60 seconds after generation time
string
required
How the coordinates were generatedCommon values:
  • h-g-i-g-o: Human-generated, GPS, observed
  • m-g: Machine-generated, GPS
  • h-e: Human-entered
string
Access control restrictions for this event

Point Element

Defines the geographic location of the event.
float
required
Latitude in decimal degrees (WGS 84 ellipsoid)Range: -90.0 to 90.0
float
required
Longitude in decimal degrees (WGS 84 ellipsoid)Range: -180.0 to 180.0
float
required
Height Above Ellipsoid in meters
float
required
Circular Error (horizontal accuracy) in meters95% confidence that position is within CE radius
float
required
Linear Error (vertical accuracy) in meters95% confidence that altitude is within LE range

Detail Element

Contains additional information about the event. The detail element is extensible and can contain various sub-elements based on the event type.

Common Detail Sub-elements

Contact information for the entityAttributes:
  • callsign: Display name
  • endpoint: Network endpoint information
Group/team membership informationAttributes:
  • name: Group/team name
  • role: Role within the group
TAK client version informationAttributes:
  • platform: Platform type (ATAK-CIV, WinTAK, iTAK)
  • version: Client version number
Movement informationAttributes:
  • speed: Speed in meters per second
  • course: Direction of travel in degrees (0-360)
Free-form text remarks or notes
Data package and file transfer informationSub-elements:
  • dest: Destination callsigns for the package
Emergency alert informationAttributes:
  • type: Emergency type (911 Alert, Ring The Bell, etc.)

CoT Type Hierarchy

Type String Format

CoT types use a hierarchical dot-separated format:

Common CoT Types

FTS CoT Domain Model

Event Class

The core CoT event implementation in FTS:

Point Class

Detail Class

CoT Message Processing

Parsing Pipeline

XML to Domain Object

FTS converts XML to domain objects using a multi-step process:

Type Mapping

FTS maintains mappings between machine-readable and human-readable CoT types: Machine-ReadableHuman-Readable
  • a-f-G-E-S → “FriendlyGroundEquipment”
  • b-m-p-s-p-loc → “GeoChat”
  • b-t-f → “Ping”
  • a-f-G-E-V-C → “FriendlyGroundVehicle”
This allows routing to specific component handlers.

Serialization

Domain Object to XML

Common CoT Message Examples

Presence/Position Update

GeoChat Message

Emergency Alert

Data Package

Special Considerations

Time Handling

All timestamps must be in ISO 8601 format with Zulu (UTC) time: YYYY-MM-DDTHH:MM:SS.fffZDefault stale time is 60 seconds after generation.

UID Format

UIDs should be globally unique. Common patterns:
  • Position updates: {platform}-{device-id} (e.g., ANDROID-deadbeef)
  • GeoChat: GeoChat.{sender-uid}.{chatroom}.{message-id}
  • Server events: {hostname}.server-ping

Coordinate System

All coordinates use WGS 84 ellipsoid:
  • Latitude: -90° to 90° (negative = south)
  • Longitude: -180° to 180° (negative = west)
  • HAE: Height above WGS 84 ellipsoid in meters

Architecture

Understand FTS architecture

Services

Learn about FTS services

Components

Explore the component system

API Reference

REST API documentation