Overview#
A suspect vehicle last pinged a cell tower near a border crossing at 02:17, and an analyst needs both the static address of the crossing facility and the live track of the vehicle to build a timeline. The Location domain handles exactly that: it manages static location profiles for places and dynamic real-time tracking for moving entities, all within the POLE (Person, Organisation, Location, Object, Event) model.
Key Features#
- Static location profiles with geographic coordinates, addresses, and GeoJSON shapes
- Dynamic entity tracking with real-time location updates and full history
- Multiple location sources: GPS, WiFi, cell tower, IP, and manual entry
- Configurable tracking intervals and accuracy thresholds per entity
- Alert rules for lost signal, low accuracy, and low battery conditions
- Tracking statistics: total updates, average accuracy, uptime percentage, and signal losses
- Location metadata including battery level, network type, speed, heading, and altitude
- Entity types for tracking: device, vehicle, person, and asset
- Dual coordinate format support (object and array)
- GeoJSON support for complex geographic shapes
Use Cases#
Relevant sectors include law enforcement, defence, and critical infrastructure protection.
- Managing static location profiles for buildings, addresses, and points of interest
- Real-time tracking of vehicles and devices with configurable update intervals
- Monitoring tracked entity health through lost signal and low battery alerts
- Querying location history for tracked entities over specific time ranges
Integration#
The Location domain integrates with Person for location-linked profiles, Event for location-based correlation, Investigation for case context, Geofence for virtual boundary management, and Alert for location-triggered notifications.
Open Standards#
- GeoJSON (RFC 7946): Location profiles, tracking-entity coordinates, and geofence boundaries are stored and exchanged as GeoJSON geometries (Point, Polygon, FeatureCollection), with PostGIS functions such as
ST_GeomFromGeoJSONandST_AsGeoJSONused throughout. - WGS 84 / EPSG:4326: All latitude and longitude values are referenced to the World Geodetic System 1984 datum; PostGIS spatial operations explicitly enforce SRID 4326 on every stored geometry.
- ISO 8601: Timestamps for location updates, history entries, and alert events are represented as ISO 8601 date-time strings in both storage and API responses.
- POLE Data Model: The domain is explicitly designed as the "Location" node of the POLE (Person, Organisation, Location, Event) intelligence model, governing how physical locations link to people, organisations, and events in an investigation graph.
- OGC KML 2.2: Geofence boundaries can be imported from and exported to Keyhole Markup Language files, with coordinate parsing conformant to the OGC KML 2.2 specification.
- GraphQL (June 2018 specification): All location and tracking-entity operations (queries, mutations, subscriptions) are exposed via a Strawberry-based GraphQL API, including typed inputs and response envelopes.
- WebSocket (RFC 6455): Real-time location-tracking updates are broadcast over WebSocket connections to connected dashboard clients, avoiding polling for live-position data.
Last Reviewed: 2026-02-05 Last Updated: 2026-04-14