{
    "additionalProperties": false,
    "description": "Schema for a context generated by the YAUAA enrichment after parsing the user agent",
    "properties": {
        "agentBuild": {
            "maxLength": 100,
            "type": "string"
        },
        "agentClass": {
            "description": "See https://yauaa.basjes.nl/README-Output.html",
            "enum": [
                "Browser",
                "Browser Webview",
                "Mobile App",
                "Robot",
                "Robot Mobile",
                "Cloud Application",
                "Email Client",
                "Voice",
                "Special",
                "Testclient",
                "Hacker",
                "Unknown"
            ]
        },
        "agentInformationEmail": {
            "_format": "email",
            "type": "string"
        },
        "agentInformationUrl": {
            "type": "string"
        },
        "agentLanguage": {
            "maxLength": 50,
            "type": "string"
        },
        "agentLanguageCode": {
            "maxLength": 20,
            "type": "string"
        },
        "agentName": {
            "description": "Example: Chrome.",
            "maxLength": 100,
            "type": "string"
        },
        "agentNameVersion": {
            "maxLength": 200,
            "type": "string"
        },
        "agentNameVersionMajor": {
            "maxLength": 120,
            "type": "string"
        },
        "agentSecurity": {
            "enum": [
                "Weak security",
                "Strong security",
                "Unknown",
                "Hacker"
            ],
            "type": "string"
        },
        "agentUuid": {
            "type": "string"
        },
        "agentVersion": {
            "maxLength": 100,
            "type": "string"
        },
        "agentVersionMajor": {
            "maxLength": 20,
            "type": "string"
        },
        "anonymized": {
            "type": "string"
        },
        "carrier": {
            "type": "string"
        },
        "deviceBrand": {
            "description": "Example: Google",
            "maxLength": 50,
            "type": "string"
        },
        "deviceClass": {
            "description": "See https://yauaa.basjes.nl/README-Output.html",
            "enum": [
                "Desktop",
                "Anonymized",
                "Unknown",
                "UNKNOWN",
                "Mobile",
                "Tablet",
                "Phone",
                "Watch",
                "Virtual Reality",
                "eReader",
                "Set-top box",
                "TV",
                "Game Console",
                "Handheld Game Console",
                "Voice",
                "Robot",
                "Robot Mobile",
                "Spy",
                "Hacker"
            ]
        },
        "deviceCpu": {
            "maxLength": 50,
            "type": "string"
        },
        "deviceCpuBits": {
            "maxLength": 20,
            "type": "string"
        },
        "deviceFirmwareVersion": {
            "maxLength": 100,
            "type": "string"
        },
        "deviceName": {
            "description": "Example: Google Nexus 6",
            "maxLength": 100,
            "type": "string"
        },
        "deviceVersion": {
            "maxLength": 100,
            "type": "string"
        },
        "facebookCarrier": {
            "type": "string"
        },
        "facebookDeviceClass": {
            "maxLength": 1024,
            "type": "string"
        },
        "facebookDeviceName": {
            "maxLength": 1024,
            "type": "string"
        },
        "facebookDeviceVersion": {
            "type": "string"
        },
        "facebookFBOP": {
            "type": "string"
        },
        "facebookFBSS": {
            "type": "string"
        },
        "facebookOperatingSystemName": {
            "type": "string"
        },
        "facebookOperatingSystemVersion": {
            "type": "string"
        },
        "gSAInstallationID": {
            "type": "string"
        },
        "hackerAttackVector": {
            "type": "string"
        },
        "hackerToolkit": {
            "type": "string"
        },
        "iECompatibilityNameVersion": {
            "maxLength": 50,
            "type": "string"
        },
        "iECompatibilityNameVersionMajor": {
            "maxLength": 70,
            "type": "string"
        },
        "iECompatibilityVersion": {
            "maxLength": 100,
            "type": "string"
        },
        "iECompatibilityVersionMajor": {
            "maxLength": 50,
            "type": "string"
        },
        "koboAffiliate": {
            "type": "string"
        },
        "koboPlatformId": {
            "type": "string"
        },
        "layoutEngineBuild": {
            "maxLength": 100,
            "type": "string"
        },
        "layoutEngineClass": {
            "description": "See https://yauaa.basjes.nl/README-Output.html",
            "enum": [
                "Browser",
                "Mobile App",
                "Hacker",
                "Robot",
                "Unknown"
            ]
        },
        "layoutEngineName": {
            "maxLength": 100,
            "type": "string"
        },
        "layoutEngineNameVersion": {
            "maxLength": 150,
            "type": "string"
        },
        "layoutEngineNameVersionMajor": {
            "maxLength": 120,
            "type": "string"
        },
        "layoutEngineVersion": {
            "maxLength": 50,
            "type": "string"
        },
        "layoutEngineVersionMajor": {
            "maxLength": 20,
            "type": "string"
        },
        "networkType": {
            "type": "string"
        },
        "operatingSystemClass": {
            "description": "See https://yauaa.basjes.nl/README-Output.html",
            "enum": [
                "Desktop",
                "Mobile",
                "Cloud",
                "Embedded",
                "Game Console",
                "Hacker",
                "Anonymized",
                "Unknown"
            ]
        },
        "operatingSystemName": {
            "description": "Examples: Linux, Android.",
            "maxLength": 100,
            "type": "string"
        },
        "operatingSystemNameVersion": {
            "maxLength": 150,
            "type": "string"
        },
        "operatingSystemVersion": {
            "maxLength": 50,
            "type": "string"
        },
        "operatingSystemVersionBuild": {
            "maxLength": 100,
            "type": "string"
        },
        "webviewAppName": {
            "type": "string"
        },
        "webviewAppNameVersionMajor": {
            "maxLength": 50,
            "type": "string"
        },
        "webviewAppVersion": {
            "type": "string"
        },
        "webviewAppVersionMajor": {
            "maxLength": 50,
            "type": "string"
        }
    },
    "required": [
        "deviceClass"
    ],
    "self": {
        "format": "jsonschema",
        "name": "yauaa_context",
        "vendor": "nl.basjes",
        "version": "1-0-0"
    },
    "type": "object"
}