JSON Mappings Validation Schema

For individuals keen on exploring Schema validation, the schema definition is provided below for your perusal and implementation. This comprehensive guide is designed to facilitate your understanding and application of the Schema, ensuring a seamless integration process.

{
    "$schema": "http://json-schema.org/draft-04/schema#",
    "type": "object",
    "properties": {
        "Categories": {
            "type": "array",
            "items": {
                "type": "object",
                "properties": {
                    "Category": {
                        "type": "string",
                        "minLength": 3
                    },
                    "JsonQuery": {
                        "type": "string",
                        "minLength": 3
                    }
                },
                "required": ["Category", "JsonQuery"],
                "additionalProperties": false
            }
        },
        "Form": { 
            "type": "object",  
            "properties": {  
                "JsonQuery": {
                    "type": "string",
                    "minLength": 3
                }
            },
            "required": ["JsonQuery"],
            "additionalProperties": false
        },
        "FormFields": {
            "type": "array",
            "items": {
                "type": "object",
                "properties": {
                    "Field": {
                        "type": "string"
                    },
                    "JsonQuery": {
                        "type": "string",
                        "minLength": 3
                    },
                    "NestedFields": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "Field": {
                                    "type": "string"
                                },
                                "JsonQuery": {
                                    "type": "string",
                                    "minLength": 3
                                }
                            },
                            "required": ["Field", "JsonQuery"],
                            "additionalProperties": false
                        }
                    }
                },
                "required": ["Field", "JsonQuery"]
            }
        }
    },
    "anyOf": [
        {"required": ["Categories"]},
        {"required": ["Form"]},
        {"required": ["FormFields"]}
    ],
    "additionalProperties": false
}

 

Published

Last updated

0
0