{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://publicschema.org/Certification.schema.json",
  "title": "Certification",
  "description": "A dated attestation by a certifying organization that a stated subject, such as a product, process, operation, facility or person, conforms to a stated scheme within a stated scope. It is distinct from the certificate document, from registration and from permission to operate. When the status of one part of the scope diverges, each part is recorded as its own certification.",
  "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."
      }
    },
    "certified_subject": {
      "type": "string",
      "format": "uri",
      "description": "The URI of the product, lot, process, operation, facility, organization, group or person that the certification is about."
    },
    "certifying_organization": {
      "oneOf": [
        {
          "$ref": "https://publicschema.org/Organization.schema.json"
        },
        {
          "type": "string",
          "description": "URI or identifier reference"
        }
      ],
      "description": "The organization that issues the certification, such as a certification body or control authority."
    },
    "certification_scheme": {
      "type": "string",
      "format": "uri",
      "description": "The URI of the certification scheme, including its edition where that affects the requirements."
    },
    "certification_scope": {
      "type": "array",
      "items": {
        "$ref": "https://publicschema.org/CodedValue.schema.json",
        "description": "The activities, product categories or limitations that the certification covers, coded under the scheme where possible."
      }
    },
    "valid_from": {
      "type": "string",
      "format": "date",
      "description": "The first calendar day on which the registration, permission, certification or other stated fact applies, as its source states it, when known. A later suspension, withdrawal or correction is recorded separately and does not overwrite this date."
    },
    "valid_to": {
      "type": "string",
      "format": "date",
      "description": "The last calendar day on which the registration, permission, certification or other stated fact applies, as its source states it. A later suspension, withdrawal or correction is recorded separately and does not overwrite this date. If absent, the end is unknown, not unlimited."
    }
  }
}
