{
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "$id": "https://aiep.dev/schemas/aiep.compliance_policy.schema.v1.json",
    "title": "AIEP Compliance Policy Record v1",
    "description": "Describes what the AIEP Trawler checks and what it explicitly does not check (/.well-known/aiep/compliance/policy.json).",
    "type": "object",
    "required": [
        "record_type",
        "aiep_protocol",
        "version",
        "open_use_permitted",
        "scope",
        "principle"
    ],
    "properties": {
        "record_type": {
            "type": "string",
            "const": "AIEP_COMPLIANCE_POLICY"
        },
        "aiep_protocol": {
            "type": "string",
            "const": "AIEP"
        },
        "version": {
            "type": "string",
            "minLength": 1
        },
        "open_use_permitted": {
            "type": "boolean"
        },
        "scope": {
            "type": "object",
            "required": [
                "checks_enabled"
            ],
            "properties": {
                "checks_enabled": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "explicitly_not_checked": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            }
        },
        "principle": {
            "type": "string",
            "minLength": 1
        },
        "contact": {
            "type": "object",
            "properties": {
                "report_path": {
                    "type": "string"
                },
                "notes": {
                    "type": "string"
                }
            }
        }
    },
    "additionalProperties": true
}