{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://publicschema.org/IdentifierAssignment.schema.json",
  "title": "IdentifierAssignment",
  "description": "The assignment of an identifier to a subject by an issuing organization, valid over a stated period. The identifier is distinct from the act of assigning it.",
  "type": "object",
  "properties": {
    "assigned_identifier": {
      "oneOf": [
        {
          "$ref": "https://publicschema.org/Identifier.schema.json"
        },
        {
          "type": "string",
          "description": "URI or identifier reference"
        }
      ],
      "description": "The identifier value and scheme that the assignment gives the subject."
    },
    "subject_uri": {
      "type": "string",
      "format": "uri",
      "description": "The URI of the thing this record or statement is about."
    },
    "identifier_issuer": {
      "oneOf": [
        {
          "$ref": "https://publicschema.org/Organization.schema.json"
        },
        {
          "type": "string",
          "description": "URI or identifier reference"
        }
      ],
      "description": "The organization that assigned the identifier, as distinct from an organization that only records it."
    },
    "start_date": {
      "type": "string",
      "format": "date",
      "description": "The date on which this became effective."
    },
    "end_date": {
      "type": "string",
      "format": "date",
      "description": "The last day on which this is effective. A period includes both its start date and its end date, so a period that applies only on 30 June 2026 has start date 2026-06-30 and end date 2026-06-30."
    }
  }
}
