view extensions/dict_json/dict_json_dict_schema.json @ 1502:515421a9ac5e

Add 3GPP TS 29.154 V15.3.0 (2019-09) Add AVPs: - Network-Area-Info-List, OctetString, code 4201, section 5.3.2 - Number-Of-UEs, Unsigned32, code 4209, section 5.3.10 - Reference-Id, OctetString, code 4202, section 5.3.3 - Transfer-Request-Type, Unsigned32, code 4203, section 5.3.4 - Time-Window, Grouped, code 4204, section 5.3.5 - Transfer-End-Time, Time, code 4205, section 5.3.6 - Transfer-Policy, Grouped, code 4207, section 5.3.8 - Transfer-Policy-Id, Unsigned32, code 4208, section 5.3.9 - Transfer-Start-Time, Time, code 4206, section 5.3.7 - Access-Network-Reports, Grouped, code 4210, section A.6.3.2 - Event-Configuration, Grouped, code 4211, section A.6.3.3 - Event-Configuration-State, Unsigned32, code 4212, section A.6.3.4 - Event-Configuration-Status, Grouped, code 4213, section A.6.3.5 - Event-Reporting-Results, Unsigned32, code 4214, section A.6.3.6 - Event-Reports, Grouped, code 4215, section A.6.3.7 - Extended-SCEF-Reference-ID, Unsigned64, code 4216, section A.6.3.8
author Luke Mewburn <luke@mewburn.net>
date Fri, 03 Apr 2020 15:33:12 +1100
parents cbe1da7a32f1
children
line wrap: on
line source

{
    "definitions": {
        "content": {
            "type": "array",
            "items": {
                "type": "object",
                "additionalProperties": false,
                "required": [ "AVP" ],
                "properties": {
                    "AVP": { "type": "string" },
                    "Vendor": { "$ref": "#/definitions/unsigned-integer" },
                    "First": { "type": "boolean" },
                    "Min": { "$ref": "#/definitions/unsigned-integer" },
                    "Max": { "anyOf": [ { "type": "integer" }, { "enum": [ "unbounded" ] } ] }
                }
            }
        },

        "identifier": { "type": "string", "pattern": "^[[:print:]]+$" },
        "type": {
            "enum": [
                "Address",
                "DiameterIdentity",
                "DiameterURI",
                "Enumerated",
                "Float32",
                "Float64",
                "Grouped",
                "Integer32",
                "Integer64",
                "IPFilterRule",
                "OctetString",
                "Time",
                "Unsigned32",
                "Unsigned64",
                "UTF8String"
            ]
        },
        "unsigned-integer": { "type": "integer", "minimum": 0 }
    },
    
    "type": "object",
    "additionalProperties": false,
    "properties": {
        "Vendors": {
            "type": "array",
            "items": {
                "type": "object",
                "additionalProperties": false,
                "required": [ "Code", "Name" ],
                "properties": {
                    "Code": { "$ref": "#/definitions/unsigned-integer" },
                    "Name": { "$ref": "#/definitions/identifier" }
                }
            }
        },
        "Types": {
            "type": "array",
            "items": {
                "type": "object",
                "additionalProperties": false,
                "required": [ "Name", "Base" ],
                "properties": {
                    "Name": { "type": "string" },
                    "Base": { "type": "string" }
                }
            }
        },
        "AVPs": {
            "type": "array",
            "items": {
                "type": "object",
                "additionalProperties": false,
                "required": [ "Code", "Name", "Type" ],
                "properties": {
                    "Code": { "$ref": "#/definitions/unsigned-integer" },
                    "Vendor": { "$ref": "#/definitions/unsigned-integer" },
                    "Name": { "$ref": "#/definitions/identifier" },
                    "Flags": {
                        "type": "object",
                        "additionalProperties": false,
                        "properties": {
                            "Must": { "type": "string", "pattern": "^[VMP]*$" },
                            "MustNot": { "type": "string", "pattern": "^[VMP]*$" }
                        }
                    },
                    "Type": { "$ref": "#/definitions/identifier" },
                    "EnumValues": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [ "Code", "Name" ],
                            "properties": {
                                "Code": { "anyOf": [ { "type": "integer" }, { "type": "number" }, { "type": "string" } ] },
                                "Name": { "type": "string", "pattern": "^[[:print:]]*$" }
                            }
                        }
                    }
                }
            }
        },
        "Applications": {
            "type": "array",
            "items": {
                "type": "object",
                "additionalProperties": false,
                "required": [ "Code", "Name" ],
                "properties": {
                    "Code": { "$ref": "#/definitions/unsigned-integer" },
                    "Name": { "$ref": "#/definitions/identifier" }
                }
            }
        },
        "Commands": {
            "type": "array",
            "items": {
                "type": "object",
                "additionalProperties": false,
                "required": [ "Code", "Name" ],
                "properties": {
                    "Code": { "$ref": "#/definitions/unsigned-integer" },
                    "Name": { "$ref": "#/definitions/identifier" },
                    "Application": { "$ref": "#/definitions/identifier" },
                    "Flags": {
                        "type": "object",
                        "additionalProperties": false,
                        "properties": {
                            "Must": { "type": "string", "pattern": "^[RPE]*$" },
                            "MustNot": { "type": "string", "pattern": "^[RPET]*$" }
                        }
                    }
                }
            }
        },
        "CommandRules": {
            "type": "array",
            "items": {
                "type": "object",
                "additionalProperties": false,
                "required": [ "Command", "Content" ],
                "properties": {
                    "Command": { "type": "string", "minimum": 0 },
                    "Content": { "$ref": "#/definitions/content" }
                }
            }
        },
        "AVPRules": {
            "type": "array",
            "items": {
                "type": "object",
                "additionalProperties": false,
                "required": [ "AVP", "Content" ],
                "properties": {
                    "AVP": { "type": "string" },
                    "Vendor": { "type": "integer", "minimum" : 0 },
                    "Content": { "$ref": "#/definitions/content" }
                }
            }
        }
    }
}
"Welcome to our mercurial repository"