{
  "$id": "https://schemas.dissco.tech/schemas/fdo-profile/machine-annotation-service/1.0.0/machine-annotation-service-fdo-profile.json",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "description": "FDO Profile for Machine Annotation Service",
  "$comment": "FDO Profile Version 1.0.0",
  "properties": {
    "fdoProfile": {
      "description": "PID to a machine readable description of the attributes in the FDO record",
      "const": "https://doi.org/21.T11148/22e71a0015cbcfba8ffa",
      "$comment": "idx = 1"
    },
    "fdoRecordLicenseId": {
      "const": "https://spdx.org/licenses/CC0-1.0.json",
      "description": "The licence for the FDO record, required to be always public domain",
      "$comment": "idx = 2"
    },
    "fdoRecordLicenseName": {
      "const": "CC0 1.0 Universal",
      "description": "CC0 1.0 Universal",
      "$comment": "idx = 3"
    },
    "digitalObjectType": {
      "description": "PID to a description of the Type of digital object that defines the metadata, bit sequences (if any) and operations for the object",
      "const": "https://doi.org/21.T11148/22e71a0015cbcfba8ffa",
      "$comment": "idx = 4"
    },
    "digitalObjectName": {
      "type": "string",
      "description": "Name of the object type for humans",
      "example": "digital specimen type 1",
      "$comment": "idx = 5"
    },
    "pid": {
      "type": "string",
      "description": "The PID of which the FDO record is part, in DiSSCo this is a Handle or DOI. It is recommended to store this pid also in the local collection management system for the specimen.",
      "example": "https://doi.org/10.3535/GEE-W3J-HL2",
      "$comment": "idx = 6"
    },
    "pidIssuer": {
      "type": "string",
      "description": "In case of a DOI, this is a PID for the DOI Registration Agency",
      "example": "https://hdl.handle.net/10.17183",
      "$comment": "idx = 7"
    },
    "pidIssuerName": {
      "type": "string",
      "description": "Human-readable name of the PID issuer",
      "example": "DataCite",
      "$comment": "idx = 8"
    },
    "pidRecordIssueDate": {
      "type": "string",
      "description": "Date the PID record was created",
      "example": "2023-10-16T12:08:37.494Z",
      "$comment": "idx = 9"
    },
    "pidRecordIssueNumber": {
      "type": "integer",
      "description": "Starts with 1 and is incrementally increased by 1 every time the pid record is updated. Compatible with DOI schema requirements.",
      "example": "2",
      "$comment": "idx = 10"
    },
    "pidStatus": {
      "enum": [
        "TOMBSTONE",
        "DRAFT",
        "ACTIVE"
      ],
      "description": "A PID is considered to have a lifecycle, PID status indicates the status in the life cycle, e.g. draft, active, retired. PID statuses are described further in the PID infrastructure design.",
      "$comment": "idx = 11"
    },
    "HS_ADMIN": {
      "type": "string",
      "description": "Administrative information for PID profile",
      "$comment": "idx = 100"
    },
    "10320/loc": {
      "type": "string",
      "description": "XML document describing location(s) of the resource",
      "$comment": "idx = 101",
      "example": "<locations><location href=\"https://dev.dissco.tech/api/v1/annotations/TEST/FFR-RTL-B8K\" id=\"0\" weight=\"1\"/></locations>"
    },
    "tombstoneText": {
      "type": "string",
      "description": "A reason why the Digital Object was tombstoned",
      "examples": [
        "This is a duplicate of XXX",
        "This object was made by mistake"
      ],
      "$comment": "idx = 30"
    },
    "hasRelatedPid": {
      "type": "array",
      "description": "The PIDs of the object the tombstoned object is related to",
      "items": {
        "type": "object",
        "properties": {
          "pid": {
            "type": "string",
            "description": "The PID of the related object",
            "examples": [
              "https://doi.org/10.1234/abcd"
            ]
          },
          "relationshipType": {
            "type": "string",
            "description": "The type of relationship between the tombstoned object and the related object",
            "examples": [
              "isObsoletedBy",
              "isIdenticalTo"
            ]
          }
        },
        "additionalProperties": false
      },
      "$comment": "idx = 31"
    },
    "tombstoneDate": {
      "type": "string",
      "description": "Timestamp the Digital Object was tombstoned and no longer active.",
      "format": "date-time",
      "examples": [
        "2021-06-01T12:00:000Z"
      ],
      "$comment": "idx = 32"
    },
    "machineAnnotationServiceName": {
      "type": "string",
      "description": "Name of Machine Annotation Service",
      "$comment": "idx = 604"
    }
  },
  "additionalProperties": false,
  "required": [
    "fdoProfile",
    "fdoRecordLicenseId",
    "fdoRecordLicenseName",
    "digitalObjectType",
    "digitalObjectName",
    "pid",
    "pidIssuer",
    "pidIssuerName",
    "pidRecordIssueDate",
    "pidRecordIssueNumber",
    "10320/loc",
    "pidStatus",
    "machineAnnotationServiceName"
  ]
}