From b846f4288848d1d528e858829fcf3909c017d419 Mon Sep 17 00:00:00 2001 From: asanoaozora Date: Thu, 12 Jan 2017 13:47:43 +0100 Subject: GT-3460 --- api/franca/navigation/navigationcore/Guidance.fidl | 3 ++ .../navigation/navigationcore/LocationInput.fidl | 6 ++- .../navigationcore/MapMatchedPosition.fidl | 5 ++- .../navigationcore/NavigationCoreTypes.fidl | 50 ++++++++++++++++++++++ .../genivi-navigationcore-constants.xml | 15 +++++++ .../genivi-navigationcore-guidance.xml | 14 ++++-- .../genivi-navigationcore-locationinput.xml | 30 +++++++------ .../genivi-navigationcore-mapmatchedposition.xml | 3 +- 8 files changed, 106 insertions(+), 20 deletions(-) (limited to 'api') diff --git a/api/franca/navigation/navigationcore/Guidance.fidl b/api/franca/navigation/navigationcore/Guidance.fidl index e678e7a..64de71f 100644 --- a/api/franca/navigation/navigationcore/Guidance.fidl +++ b/api/franca/navigation/navigationcore/Guidance.fidl @@ -177,6 +177,9 @@ interface Guidance { @description : struct generated for DBus argument GetManeuversList_maneuversList **> struct Maneuver { + RoadShield[] roadShieldsAfterManeuver // A road can have zero or more roadshields. + String countryCodeAfterManeuver // ISO 3166‐1 alpha-3 country code (three-letter upper case). + String stateCodeAfterManeuver // ISO 3166-2 Subdivision code (e.g., provinces or state) of country (up to three characters). An empty string when absent. String roadNumberAfterManeuver String roadNameAfterManeuver RoadProperty roadPropertyAfterManeuver diff --git a/api/franca/navigation/navigationcore/LocationInput.fidl b/api/franca/navigation/navigationcore/LocationInput.fidl index c16cb24..e6f300b 100644 --- a/api/franca/navigation/navigationcore/LocationInput.fidl +++ b/api/franca/navigation/navigationcore/LocationInput.fidl @@ -52,6 +52,7 @@ interface LocationInput { LOCATION_INPUT = 177 FULL_ADDRESS = 178 POSTAL_CODE = 181 + ROADSHIELDS = 182 } union AddressValue { @@ -60,6 +61,7 @@ interface LocationInput { String stringValue Coordinate3D coordinate3DValue UInt8[] internalData + RoadShield[] roadShields } map Address { @@ -171,7 +173,7 @@ interface LocationInput { LocationHandle locationInputHandle <** - @description : selectionCriterion = enum(INVALID,LATITUDE,LONGITUDE,ALTITUDE,FULL_ADDRESS,COUNTRY,COUNTRYCODE,STATE,CITY,ZIPCODE,STREET,ROAD_NUMBER,HOUSENUMBER,HOUSENAME,CROSSING,DISTRICT,PHONENUMBER,POINAME,TOWNCENTER, ... ) + @description : selectionCriterion = enum(INVALID,LATITUDE,LONGITUDE,ALTITUDE,FULL_ADDRESS,COUNTRY,COUNTRYCODE,STATE,CITY,STREET,ROAD_NUMBER,HOUSENUMBER,HOUSENAME,CROSSING,DISTRICT,PHONENUMBER,POINAME,TOWNCENTER, ... ) **> AddressAttribute selectionCriterion } @@ -361,7 +363,7 @@ interface LocationInput { LocationHandle locationInputHandle <** - @description : selectionCriterion = enum(INVALID,LATITUDE,LONGITUDE,ALTITUDE,FULL_ADDRESS,COUNTRY,COUNTRYCODE,STATE,CITY,ZIPCODE,STREET,ROAD_NUMBER,HOUSENUMBER,HOUSENAME,CROSSING,DISTRICT,PHONENUMBER,POINAME,TOWNCENTER, ... ) + @description : selectionCriterion = enum(INVALID,LATITUDE,LONGITUDE,ALTITUDE,FULL_ADDRESS,COUNTRY,COUNTRYCODE,STATE,CITY,STREET,ROAD_NUMBER,HOUSENUMBER,HOUSENAME,CROSSING,DISTRICT,PHONENUMBER,POINAME,TOWNCENTER, ... ) **> AddressAttribute selectionCriterion } diff --git a/api/franca/navigation/navigationcore/MapMatchedPosition.fidl b/api/franca/navigation/navigationcore/MapMatchedPosition.fidl index c7238e5..5a72b20 100644 --- a/api/franca/navigation/navigationcore/MapMatchedPosition.fidl +++ b/api/franca/navigation/navigationcore/MapMatchedPosition.fidl @@ -32,7 +32,6 @@ interface MapMatchedPosition { COUNTRY = 166 //Base 0x00a0 STATE = 167 CITY = 168 - ZIPCODE = 169 STREET = 170 HOUSENUMBER = 171 CROSSING = 172 @@ -46,7 +45,8 @@ interface MapMatchedPosition { HOUSENAME = 180 POSTAL_CODE = 181 ROAD_NUMBER = 334 - MATCH_TYPE = 240 + MATCH_TYPE = 240 + ROADSHIELDS = 182 } enumeration PositionStatus extends GeoLocalizedEnum { //Base 0x00e0 @@ -102,6 +102,7 @@ interface MapMatchedPosition { Int16 offset Timestamp timestamp MatchMode matchMode + RoadShield[] roadShields } map AddressItemDict { diff --git a/api/franca/navigation/navigationcore/NavigationCoreTypes.fidl b/api/franca/navigation/navigationcore/NavigationCoreTypes.fidl index 61499ab..217683a 100644 --- a/api/franca/navigation/navigationcore/NavigationCoreTypes.fidl +++ b/api/franca/navigation/navigationcore/NavigationCoreTypes.fidl @@ -23,5 +23,55 @@ typeCollection NavigationCoreTypes { LONGITUDE = 161 //value of type Double, that expresses the longitude in format %3.6f. Range[-180:+180]. Example: 9.167898 ALTITUDE = 162 //value of type Int32, that expresses the altitude in meters } + enumeration RoadShieldAffixType { + NONE = 700 + NORTH = 701 + EAST = 702 + SOUTH = 703 + WEST = 704 + ALTERNATE = 705 + BYPASS = 706 + BUSINESS_LOOP = 707 + BUSINESS_ROUTE = 708 + BUSINESS_SPUR = 709 + EXTENDED = 710 + COLLECTOR = 711 + EXPRESS = 712 + } + + <** + @description : This struct describes information about the 'affix', which is a small sign which may be attached to + the main road sign. Usually this will be something like 'northbound'. In most cases the affixContent is just + a textual representation of the type, and can be ignored, but it could be used to build a string representation + of the road sign, if desired. + **> + struct RoadShieldAffix { + <** @description : Type of the affix. **> + RoadShieldAffixType affixType + + <** @description : The textual representation of the affix type. **> + String affixContent + } + + <** + @description : A road shield is the way in which a road number is graphically represented on road signs. For + example, A-roads in the Netherlands are displayed in white lettering on a red background, while E-roads + are shown as white letters on a green background. + **> + struct RoadShield { + <** @description : The text of a road number as displayed on a road shield. For example, for a motorway in Germany + with the numbers "A40" and "E34", the values are "40" and "E34". This shows that the 'A' is not shown on + the shield, but the 'E' is shown. **> + String roadNumber + + <** @description : A road shield can have zero or more affixes. **> + RoadShieldAffix[] affixes + + <** @description : For every road shield a number of icons may be available. There may be icons for high and low + density screens, and/or icons with different widths for different text lengths. Such a collection of icons + is called an icon set. Opaque data referring to an icon set for the RoadShield. An empty string indicates + that no icon set is available. **> + String iconSetId + } } diff --git a/api/navigation-core/genivi-navigationcore-constants.xml b/api/navigation-core/genivi-navigationcore-constants.xml index 2e80421..4d0e239 100644 --- a/api/navigation-core/genivi-navigationcore-constants.xml +++ b/api/navigation-core/genivi-navigationcore-constants.xml @@ -104,6 +104,7 @@ + @@ -241,4 +242,18 @@ + + + + + + + + + + + + + + diff --git a/api/navigation-core/genivi-navigationcore-guidance.xml b/api/navigation-core/genivi-navigationcore-guidance.xml index 9fdb6c7..d29a052 100644 --- a/api/navigation-core/genivi-navigationcore-guidance.xml +++ b/api/navigation-core/genivi-navigationcore-guidance.xml @@ -249,9 +249,17 @@ Note: the number corresponds to the number of elements in the array - - - maneuversList = array[struct(roadNumberAfterManeuver,roadNameAfterManeuver,roadPropertyAfterManeuver,drivingSide,offsetOfNextManeuver,maneuverDetails)] + + + maneuversList = array[struct(roadShieldsAfterManeuver,countryCodeAfterManeuver,stateCodeAfterManeuver,roadNumberAfterManeuver,roadNameAfterManeuver,roadPropertyAfterManeuver,drivingSide,offsetOfNextManeuver,maneuverDetails)] + roadShieldsAfterManeuver = array[struct(roadNumber,affixes,iconSetId)]. A road can have zero or more roadshields. + roadNumber= The text of a road number as displayed on a road shield. For example, for a motorway in Germany with the numbers "A40" and "E34", the values are "40" and "E34". This shows that the 'A' is not shown on the shield, but the 'E' is shown. + affixes = array[struct(affixType,affixContent)]. A road shield can have zero or more affixes + affixType = Type of the affix. enum(AFFIX_NONE,AFFIX_NORTH,AFFIX_EAST,AFFIX_SOUTH,AFFIX_WEST, AFFIX_ALTERNATE,AFFIX_BYPASS,AFFIX_BUSINESS_LOOP,AFFIX_BUSINESS_ROUTE,AFFIX_BUSINESS_SPUR,AFFIX_EXTENDED,AFFIX_COLLECTOR,AFFIX_EXPRESS) + affixContent = The textual representation of the affix type. + iconSetId = For every road shield a number of icons may be available. There may be icons for high and low density screens, and/or icons with different widths for different text lengths. Such a collection of icons is called an icon set. Opaque data referring to an icon set for the RoadShield. An empty string indicates that no icon set is available. + countryCodeAfterManeuver = the ISO 3166‐1 alpha-3 country code (three-letter upper case). + stateCodeAfterManeuver = the ISO 3166-2 Subdivision code (e.g., provinces or state) of country (up to three characters). An empty string when absent. roadNumberAfterManeuver = the number of the road after the maneuver (if a road has multiple road numbers, they will be separated by slashes ('/') and combined into one string) roadNameAfterManeuver = the name of the road after the maneuver roadPropertyAfterManeuver = enum(TOLL_ROADS, ... ,DEFAULT) diff --git a/api/navigation-core/genivi-navigationcore-locationinput.xml b/api/navigation-core/genivi-navigationcore-locationinput.xml index 2761d5d..5a17ed3 100644 --- a/api/navigation-core/genivi-navigationcore-locationinput.xml +++ b/api/navigation-core/genivi-navigationcore-locationinput.xml @@ -77,7 +77,7 @@ addressAttributesList = array[attribute] - attribute = enum(INVALID,LATITUDE,LONGITUDE,ALTITUDE,FULL_ADDRESS,COUNTRY,STATE,CITY,ZIPCODE,STREET,HOUSENUMBER,CROSSING,DISTRICT,PHONENUMBER,POINAME,TOWNCENTER, ... ) + attribute = enum(INVALID,LATITUDE,LONGITUDE,ALTITUDE,FULL_ADDRESS,COUNTRY,STATE,CITY,POSTAL_CODE,STREET,HOUSENUMBER,CROSSING,DISTRICT,PHONENUMBER,POINAME,TOWNCENTER, ... ) @@ -99,7 +99,7 @@ address = array[attribute] attribute = tuple(key,value) - key = enum(INVALID,LATITUDE,LONGITUDE,ALTITUDE,FULL_ADDRESS,COUNTRY,COUNTRYCODE,STATE,CITY,ZIPCODE,STREET,ROAD_NUMBER,HOUSENUMBER,HOUSENAME,CROSSING,DISTRICT,PHONENUMBER,POINAME,TOWNCENTER, ... ) + key = enum(INVALID,LATITUDE,LONGITUDE,ALTITUDE,FULL_ADDRESS,COUNTRY,COUNTRYCODE,STATE,CITY,POSTAL_CODE,STREET,ROAD_NUMBER,HOUSENUMBER,HOUSENAME,CROSSING,DISTRICT,PHONENUMBER,POINAME,TOWNCENTER, ... ) key = LATITUDE, value = value of type ´d´, that expresses the latitude in format %3.6f. Range[-90:+90]. Example: 48.70901 key = LONGITUDE, value = value of type ´d´, that expresses the longitude in format %3.6f. Range[-180:+180]. Example: 9.167898 key = ALTITUDE, value = value of type ´i´, that expresses the altitude in meters @@ -114,6 +114,7 @@ key = DISTRICT, value = value of type ´s´, that identifies the district name key = PHONENUMBER, value = value of type ´s´, that identifies a phone number key = POINAME, value = value of type ´s´, that identifies a POI name + key = ROADSHIELDS, value = value of type ´a(sa(is)s)´, that identifies a roadshield @@ -133,7 +134,7 @@ - selectionCriterion = enum(INVALID,LATITUDE,LONGITUDE,ALTITUDE,FULL_ADDRESS,COUNTRY,COUNTRYCODE,STATE,CITY,ZIPCODE,STREET,ROAD_NUMBER,HOUSENUMBER,HOUSENAME,CROSSING,DISTRICT,PHONENUMBER,POINAME,TOWNCENTER, ... ) + selectionCriterion = enum(INVALID,LATITUDE,LONGITUDE,ALTITUDE,FULL_ADDRESS,COUNTRY,COUNTRYCODE,STATE,CITY,POSTAL_CODE,STREET,ROAD_NUMBER,HOUSENUMBER,HOUSENAME,CROSSING,DISTRICT,PHONENUMBER,POINAME,TOWNCENTER, ... ) @@ -201,7 +202,7 @@ - selectionCriterion = enum(INVALID,LATITUDE,LONGITUDE,ALTITUDE,FULL_ADDRESS,COUNTRY,COUNTRYCODE,STATE,CITY,ZIPCODE,STREET,ROAD_NUMBER,HOUSENUMBER,HOUSENAME,CROSSING,DISTRICT,PHONENUMBER,POINAME,TOWNCENTER, ... ) + selectionCriterion = enum(INVALID,LATITUDE,LONGITUDE,ALTITUDE,FULL_ADDRESS,COUNTRY,COUNTRYCODE,STATE,CITY,POSTAL_CODE,STREET,ROAD_NUMBER,HOUSENUMBER,HOUSENAME,CROSSING,DISTRICT,PHONENUMBER,POINAME,TOWNCENTER, ... ) @@ -299,7 +300,7 @@ resultListWindow = array[address] address = array[attribute] attribute = tuple(key,value) - key = enum(INVALID,LATITUDE,LONGITUDE,ALTITUDE,FULL_ADDRESS,COUNTRY,COUNTRYCODE,STATE,CITY,ZIPCODE,STREET,ROAD_NUMBER,HOUSENUMBER,HOUSENAME,CROSSING,DISTRICT,PHONENUMBER,POINAME,TOWNCENTER, ... ) + key = enum(INVALID,LATITUDE,LONGITUDE,ALTITUDE,FULL_ADDRESS,COUNTRY,COUNTRYCODE,STATE,CITY,POSTAL_CODE,STREET,ROAD_NUMBER,HOUSENUMBER,HOUSENAME,CROSSING,DISTRICT,PHONENUMBER,POINAME,TOWNCENTER, ... ) key = LATITUDE, value = value of type ´d´, that expresses the latitude in format %3.6f. Range [-90:+90]. Example: 48.70901 key = LONGITUDE, value = value of type ´d´, that expresses the longitude in format %3.6f. Range [-180:+180]. Example: 9.167898 key = ALTITUDE, value = value of type ´i´, that expresses the altitude in meters @@ -314,7 +315,8 @@ key = DISTRICT, value = value of type ´s´, that identifies the district name key = PHONENUMBER, value = value of type ´s´, that identifies a phone number key = POINAME, value = value of type ´s´, that identifies a POI name - + key = ROADSHIELDS, value = value of type ´a(sa(is)s)´, that identifies a roadshield + @@ -371,7 +373,7 @@ address = array[attribute] attribute = tuple(key,value) - key = enum(INVALID,LATITUDE,LONGITUDE,ALTITUDE,FULL_ADDRESS,COUNTRY,COUNTRYCODE,STATE,CITY,ZIPCODE,STREET,ROAD_NUMBER,HOUSENUMBER,HOUSENAME,CROSSING,DISTRICT,PHONENUMBER,POINAME,TOWNCENTER, ... ) + key = enum(INVALID,LATITUDE,LONGITUDE,ALTITUDE,FULL_ADDRESS,COUNTRY,COUNTRYCODE,STATE,CITY,POSTAL_CODE,STREET,ROAD_NUMBER,HOUSENUMBER,HOUSENAME,CROSSING,DISTRICT,PHONENUMBER,POINAME,TOWNCENTER, ... ) key = LATITUDE, value = value of type ´d´, that expresses the latitude in format %3.6f. Range[-90:+90]. Example: 48.70901 key = LONGITUDE, value = value of type ´d´, that expresses the longitude in format %3.6f. Range[-180:+180]. Example: 9.167898 key = ALTITUDE, value = value of type ´i´, that expresses the altitude in meters @@ -386,6 +388,7 @@ key = DISTRICT, value = value of type ´s´, that identifies the district name key = PHONENUMBER, value = value of type ´s´, that identifies a phone number key = POINAME, value = value of type ´s´, that identifies a POI name + key = ROADSHIELDS, value = value of type ´a(sa(is)s)´, that identifies a roadshield @@ -405,7 +408,7 @@ - availableSelectionCriteria = array of enum(INVALID,LATITUDE,LONGITUDE,ALTITUDE,FULL_ADDRESS,COUNTRY,COUNTRYCODE,STATE,CITY,ZIPCODE,STREET,ROAD_NUMBER,HOUSENUMBER,HOUSENAME,CROSSING,DISTRICT,PHONENUMBER,POINAME,TOWNCENTER, ... ) + availableSelectionCriteria = array of enum(INVALID,LATITUDE,LONGITUDE,ALTITUDE,FULL_ADDRESS,COUNTRY,COUNTRYCODE,STATE,CITY,POSTAL_CODE,STREET,ROAD_NUMBER,HOUSENUMBER,HOUSENAME,CROSSING,DISTRICT,PHONENUMBER,POINAME,TOWNCENTER, ... ) Note: availableSelectionCriteria indicates the parts of the address that can be changed @@ -413,7 +416,7 @@ address = array[attribute] attribute = tuple(key,value) - key = enum(INVALID,LATITUDE,LONGITUDE,ALTITUDE,FULL_ADDRESS,COUNTRY,COUNTRYCODE,STATE,CITY,ZIPCODE,STREET,ROAD_NUMBER,HOUSENUMBER,HOUSENAME,CROSSING,DISTRICT,PHONENUMBER,POINAME,TOWNCENTER, ... ) + key = enum(INVALID,LATITUDE,LONGITUDE,ALTITUDE,FULL_ADDRESS,COUNTRY,COUNTRYCODE,STATE,CITY,POSTAL_CODE,STREET,ROAD_NUMBER,HOUSENUMBER,HOUSENAME,CROSSING,DISTRICT,PHONENUMBER,POINAME,TOWNCENTER, ... ) key = LATITUDE, value = value of type ´d´, that expresses the latitude in format %3.6f. Range[-90:+90]. Example: 48.70901 key = LONGITUDE, value = value of type ´d´, that expresses the longitude in format %3.6f. Range[-180:+180]. Example: 9.167898 key = ALTITUDE, value = value of type ´i´, that expresses the altitude in meters @@ -428,6 +431,7 @@ key = DISTRICT, value = value of type ´s´, that identifies the district name key = PHONENUMBER, value = value of type ´s´, that identifies a phone number key = POINAME, value = value of type ´s´, that identifies a POI name + key = ROADSHIELDS, value = value of type ´a(sa(is)s)´, that identifies a roadshield @@ -449,7 +453,7 @@ inputAddress = array[attribute] attribute = tuple(key,value) - key = enum(INVALID,LATITUDE,LONGITUDE,ALTITUDE,FULL_ADDRESS,COUNTRY,COUNTRYCODE,STATE,CITY,ZIPCODE,STREET,ROAD_NUMBER,HOUSENUMBER,HOUSENAME,CROSSING,DISTRICT,PHONENUMBER,POINAME,TOWNCENTER, ... ) + key = enum(INVALID,LATITUDE,LONGITUDE,ALTITUDE,FULL_ADDRESS,COUNTRY,COUNTRYCODE,STATE,CITY,POSTAL_CODE,STREET,ROAD_NUMBER,HOUSENUMBER,HOUSENAME,CROSSING,DISTRICT,PHONENUMBER,POINAME,TOWNCENTER, ... ) key = LATITUDE, value = value of type ´d´, that expresses the latitude in format %3.6f. Range[-90:+90]. Example: 48.70901 key = LONGITUDE, value = value of type ´d´, that expresses the longitude in format %3.6f. Range[-180,+180]. Example: 9.167898 key = ALTITUDE, value = value of type ´i´, that expresses the altitude in meters @@ -464,6 +468,7 @@ key = DISTRICT, value = value of type ´s´, that identifies the district name key = PHONENUMBER, value = value of type ´s´, that identifies a phone number key = POINAME, value = value of type ´s´, that identifies a POI name + key = ROADSHIELDS, value = value of type ´a(sa(is)s)´, that identifies a roadshield @@ -481,7 +486,7 @@ validatedAddressList = array[validatedAddress] validatedAddress = array[attribute] attribute = tuple(key,value) - key = enum(INVALID,LATITUDE,LONGITUDE,ALTITUDE,FULL_ADDRESS,COUNTRY,COUNTRYCODE,STATE,CITY,ZIPCODE,STREET,ROAD_NUMBER,HOUSENUMBER,HOUSENAME,CROSSING,DISTRICT,PHONENUMBER,POINAME,TOWNCENTER, ... ) + key = enum(INVALID,LATITUDE,LONGITUDE,ALTITUDE,FULL_ADDRESS,COUNTRY,COUNTRYCODE,STATE,CITY,POSTAL_CODE,STREET,ROAD_NUMBER,HOUSENUMBER,HOUSENAME,CROSSING,DISTRICT,PHONENUMBER,POINAME,TOWNCENTER,ROADSHIELDS, ... ) key = LATITUDE, value = value of type ´d´, that expresses the latitude in format %3.6f. Range[-90:+90]. Example: 48.70901 key = LONGITUDE, value = value of type ´d´, that expresses the longitude in format %3.6f. Range[-180:+180]. Example: 9.167898 key = ALTITUDE, value = value of type ´i´, that expresses the altitude in meters @@ -496,6 +501,7 @@ key = DISTRICT, value = value of type ´s´, that identifies the district name key = PHONENUMBER, value = value of type ´s´, that identifies a phone number key = POINAME, value = value of type ´s´, that identifies a POI name + key = ROADSHIELDS, value = value of type ´a(sa(is)s)´, that identifies a roadshield @@ -503,7 +509,7 @@ validationStatusList = array[validationStatus] validationStatus = array[item] item = tuple(key,value) - key = enum(INVALID,LATITUDE,LONGITUDE,ALTITUDE,FULL_ADDRESS,COUNTRY,COUNTRYCODE,STATE,CITY,ZIPCODE,STREET,ROAD_NUMBER,HOUSENUMBER,HOUSENAME,CROSSING,DISTRICT,PHONENUMBER,POINAME,TOWNCENTER, ... ) + key = enum(INVALID,LATITUDE,LONGITUDE,ALTITUDE,FULL_ADDRESS,COUNTRY,COUNTRYCODE,STATE,CITY,POSTAL_CODE,STREET,ROAD_NUMBER,HOUSENUMBER,HOUSENAME,CROSSING,DISTRICT,PHONENUMBER,POINAME,TOWNCENTER, ... ) value = enum(INVALID,OK,UNKNOWN,AMBIGUOUS,INCONSISTENT) diff --git a/api/navigation-core/genivi-navigationcore-mapmatchedposition.xml b/api/navigation-core/genivi-navigationcore-mapmatchedposition.xml index a59104f..dc2a642 100644 --- a/api/navigation-core/genivi-navigationcore-mapmatchedposition.xml +++ b/api/navigation-core/genivi-navigationcore-mapmatchedposition.xml @@ -248,7 +248,7 @@ address = dictionary[key,value] dictionary = array of tuples (key,value) - key = enum(INVALID,TIMESTAMP,COUNTRY,COUNTRYCODE,CITY,STREET,ROAD_NUMBER,HOUSENUMBER,HOUSENAME,CROSSING,DISTRICT,TIMEZONE_OFFSET,DAYLIGHT_OFFSET,MATCH_TYPE, ... ) + key = enum(INVALID,TIMESTAMP,COUNTRY,COUNTRYCODE,CITY,STREET,ROAD_NUMBER,HOUSENUMBER,HOUSENAME,CROSSING,DISTRICT,TIMEZONE_OFFSET,DAYLIGHT_OFFSET,MATCH_TYPE,ROADSHIELDS, ... ) key = TIMESTAMP, value = value of type 't', that represents a timestamp in ms key = COUNTRY, value = value of type 's', that identifies the country name key = COUNTRYCODE, value = value of type 's', ISO 3166‐1 alpha 3 country code (upper case) @@ -262,6 +262,7 @@ key = TIMEZONE_OFFSET, value = value of type 'n', that identifies the timezone offset at the current address key = DAYLIGHT_OFFSET, value = value of type 'n', that identifies the daylight offset at the current address key = MATCH_TYPE, value = value of type 'q', that identifies an enum(INVALID,ON_ROAD,OFF_ROAD,ON_FERRY,IN_TUNNEL,ON_CARPARK, ... ) + key = ROADSHIELDS, value = value of type ´a(sa(is)s)´, that identifies a roadshield -- cgit v1.2.1