{
	"$schema": "http://json-schema.org/draft-04/schema#",
	"title": "EVRangeCheck",
	"type": "object",
	"additionalProperties": false,
	"description": "Analytics-v3 .. EV range check object",
	"properties": {
		"log_context": {
			"$ref": "/resources/schema/analytics/client/v3/LogContext.json",
			"description": "Required Log Context Reference"
		},
		"event_name": {
			"type": "string",
			"enum": ["EV_RANGE_CHECK"]
		},
		"schema_definition": {
			"type": "string",
			"enum": ["EVRangeCheck"]
		},
		"trigger": {
			"type": "string",
			"enum": ["SYSTEM_CHECK", "ROUTE_REQUEST", "RESUME_TRIP", "DRG", "DEVIATION"],
			"description": "trigger from the route_id that triggered the range check. Use SYSTEM_CHECK when the event is triggered by the system to run periodic checks."
		},
		"route_id": {
			"type": "string",
			"description": "log id of the ROUTE event that triggered the range check. For SYSTEM_CHECK populate the route_id of the current active route that the user is on"
		},
		"type": {
			"type": "integer",
			"enum": [0, 1, 2],
			"description": "outcome of the range  check for the current route, that highlights if the user can reach destination with available charge."
		},
		"battery_state_of_charge": {
			"type": "number",
			"description": "current battery charge level"
		},
		"vehicle_predicted_range": {
			"type": "number",
			"description": "the in-range distance that can be covered with current charge, as predicted by the vehicle. Unit: In Miles"
		},
		"nav_calculated_range": {
			"type": "number",
			"description": "the in-range distance that can be covered with current charge, as predicted by our solution. In miles"
		},
		"calculated_safe_charge_level": {
			"type": "number",
			"description": "Value of battery charge to which is required to each the final destination and still have the  minimum charge_reserve_level remaining.For out of range, this value will be higher than the current battery level."
		},
		"charge_reserve_level": {
			"type": "number",
			"description": "The safe charge level in user's settings. e.g 20 in the value means 20% charge advisor level in setting"
		},
		"user_charge_advior_setting": {
			"type": "number",
			"enum": [0, 1],
			"description": "The value of 'include charge advisor' at the time the range check was triggered."
		}
	},
	"required": [
		"log_context",
		"event_name",
		"schema_definition",
		"trigger",
		"route_id",
		"type",
		"battery_state_of_charge",
		"vehicle_predicted_range",
		"nav_calculated_range",
		"calculated_safe_charge_level",
		"charge_reserve_level",
		"user_charge_advior_setting"
	]
}