# TAK Mission Package Manifest
[ATAK File Formats Supported](https://tak.gov/documentation/resources/tak-developers/developer-documentation/atak-development/file-formats-supported)
## ATAK 5.5 Soruce Code
{%preview https://github.com/TAK-Product-Center/atak-civ %}
## Cot Event Point
### Image
MANIFEST/manifest.xml:
Picture with same value: 5d14ff4e-f5ef-4b32-aa80-c720da0f4daf
```xml
<MissionPackageManifest version="2">
<Configuration>
<Parameter name="uid" value="0f9c30d6-89e2-45ee-afed-a12eb2e0d587" />
<Parameter name="name" value="DP-SYU-CT1-2024-04-21-NHP" />
</Configuration>
<Contents>
<Content ignore="false"
zipEntry="5d14ff4e-f5ef-4b32-aa80-c720da0f4daf/5d14ff4e-f5ef-4b32-aa80-c720da0f4daf.cot">
<Parameter name="uid" value="5d14ff4e-f5ef-4b32-aa80-c720da0f4daf" />
<Parameter name="name" value="SYU-CT1.21.180731" />
</Content>
<Content ignore="false" zipEntry="496545bb2467a69864aae7bc7c8c15d4/20240421_180730.jpg">
<Parameter name="uid" value="5d14ff4e-f5ef-4b32-aa80-c720da0f4daf" />
</Content>
</Contents>
</MissionPackageManifest>
```
Cot File:
```xml
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<event version='2.0' uid='5d14ff4e-f5ef-4b32-aa80-c720da0f4daf' type='b-i-x-i'
time='2024-04-21T12:04:33.810Z' start='2024-04-21T12:04:33.810Z'
stale='2025-04-21T12:04:33.810Z' how='h-g-i-g-o' access='Undefined'>
<point lat='24.145785' lon='120.636445' hae='121.097' ce='9999999.0' le='9999999.0' />
<detail>
<status readiness='true' />
<archive />
<archive />
<remarks></remarks>
<link uid='ANDROID-4d9f47b155248d48' production_time='2024-04-21T10:07:31.163Z'
type='a-f-G-U-C' parent_callsign='SYU-CT1' relation='p-p' />
<contact callsign='SYU-CT1.21.180731' />
<color argb='-1' />
</detail>
</event>
```
### Video
MANIFEST/manifest.xml:
```xml
<MissionPackageManifest version="2">
<Configuration>
<Parameter name="name" value="CCTV"/>
<Parameter name="uid" value="071c6d31-2bc8-4cc7-84ec-29c1baaa3429"/>
</Configuration>
<Contents>
<Content zipEntry="f0882413-a260-43e5-b311-2ea755614663/f0882413-a260-43e5-b311-2ea755614663.cot" ignore="false">
<Parameter name="uid" value="f0882413-a260-43e5-b311-2ea755614663"/>
</Content>
</Contents>
</MissionPackageManifest>
```
Cot File:
```xml
<?visible true?>
<?persistorRestore True?>
<event version="2.0" uid="0de7aec2-5bbe-4d53-8b2b-a833690d0814" type="b-m-p-s-p-loc" time="2024-10-06T06:31:55.89Z" start="2024-10-06T06:31:55.89Z" stale="2024-10-13T06:31:55.89Z" how="h-g-i-g-o" access="Undefined">
<point lat="24.1495349" lon="120.6234818" hae="78.7837097" ce="9999999" le="9999999" />
<detail>
<contact callsign="CCTV 台74線(南屯一交流道到南屯二交流道)" />
<link type="a-f-G-U-C-I" uid="S-1-5-21-1126089573-1298947132-2304692398-1001" parent_callsign="Utaha-04" relation="p-p" production_time="2023-12-21T14:43:25Z" />
<archive />
<sensor fov="50" fovBlue="0" displayMagneticReference="0" range="43" fovGreen="1" fovAlpha="0.317647058823529" fovRed="1" azimuth="352" hideFov="true" strokeColor="16777215" />
<remarks />
<__video uid="6f50bdb6-c29b-4ff7-8b66-f7b0ca28ceb3">
<ConnectionEntry protocol="https" path="/abs2mjpg/bmjpg?camera=329" address="cctvc.freeway.gov.tw" port="443" uid="6f50bdb6-c29b-4ff7-8b66-f7b0ca28ceb3" alias="台74線(南屯一交流道到南屯二交流道)" roverPort="-1" rtspReliable="0" ignoreEmbeddedKLV="False" networkTimeout="5000" bufferTime="-1" />
</__video>
</detail>
</event>
```
## Cot Remote Resources (KML Network Link)
KML/KMZ Download: `atak/temp/`
Setting Filepath: `atak/tools/import/import_links.xml`
MANIFEST/manifest.xml:
```xml
<MissionPackageManifest version="2">
<Configuration>
<Parameter name="uid" value="02e7f8a6-a75c-4844-b614-5e0079bf11d7"/>
<Parameter name="name" value="GuangfuOnlineMaps"/>
<Parameter name="onReceiveImport" value="true"/>
<Parameter name="onReceiveDelete" value="true"/>
</Configuration>
<Contents>
<Content ignore="false" zipEntry="8ebbcd53ec299b565a8b7c31fad0eeed/GF.cot"/>
<Content ignore="false" zipEntry="0dc70b363dfea3dea620a90d968cad83/PD.cot"/>
<Content ignore="false" zipEntry="3a3e91941c5138f01cfc6794b675abfb/School.cot"/>
</Contents>
</MissionPackageManifest>
```
Cot File:
```xml
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<event version='2.0' uid='f95bb767-f82d-4db5-a5ea-1b10d785f588' type='b-i-r-r'
time='2025-09-30T03:46:03.176Z' start='2025-09-30T03:46:03.176Z'
stale='2025-09-30T04:46:03.176Z' how='h-g'>
<point lat='23.666264633041028' lon='121.42125221523214' hae='9999999.0' ce='9999999.0'
le='9999999.0' />
<detail>
<contact callsign='TCCCA' />
<RemoteResources>
<RemoteResource name='Police_and_Fire_Stations' refreshSeconds='0' type='KMZ'
url='https://docs.google.com/uc?id=1R4s_E7euYksGHFzLdtbdnODlcsH01vLW&export=kmz'
deleteOnExit='false' />
</RemoteResources>
</detail>
</event>
```
## KML/KMZ
Filepath: `atak/overlays`
MANIFEST/manifest.xml:
```xml
<MissionPackageManifest version="2">
<Configuration>
<Parameter name="uid" value="9261f972-ae30-4138-ac58-aa03ce813b62" />
<Parameter name="name" value="DP-Taichung-Basic資料" />
</Configuration>
<Contents>
<Content ignore="false" zipEntry="88549eb3aa7a4bf9bee59f90467d946f/台中醫院.kmz">
<Parameter name="name" value="台中醫院.kmz" />
<Parameter name="contentType" value="KML" />
<Parameter name="visible" value="false" />
</Content>
<Content ignore="false" zipEntry="3c0d0f7bcca7b83b8a50659f83e68b00/消防.kmz">
<Parameter name="name" value="消防.kmz" />
<Parameter name="contentType" value="KML" />
<Parameter name="visible" value="false" />
</Content>
</Contents>
</MissionPackageManifest>
```
## Icon Set
iconset (zip)
MANIFEST/manifest.xml:
```xml
<MissionPackageManifest version="2">
<Configuration>
<Parameter name="name" value="Generic Icons.zip"/>
<Parameter name="uid" value="86eb307e-a301-467f-8d3f-e4621e0d5b07"/>
<Parameter name="onReceiveDelete" value="true"/>
<Parameter name="onReceiveImport" value="true"/>
</Configuration>
<Contents>
<Content zipEntry="71bc3bb042e94d94b036be09954d8abc/Generic Icons.zip" ignore="false"/>
</Contents>
</MissionPackageManifest>
```
`71bc3bb042e94d94b036be09954d8abc/Generic Icons.zip/iconset.xml`
```xml
<iconset name="Generic Icons" uid="ad78aafb-83a6-4c07-b2b9-a897a8b6a38f" defaultGroup="SqrNum" skipResize="false" version="1">
<icon name="A Pin Invert.png"/>
</iconset>
```
## GRG Overlays
Filepath: `atak/grg`
* Use Rubber Sheet to add geographic data into pdf/picture (KMZ)
* Download Map as .ovr.sqlite
* GeoPDF, GeoTIFF ...
MANIFEST/manifest.xml:
```xml
<MissionPackageManifest version="2">
<Configuration>
<Parameter name="uid" value="6eaaf73b-1d70-467a-835c-f9244b97c730"/>
<Parameter name="name" value="DP-GuangFu-Google-ImageOvers"/>
</Configuration>
<Contents>
<Content ignore="false" zipEntry="8e702b4d5814eb49da110c41d33fc97/T-GRG-GoogleRaodNoPOI-GuangFu.ovr.sqlite">
<Parameter name="name" value="T-GRG-GoogleRaodNoPOI-GuangFu.ovr.sqlite"/>
<Parameter name="contentType" value="External GRG Data"/>
<Parameter name="visible" value="false"/>
</Content>
</Contents>
</MissionPackageManifest>
```
## DTED
Filepath: `atak/DTED`
Zip archive file:
```
taiwan-dted2
├── e120
│ ├── N21.DT2
│ ├── N22.DT2
│ ├── N23.DT2
│ ├── N24.DT2
│ └── N25.DT2
├── e121
│ ├── N21.DT2
│ ├── N22.DT2
│ ├── N23.DT2
│ ├── N24.DT2
│ └── N25.DT2
└── e122
├── N21.DT2
├── N22.DT2
├── N23.DT2
├── N24.DT2
└── N25.DT2
```
MANIFEST/manifest.xml:
```xml
<MissionPackageManifest version="2">
<Configuration>
<Parameter name="uid" value="788c6026-5c96-48ac-9c43-f258aef852b9"/>
<Parameter name="name" value="DTED2-Taiwan-2025.zip"/>
</Configuration>
<Contents>
<Content ignore="false" zipEntry="taiwan-dted2/e120/N21.DT2">
<Parameter name="contentType" value="DTED"/>
</Content>
<Content ignore="false" zipEntry="taiwan-dted2/e120/N22.DT2">
<Parameter name="contentType" value="DTED"/>
</Content>
<Content ignore="false" zipEntry="taiwan-dted2/e120/N23.DT2">
<Parameter name="contentType" value="DTED"/>
</Content>
<Content ignore="false" zipEntry="taiwan-dted2/e120/N24.DT2">
<Parameter name="contentType" value="DTED"/>
</Content>
<Content ignore="false" zipEntry="taiwan-dted2/e120/N25.DT2">
<Parameter name="contentType" value="DTED"/>
</Content>
<Content ignore="false" zipEntry="taiwan-dted2/e121/N21.DT2">
<Parameter name="contentType" value="DTED"/>
</Content>
<Content ignore="false" zipEntry="taiwan-dted2/e121/N22.DT2">
<Parameter name="contentType" value="DTED"/>
</Content>
<Content ignore="false" zipEntry="taiwan-dted2/e121/N23.DT2">
<Parameter name="contentType" value="DTED"/>
</Content>
<Content ignore="false" zipEntry="taiwan-dted2/e121/N24.DT2">
<Parameter name="contentType" value="DTED"/>
</Content>
<Content ignore="false" zipEntry="taiwan-dted2/e121/N25.DT2">
<Parameter name="contentType" value="DTED"/>
</Content>
<Content ignore="false" zipEntry="taiwan-dted2/e122/N21.DT2">
<Parameter name="contentType" value="DTED"/>
</Content>
<Content ignore="false" zipEntry="taiwan-dted2/e122/N22.DT2">
<Parameter name="contentType" value="DTED"/>
</Content>
<Content ignore="false" zipEntry="taiwan-dted2/e122/N23.DT2">
<Parameter name="contentType" value="DTED"/>
</Content>
<Content ignore="false" zipEntry="taiwan-dted2/e122/N24.DT2">
<Parameter name="contentType" value="DTED"/>
</Content>
<Content ignore="false" zipEntry="taiwan-dted2/e122/N25.DT2">
<Parameter name="contentType" value="DTED"/>
</Content>
</Contents>
</MissionPackageManifest>
```
### Not Success Data Package??
MANIFEST/manifest.xml:
```xml
<MissionPackageManifest version="2">
<Configuration>
<Parameter name="uid" value="d7ab8dc6-bc5f-432f-be30-4f6d252db44a"/>
<Parameter name="name" value="DTED2-Taiwan-2025.zip"/>
</Configuration>
<Contents>
<Content ignore="false" zipEntry="taiwan-dted2-2025.zip">
<Parameter name="contentType" value="Zipped DTED"/>
<Parameter name="name" value="taiwan-dted2-2025.zip"/>
</Content>
</Contents>
</MissionPackageManifest>
```
ATAK will show extra failed, but import success.
## Maps
Filepath: `atak/imageery`
MANIFEST/manifest.xml:
```xml
<MissionPackageManifest version="2">
<Configuration>
<Parameter name="name" value="DP-Taiwna-Maps-V3.1"/>
<Parameter name="uid" value="b5abd9ec-7414-48cf-a12d-e76051871d15"/>
</Configuration>
<Contents>
<Content ignore="false" zipEntry="af60bae3c35515375c4235beec7222cd/TW_EMAP5.xml">
<Parameter name="name" value="TW_EMAP5.xml"/>
<Parameter name="contentType" value="External Native Data"/>
</Content>
</Contents>
</MissionPackageManifest>
```
```xml
<customMapSource>
<name>TW_EMAP5</name>
<minZoom>1</minZoom>
<maxZoom>19</maxZoom>
<tileType>png</tileType>
<url>https://wmts.nlsc.gov.tw/wmts/EMAP5/default/GoogleMapsCompatible/{$z}/{$y}/{$x}.png</url>
<tileUpdate>None</tileUpdate>
<backgroundColor>#000000</backgroundColor>
<ignoreErrors>false</ignoreErrors>
</customMapSource>
```
## Vector Maps
MANIFEST/manifest.xml:
```xml
<MissionPackageManifest version="2">
<Configuration>
<Parameter name="uid" value="f86e807a-440b-40a2-b6df-45c487303d99"/>
<Parameter name="name" value="t3-maps.json"/>
<Parameter name="onReceiveImport" value="true"/>
<Parameter name="onReceiveDelete" value="true"/>
</Configuration>
<Contents>
<Content ignore="false" zipEntry="bb76750359eadf310b513b59d0480848/t3-maps.json">
<Parameter name="name" value="t3-maps.json"/>
<Parameter name="contentType" value="External Native Data"/>
</Content>
</Contents>
</MissionPackageManifest>
```
t3-maps.json
```json
{
"schema": "4.0.0",
"title": "TAK Maps",
"content": "vector",
"downloadable": true,
"refreshInterval": 0,
"url": "https://d3c2bw74fo3eg6.cloudfront.net/t3/dataset-containers/vector/tmsm/planet-latest.osm/{$z}/{$x}/{$y}.pbf",
"numLevels": 15,
"metadata": {
"styleSchema": "omt"
}
}
```
---
* ImportResolver
* atak/ATAK/app/src/main/java/com/atakmap/android/importfiles/sort/ImportResolver.java
- public abstract class ImportResolver
- public Pair<String, String> getContentMIME()
- ImportVideoAliasSort
- atak/ATAK/app/src/main/java/com/atakmap/android/video/ImportVideoAliasSort.java
- public Pair<String, String> getContentMIME()
- Video Alias
- application/xml
- GeoPackageImporter
- atak/ATAK/app/src/main/java/com/atakmap/android/gpkg/GeoPackageImporter.java
- public Pair<String, String> getContentMIME()
- GeoPackage
- application/octet-stream
- ImportMissionPackageSort
- atak/ATAK/app/src/main/java/com/atakmap/android/importfiles/sort/ImportMissionPackageSort.java
- public Pair<String, String> getContentMIME()
- Data Package
- application/zip
- ImportCotSort
- atak/ATAK/app/src/main/java/com/atakmap/android/importfiles/sort/ImportCotSort.java
- public Pair<String, String> getContentMIME()
- CoT Event
- application/cot+xml
- public static boolean isCoT(String content)
- content has "<event" and "<point"
- ImportDTEDZSort
- atak/ATAK/app/src/main/java/com/atakmap/android/importfiles/sort/ImportDTEDZSort.java
- public Pair<String, String> getContentMIME()
- Zipped DTED
- application/zip
* IconsetAdapter
* atak/ATAK/app/src/main/java/com/atakmap/android/icons/IconsetAdapter.java
* public class IconsetAdapter extends BaseAdapter
- private static final String TAG = "IconsetAdapter";
- public static final String ICONSET_CONTENTTYPE = "iconset";
AbstractMapComponent
* GRGMapComponent (GRG)
* atak/ATAK/app/src/main/java/com/atakmap/android/grg/GRGMapComponent.java
* public class GRGMapComponent extends AbstractMapComponent
- public static final String IMPORTER_CONTENT_TYPE = "External GRG Data";
- public static final String IMPORTER_DEFAULT_MIME_TYPE = "application/octet-stream";
- public static final String IMPORTER_TIFF_MIME_TYPE = "image/tiff";
- ==LayersMapComponent== (WFS??)
- atak/ATAK/app/src/main/java/com/atakmap/android/layers/LayersMapComponent.java
- public class LayersMapComponent extends AbstractMapComponent
- public static final String IMPORTER_CONTENT_TYPE = "External Native Data";
- public static final String IMPORTER_DEFAULT_MIME_TYPE = "application/octet-stream";
- ElevationOverlaysMapComponent
- atak/ATAK/app/src/main/java/com/atakmap/android/elev/ElevationOverlaysMapComponent.java
Importer
- AbstractImporter
- atak/ATAK/app/src/main/java/com/atakmap/android/importexport/AbstractImporter.java
- public abstract class AbstractImporter implements Importer
AbstractImporter
- WFSImporter
- atak/ATAK/app/src/main/java/com/atakmap/android/wfs/WFSImporter.java
implements Parcelable
- UserCredentials
- BasicUserCredentials
- GetVideoListRequest
- PostVideoListRequest
- CertificateCSRRequest
- NetworkContact
- QueryUserTracksRequest
- CotPoint
- NameValuePair
- RetryRequest
- DeviceProfileRequest
- GetCotEventRequest
- GetFilesRequest
- ActionBroadcastData
- GetClientListRequest
- ServerContact
- SimpleHttpRequest
- PostUserTracksRequest
- ResourceFile
- ==MIMEType==
- CotEvent
- PostErrorLogsRequest
- ExportTrackParams
- GetFileRequest
- QueryMissionPackageRequest
- GetCotHistoryRequest
- GetServerVersionRequest
- GeoPoint
- PostPackageRequest
- ActionMenuData
- MissionPackageContents
- atak/ATAK/app/src/main/java/com/atakmap/android/missionpackage/file/MissionPackageContents.java
- public class MissionPackageContents implements Parcelable
- private static final String TAG = "MissionPackageContents";
- FileTransfer
- ==RemoteResource==
* atak/ATAK/app/src/main/java/com/atakmap/android/importfiles/resource/RemoteResource.java
- public class RemoteResource implements Parcelable
- private static final String TAG = "RemoteResource";
- MissionPackageConfiguration
- MissionPackageManifest
- atak/ATAK/app/src/main/java/com/atakmap/android/missionpackage/file/MissionPackageManifest.java
- public class MissionPackageManifest implements Parcelable
- private static final String TAG = "MissionPackageManifest";
- MissionPackageQueryResult
- GetAllServerGroupsRequest
- private static final String TAG = "ChannelsGetAllServerGroupsRequest";
- CertificateConfigRequest
- private static final String TAG = "CertifiateConfigRequest";
- ActionClickData
- SetActiveServerGroupsRequest
- private static final String TAG = "ChannelsSetActiveServerGroupsRequest";
- ActionBroadcastExtraStringData