{
    "$schema": "http://json-schema.org/draft-04/schema#",
    "title": "WordSuggest",
    "type": "object",
    "additionalProperties": false,
    "description": "TAnalytics-v2 .. Logs word suggest actions and on/offline events",
    "properties": {
        "log_context": {
            "$ref": "/resources/schema/analytics/client/v2/LogContext.json",
            "description": "Required Log Context Reference"
        },
        "event_name": {
            "type": "string",
            "enum": ["WORDSUGGEST"]
        },
        "schema_definition": {
            "type": "string",
            "enum": ["WordSuggest"]
        },
        "trigger": {
            "$ref": "/resources/schema/analytics/client/v2/WordSuggestTriggerType.json",
            "description": "Required Starting Point of Word Suggest"
        },
        "action": {
            "$ref": "/resources/schema/analytics/client/v2/WordSuggestAction.json",
            "description": "Log Click on Word Suggest"
        },
        "transaction_id": {
            "type": "string",
            "description": "search transaction ID for the request (groups the wordsuggests IDs together)"
        },
        "wordsuggest_id": {
            "type": "string",
            "description": "ID for each word suggestion response (search reference_id)"
        },
        "term": {
            "type": "string",
            "description": "WordSuggest term entered by user"
        },
        "wordsuggest_list": {
            "type": "array",
            "items": {
                "$ref": "/resources/schema/analytics/client/v2/WordSuggestListItem.json"
            },
            "description": "List of words displayed (order as displayed)"
        },
        "wordsuggest_selected_word": {
            "type": "string",
            "description": "Selected word from the word suggest list (exact word)"
        },
        "wordsuggest_selected_index": {
            "type": "number",
            "description": "Selected word index from the word suggest list (Which one selected)"
        },
        "search_id": {
            "type": "string",
            "description": "LogID of the search event that triggered the first result page. For example, in case of pagination, the second search event logged (i.e. the 2nd page) should capture search_id as the log id of the search that rendered the first page. For the first page search_id would be same as log_id."
        },
        "interaction_method": {
            "$ref": "/resources/schema/analytics/client/v2/InteractionMethodValues.json",
            "description": "for each user interaction log the interation method"
        }
    },
    "required": [
        "log_context",
        "event_name",
        "schema_definition",
        "trigger"
    ]
}
