Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Expand


Code Block
languagejs
linenumberstrue
{
  "$schema": "http://json-schema.org/draft/2019-09/schema#",
  "$id": "https://fedora.info/schemas/2020/06/06/headers.json",
  "type": "object",
  "properties": {
    "idheadersVersion": {
      "type": "string",
      "formatenum": [
 "uri"       "1.0"
      ]
    },
    "parentid": {
      "type": "string",
      "format": "uri"
    },
    "stateTokenparent": {
      "type": "string",
      "format": "uri"
    },
    "interactionModelarchivalGroupId": {
      "type": "string",
      "format": "uri",
    },
    "enumstateToken": [{
      "type": "string"
    },
    "interactionModel": {
      "type": "string",
      "format": "uri",
      "enum": [
        "http://www.w3.org/ns/ldp#NonRDFSource",
        "http://www.w3.org/ns/ldp#RDFSource",
        "http://www.w3.org/ns/ldp#RDFSource",
        "http://www.w3.org/ns/ldp#Container",
        "http://www.w3.org/ns/ldp#BasicContainer",
        "http://www.w3.org/ns/ldp#DirectContainer",
        "http://www.w3.org/ns/ldp#IndirectContainer",
        "http://fedora.info/definitions/fcrepo#ExternalContent",
        "http://fedora.info/definitions/v4/repository#ArchivalGroup",
        "http://fedora.info/definitions/v4/repository#NonRdfSourceDescription",
        "http://fedora.info/definitions/v4/webac#Acl"
      ]
    },
    "createdDate": {
      "type": "string",
      "format": "date-time"
    },
    "createdBy": {
      "type": "string"
    },
    "contentPath": {
      "type": "string"
    },
    "lastModifiedDate": {
      "type": "string",
      "format": "date-time"
    },
    "lastModifiedBy": "string",{
      "formattype": "date-timestring"
    },
    "lastModifiedBymementoCreatedDate": {
      "type": "string",
      "format": "date-time"
    },
    "archivalGroup": {
      "type": "boolean"
    },
    "objectRoot": {
      "type": "boolean"
    },
    "deleted": {
      "type": "boolean"
    }
  },
  "required": [
    "headersVersion",
    "id",
    "parent",
    "stateToken",
    "interactionModel",
    "createdDate",
    "lastModifiedDate",
    "archivalGroup",
    "objectRoot",
    "deleted"
  ],
  "$comment": "NonRDFSource resources have additional properties",
  "if": {
    "properties": {
      "interactionModel": {
        "const": "http://www.w3.org/ns/ldp#NonRDFSource"
      }
    }
  },
  "then": {
    "properties": {
      "mimeType": {
        "type": "string"
      },
      "filename": {
        "type": "string"
      },
      "contentSize": {
        "type": "integer"
      },
      "digests": {
        "type": "array",
        "items": {
          "type": "string",
          "format": "uri"
        }
      },
      "externalUrl": {
        "type": "string",
        "format": "uri"
      },
      "externalHandling": {
        "type": "string",
        "enum": [
          "proxy",
          "copy",
          "redirect"
        ]
      }
    },
    "required": [
      "mimeType",
      "filename",
      "contentSize",
      "digests"
    ]
  }
}

Schema Property Descriptions


Schema Property Descriptions

Expand
Expand

headersVersion

The version indicator for the headers. This should always be 1.0.

id

The Fedora resource's ID will typically be of the form: info:fedora/url/path/elements/to/resource

parent

The Fedora ID of the container resource in which this resource was created. If this resource is at the top of the repository, then the "parent" will be the repository root, "info:fedora"of the repository, then the "parent" will be the repository root, "info:fedora".

archivalGroupId

The Fedora ID of the archival group resource in which this resource is contained. If this resource is not contained in an archival group, then this property must be null.

stateToken

The Fedora-managed indication of change in a resource, like ETags. See: https://fedora.info/2018/11/22/spec/#state-tokens

interactionModel

The URI indication of the Fedora resource's type. See schema above for allowable values.

createdDate

The creation date of the Fedora resource, conforming to rfc3339.

createdBy

The String value of the client/user who created the Fedora resource.

contentPath

The relative path to the 'content' directory of the content file described by this header file

lastModifiedDate

The last modified date of the Fedora resource, conforming to rfc3339.

lastModifiedBy

The String value of the client/user who last modified the Fedora resource.

lastModifiedBy

mementoCreatedDate

This field is used internally by Fedora to keep track of mementos. Typically, it has the same value as the lastModifiedDate. Must conform to rfc3339The String value of the client/user who last modified the Fedora resource.

archivalGroup

JSON boolean value (true or false) indicating whether the Fedora resource is an "archival group" container.

objectRoot

JSON boolean value (true or false) indicating whether the Fedora resource is a "object root" of the OCFL object. For example, a binary file associated with a binary Fedora resource will be the "object root"; whereas, the non-RDF description and ACL for that binary resource will have a value of false. An "archival group" resource is always an "object root"; whereas, its archival parts will have a value of false.

deleted

JSON boolean value (true or false) indicating whether the Fedora resource is marked as deleted.

mimeType

The String value indicating the Fedora resource's mime type. (only applies to Fedora resources with interaction model of: http://www.w3.org/ns/ldp#NonRDFSource)

filename

The String value indicating the Fedora resource's user-provided file name. (only applies to Fedora resources with interaction model of: http://www.w3.org/ns/ldp#NonRDFSource)

contentSize

The Long integer size in bytes of the Fedora resource. (only applies to Fedora resources with interaction model of: http://www.w3.org/ns/ldp#NonRDFSource)

digests

JSON array of user-provided fixity digest algorithm and values, each of the form: urn:<algorithm>:<digestValue>, where "algorithm" can be any of the following: sha1, sha-256, sha-512, sha-512/256, or md5. (only applies to Fedora resources with interaction model of: http://www.w3.org/ns/ldp#NonRDFSource)

externalurl

The URL of an external resource to which a Fedora resource points. (only applies to Fedora resources with interaction model of: http://fedora.info/definitions/fcrepo#ExternalContent)

externalHandling

The handling directive for an external resource to which a Fedora resource points. Allowable values can be any of the following: copy, redirect, or proxy (only applies to Fedora resources with interaction model of: http://fedora.info/definitions/fcrepo#ExternalContent)

...

Header files associated with user-content files

No Format
{
  "headersVersion": "1.0",
  "parent": "info:fedora",
  "id": "info:fedora/binary",
  "filename": "photo.jpg",
  "mimeType": "image/jpeg",
  "interactionModel": "http://www.w3.org/ns/ldp#NonRDFSource/ldp#NonRDFSource",
  "lastModifiedDate": "2020-06-03T23:59:00.284677Z",
  "lastModifiedDatecreatedDate": "2020-06-03T23:59:00.284677Z",
  "createdDatemementoCreatedDate": "2020-06-03T23:59:00.284677Z",
  "contentPath": "binary",
  "stateToken": "5F789A9AAD061811FBB9BB0DE4B998C8",
  "contentSize": 9,
  "digests": ["urn:sha-256:5891b5b522d5df086d0ff0b110fbd9d21bb4fc7163af34d08286a2e846f6be03","urn:sha-512:e7c22b994c59d9cf2b48e549b1e24666636045930d3da7c1acb299d1c3b7f931f94aae41edda2c2b207a36e10f8bcb8d45223e54878f5b316e7ce3b6bc019629"],
  "deleted": false,
  "archivalGroup": false,
  "objectRoot": true
}

...

Header files associated with RDF user-properties files

  1. Containers

    1. No Format
      {
        "headersVersion": "1.0",
        "parent": "info:fedora",
        "id": "info:fedora/container",
        "interactionModel": "http://www.w3.org/ns/ldp#BasicContainer",
        "lastModifiedDate": "2020-06-03T23:58:03.148409Z",
        "createdDate": "2020-06-03T23:58:03.148409Z",
        "mementoCreatedDate": "2020-06-03T23:58:03.148409Z",
        "contentPath": "fcr-container.nt",
        "stateToken": "DCEF22546A9D93D0203E96D1682DF9F8",
        "deleted": false,
        "archivalGroup": false,
        "objectRoot": true
      }


  2. Binary descriptions

    1. No Format
      {
        "headersVersion": "1.0",
        "parent": "info:fedora/binary",
        "id": "info:fedora/binary/fcr:metadata",
        "interactionModel": "http://fedora.info/definitions/v4/repository#NonRdfSourceDescription",
        "lastModifiedDate": "2020-06-03T23:59:00.280677Z",
        "createdDate": "2020-06-03T23:59:00.280677Z",
        "mementoCreatedDate": "2020-06-03T23:59:00.280677Z",
        "contentPath": "binary~fcr-desc.nt",
        "stateToken": "74A51841F559D31E3EBD40EFE2DE29E3",
        "deleted": false,
        "archivalGroup": false,
        "objectRoot": false
      }


  3. ACLs

    1. No Format
      {
        "headersVersion": "1.0",
        "parent": "info:fedora/new",
        "id": "info:fedora/new/fcr:acl",
        "lastModifiedDate": "2020-06-05T01:15:29.406689Z",
        "deleted": false,
        "interactionModel": "http://fedora.info/definitions/v4/webac#Acl",
        "createdBy": "fedoraAdmin",
        "createdDate": "2020-06-05T01:15:29.406689Z",
        "mementoCreatedDate": "2020-06-05T01:15:29.406689Z",
        "contentPath": "new~fcr-acl.nt",
        "lastModifiedBy": "fedoraAdmin",
        "stateToken": "FF048B326D1DED62BDCB84D38DC7CB41",
        "archivalGroup": false,
        "objectRoot": false
      }


...