Fundamental types
- value
-
Any representable value.
- bool
-
A boolean.
Base: value
- string
-
A string.
Base: value
- map
-
A map. The parameters specify the allowed keys in the map.
Each parameter is a association tree that describes one possible key. The name of the tree is the key itself, and the second level of the tree can have "doc" and "type" attributes for that key.
When the special key name "allow-other-keys" is present, all keys are allowed; otherwise, only the specified keys have any meaning and additional keys are an error.
When no parameters are given, all keys are allowed.rest: The allowed keys
Base: value
Generic types
- association-tree
-
A tree made from nested lists, used to associate (hierarchical) keys with values.
For example, the association tree
[ "foo", [ "bar", 12 ], [ "baz", 42 ] ]
associates "foo", "bar" with 12 and "foo", "baz" with 42.
Association trees are often used as a simple "Nano DOM" for XML documents.
Formally, a association tree is a list whose first element is a string, and whose rest elements are either association trees, or a single value.
The "name" of a association tree is the first element of its top-level list.
As a special case, a association tree with just a name and no other elements can be abbreviated by just stating the name as a string. E.g., the following two values are equivalent when considered as a association tree:
"foo" [ "foo" ]Base: value
- association-list
-
A list of association trees.
Base: List of association-trees
- string-enum
-
This is the base type for enumerations of fixed strings. The parameters describe the possible values.
Each parameter is a association tree that describes one of the choices. The name of the association tree is the string for the choice itself and the second level of the tree can have a "doc" attribute for that choice.rest: The possible values
Base: string
- int-enum
-
This is the base type for enumerations of fixed integers. The parameters describe the possible values.
Each parameter is a association tree that describes one of the choices. The name of the association tree is a symbolic name for the choice itself and the second level of the tree must have a "value" attribute that gives the numerical value of the choice in decimal. A choice can also have a "doc" attribute, of course.rest: The possible values
Base: integer
Specific types
- type
-
A reference to a type, consisting of a name and optional parameters.
Type references are just association trees: the name of the tree names the referenced type, and the associations of the association tree are the parameters.Base: association-tree
- temperature
-
A temperature in Kelvin.
Base: number
Type parameters:
min
0
- energy
-
An amount of energy, in Joule.
Base: number
- power
-
A power, in Watt.
Base: number
- time
-
A point in time, represented as the number of nano-seconds since 00:00 January 1, 1970, UTC.
Base: integer
- distance
-
A physical length between two points, in meters.
Base: integer
- duration
-
A time duration, in nano-seconds.
Base: integer
- percentage
-
A percentage.
Base: integer
Type parameters:
min
0
max
100
- location-source
-
Describes a source of location information. Possible values are "satellite", "wlan", "cellular", and "timezone".
Base: Enumeration of strings
Possible enumeration values:
satellite
wlan
cellular
timezone
- tracker-uri
-
A URI that names a object in the Tracker object store.
Base: string