Skip to end of banner
Go to start of banner

MODQM-311 Spike: Investigate feasibility of local authority source support

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 9 Next »

MODQM-311 - Getting issue details... STATUS

Goals

  1. Determine complexity of allowing for configuration of 001 generation (prefix + starting value) 
  2. Adding the ability to select the desired authority source file at point of creation of new record (so the system would know how to generate the 001 per the configuration)

Approach

New mod-inventory-storage API to store local authority files

/local-authority-file (GET/POST/PUT)

Local Authority File Example
{
    "id": "cb58492d-018e-442d-9ce3-35aabfc524aa",
    "name": "Test",
    "type": "Subjects",
    "prefix": "local",
    "startWith": "000000001"
}
Local Authority File Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "description": "An Authority local file",
  "type": "object",
  "properties": {
    "id": {
      "description": "unique ID of the Authority local file; a UUID",
      "$ref": "uuid.json"
    },
    "name": {
      "type": "string",
      "description": "Authority local file name"
    },
    "type": {
      "type": "string",
      "description": "Type of authority records stored in local file"
    },
    "prefix": {
      "type": "string",
      "description": "Assign local file prefix"
    },
    "startWith": {
      "type": "string",
      "description": "Assign local file start with value"
    },
    "metadata": {
      "type": "object",
      "$ref": "raml-util/schemas/metadata.schema",
      "readonly": true
    }
  },
  "additionalProperties": false,
  "required": [
    "name",
    "type",
    "prefix",
    "startWith"
  ]
}
Local Authority Files Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "description": "A collection of Authority local files",
  "type": "object",
  "properties": {
    "authorityLocalFiles": {
      "description": "List of Authority local files",
      "id": "authorityLocalFile",
      "type": "array",
      "items": {
        "type": "object",
        "$ref": "authoritylocalfile.json"
      }
    },
    "totalRecords": {
      "description": "Estimated or exact total number of records",
      "type": "integer"
    }
  },
  "required": [
    "authorityLocalFiles",
    "totalRecords"
  ]
}
  • No labels