{
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "$id": "propertyTexture.schema.json",
    "title": "Property Texture in EXT_structural_metadata",
    "type": "object",
    "description": "Properties conforming to a class, organized as property values stored in textures.",
    "allOf": [
        {
            "$ref": "glTFProperty.schema.json"
        }
    ],
    "properties": {
        "name": {
            "type": "string",
            "minLength": 1,
            "description": "The name of the property texture, e.g. for display purposes."
        },
        "class": {
            "type": "string",
            "description": "The class that property values conform to. The value must be a class ID declared in the `classes` dictionary."
        },
        "properties": {
            "type": "object",
            "description": "A dictionary, where each key corresponds to a property ID in the class' `properties` dictionary and each value is an object describing where property values are stored. Required properties must be included in this dictionary.",
            "minProperties": 1,
            "additionalProperties": {
                "$ref": "propertyTexture.property.schema.json"
            }
        },
        "extensions": {},
        "extras": {}
    },
    "required": [
        "class"
    ]
}