====== Track Labeling ====== Some early tracking customers have indicated that they want to label tracks with arbitrary information, job specific information. Examples of this may be "gravel", "topsoil", or "cut", "fill". These labels are not only job specific, but customer (AKA contractor) specific. Labels appear to have the following properties: * An attribute of the track * Job (Project) specific * Unique to an AGTEK customer * Ad-hoc * Vary throughout the course of the day. * Label values may not even be homogeneous on any one day across all tracks. To support this structure, it is proposed that the Access Server add an attribute value to the track object. This value needs to allow for a variety of labels, perhaps even time varying across the track. Labeling must support all deployed track applications and platforms. ===== Other structural items in server ===== Currently the provides generic Configuration objects and cycleline storage available to end user programs. These objects are stored using the [[http://www.json.org|JSON]] standard. There should be strong consideration to extend this to track attributes. The most compatible format right now is to add [[http://www.json.org|JSON]] objects to each track, as a field called "attributes". This allows applications to store additional attributes, either track-global, or time varying (by changing field names). All deployment platforms are able to parse [[http://www.json.org|JSON]] objects. ===== Proposed structure ===== Initial proposal for attributes: * "agtek.label", string, arbitrary value. Other attribute values can be added at a later time, provided applications retain the entire [[http://www.json.org|JSON]] object when updating tracks. Applications should ignore attribute fields which are not understood. ===== Support Libraries ===== The following [[http://www.json.org|JSON]] implementations are available for the listed platforms: * Android - org.json (part of runtime) * IOS - NSJsonSerialization * Java - org.json (external library, available) * Web - Built into most web browsers * Windows - Windows.Data.Json