{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://publicschema.org/RecordLifecycleEvent.schema.json",
  "title": "RecordLifecycleEvent",
  "description": "A change in the standing of a register record, such as invalidation, retirement or supersession, with the time the change takes effect and the time it was recorded. Changes to the subject itself, such as a death or a dissolution, are recorded as domain events.",
  "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."
      }
    },
    "affected_record": {
      "oneOf": [
        {
          "$ref": "https://publicschema.org/RecordReference.schema.json"
        },
        {
          "type": "string",
          "description": "URI or identifier reference"
        }
      ],
      "description": "The record whose standing the change affects."
    },
    "record_change_kind": {
      "type": "string",
      "enum": [
        "clarification",
        "invalidation",
        "retirement",
        "supersession"
      ],
      "$comment": "https://publicschema.org/vocab/record-change-kind",
      "description": "The kind of change to the record's standing, such as invalidation, retirement or supersession."
    },
    "effective_at": {
      "type": "string",
      "format": "date-time",
      "description": "The date and time at which the change or decision took effect, which can be earlier or later than when it was recorded. For the day from which a ConsentRecord or PrivacyNotice applies, use effective_date."
    },
    "recorded_at": {
      "type": "string",
      "format": "date-time",
      "description": "The date and time the statement or event was entered into its source record. It can differ from when the fact took effect."
    },
    "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."
    },
    "evidence_assertions": {
      "type": "array",
      "items": {
        "oneOf": [
          {
            "$ref": "https://publicschema.org/EvidenceAssertion.schema.json"
          },
          {
            "type": "string",
            "description": "URI or identifier reference"
          }
        ],
        "description": "Statements identifying sources that support or contradict this statement."
      }
    },
    "supersedes_record": {
      "type": "array",
      "items": {
        "oneOf": [
          {
            "$ref": "https://publicschema.org/RecordReference.schema.json"
          },
          {
            "type": "string",
            "description": "URI or identifier reference"
          }
        ],
        "description": "Earlier records that this record or event replaces. Replacing a record does not replace its subject."
      }
    }
  }
}
