{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://publicschema.org/ComplianceAssessment.schema.json",
  "title": "ComplianceAssessment",
  "description": "A check by an authority or other body of whether a subject meets stated requirements at a given time, together with the result. The subject may be a facility, vehicle, authorization or other thing, and the authority is the body that carried out the check. The result applies to those requirements and that time only, not to the subject's compliance in general.",
  "type": "object",
  "properties": {
    "identifiers": {
      "type": "array",
      "items": {
        "oneOf": [
          {
            "$ref": "https://publicschema.org/Identifier.schema.json"
          },
          {
            "type": "string",
            "description": "URI or identifier reference"
          }
        ],
        "description": "Identifiers carried by this entity, such as national ID numbers, program IDs, or identifiers asserted by an identity document."
      }
    },
    "subject_uri": {
      "type": "string",
      "format": "uri",
      "description": "The URI of the thing this record or statement is about."
    },
    "assessed_requirements": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uri",
        "description": "The specific legal provisions, permit conditions or other requirements that the subject was checked against."
      }
    },
    "authority": {
      "oneOf": [
        {
          "$ref": "https://publicschema.org/Organization.schema.json"
        },
        {
          "type": "string",
          "description": "URI or identifier reference"
        }
      ],
      "description": "The organization responsible for the act or event a record describes, such as the body that receives an application, decides a case, reviews an appeal, inspects a subject or takes a measure. Each class using it states which of these roles applies. It links to an Organization, whereas issuing_authority names the issuer of a document or credential as text."
    },
    "assessment_date": {
      "type": "string",
      "format": "date",
      "description": "The date on which the assessment was carried out."
    },
    "assessment_result": {
      "$ref": "https://publicschema.org/CodedValue.schema.json",
      "description": "The conclusion reached, such as compliant, non-compliant or not assessed. Result codes are interpreted under the assessed requirements."
    },
    "assessment_findings": {
      "type": "string",
      "description": "What the assessor found, including any limits on the conclusion."
    }
  }
}
