A set of key-value pairs providing additional meta-data and properties about the source of this Location. A Location object can be created manually or by a variety of LocationDataSource types, for example from the default platform data source or external GPS. When user code receives a new Location, it can be important to determine how the information was obtained.

In addition, mobile devices may provide different details about their in-built location services. For example, Android systems can provide data on the number of satellites used to find a position, whereas on iOS this information is not available. When a given property is not available to the data source the entry should be omitted from the additionalSourceProperties.

The additionalSourceProperties provide a means for the creator of a Location object to record flexible information such as:

  • The confidence level associated with the location

  • The method used to obtain the location

  • The provenance of the location

Information is provided as a set of key-value pairs, where the String key describes the type of data held in the Any value. Values must be basic data types such as string, numeric, boolean or date. The creator of the Location can use any string for the key - but this API recognizes a number of well known keys and values which should be used, if available. See SourceProperties:

Keys are case-sensitive.