Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
1040 lines (1039 sloc) 21.5 KB
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"title": "RAC JSON Schema",
"oneOf": [{
"$ref": "#/definitions/agent"
},
{
"$ref": "#/definitions/collection"
},
{
"$ref": "#/definitions/object"
},
{
"$ref": "#/definitions/term"
}
],
"definitions": {
"agent": {
"$id": "#/definitions/agent",
"type": "object",
"title": "Agents",
"required": [
"external_identifiers",
"title",
"type",
"agent_type"
],
"properties": {
"agent_type": {
"$id": "#/definitions/agent/properties/agent_type",
"type": "string",
"enum": [
"family",
"organization",
"person"
]
},
"type": {
"$id": "#/definitions/agent/properties/type",
"type": "string",
"minLength": 1,
"enum": [
"agent"
]
},
"title": {
"$id": "#/definitions/agent/properties/title",
"type": "string",
"title": "Agent Title",
"description": "Title for Agent",
"minLength": 1,
"examples": [
"Lawson Foundation"
],
"pattern": "^(.*)$"
},
"description": {
"$id": "#/definitions/agent/properties/description",
"type": ["string", "null"],
"minLength": 1,
"title": "Agent Description",
"description": "Description of the Agent",
"examples": [
"Elit irure adipisicing esse minim Lorem non deserunt ullamco. Ex eiusmod tempor ipsum nisi. Aliqua tempor cillum ea labore laboris consectetur ut incididunt esse dolor labore ullamco magna magna."
],
"pattern": "^(.*)$"
},
"dates": {
"type": "array",
"items": {
"allOf": [{
"$ref": "#/definitions/date"
}]
}
},
"notes": {
"type": "array",
"items": {
"allOf": [{
"$ref": "#/definitions/note"
}]
}
},
"external_identifiers": {
"type": "array",
"minItems": 1,
"items": {
"allOf": [{
"$ref": "#/definitions/external_identifier"
}]
}
}
}
},
"collection": {
"$id": "#/definitions/collection",
"type": "object",
"title": "Collection",
"required": [
"creators",
"dates",
"extents",
"external_identifiers",
"languages",
"title",
"type"
],
"properties": {
"type": {
"$id": "#/definitions/collection/properties/type",
"type": "string",
"minLength": 1,
"enum": [
"collection"
]
},
"dates": {
"type": "array",
"minItems": 1,
"items": {
"allOf": [{"$ref": "#/definitions/date"}]
}
},
"extents": {
"type": "array",
"minItems": 1,
"items": {
"allOf": [{"$ref": "#/definitions/extent"}]
}
},
"notes": {
"type": "array",
"items": {
"allOf": [{"$ref": "#/definitions/note"}]
}
},
"terms": {
"type": "array",
"items": {
"allOf": [{
"$ref": "#/definitions/reference"
}]
}
},
"agents": {
"type": "array",
"items": {
"allOf": [{
"$ref": "#/definitions/reference"
}]
}
},
"creators": {
"type": "array",
"minItems": 1,
"items": {
"allOf": [{
"$ref": "#/definitions/reference"
}]
}
},
"languages": {
"type": "array",
"minItems": 1,
"items": {
"allOf": [{"$ref": "#/definitions/language"}]
}
},
"rights": {
"type": "array",
"items": {
"allOf": [{"$ref": "#/definitions/rights_statement"}]
}
},
"ancestors": {
"type": "array",
"items": {
"allOf": [{"$ref": "#/definitions/reference"}]
}
},
"children": {
"type": "array",
"items": {
"allOf": [{"$ref": "#/definitions/reference"}]
}
},
"external_identifiers": {
"type": "array",
"minItems": 1,
"items": {
"allOf": [{"$ref": "#/definitions/external_identifier"}]
}
},
"title": {
"$id": "#/definitions/collection/properties/title",
"type": "string",
"title": "Collection Title",
"examples": [
"John D. Rockefeller papers"
],
"pattern": "^(.*)$"
}
}
},
"date": {
"$id": "#/definitions/date",
"type": "object",
"title": "Dates",
"required": [
"begin",
"expression",
"label",
"type"
],
"properties": {
"begin": {
"$id": "#/definitions/date/properties/begin",
"title": "Begin Date",
"description": "Begin date of the objects described",
"minLength": 1,
"examples": [
"1939-06-03"
]
},
"end": {
"$id": "#/definitions/date/properties/end",
"type": ["string", "null"],
"title": "End Date",
"description": "End date of the objects described",
"minLength": 1,
"examples": [
"1991-05-23"
]
},
"expression": {
"$id": "#/definitions/date/properties/expression",
"type": "string",
"title": "Date Expression",
"description": "Human readable date expression",
"minLength": 1,
"examples": [
"Jun 3rd, 1939 - May 23rd, 1991"
],
"pattern": "^(.*)$"
},
"type": {
"$id": "#/definitions/date/properties/type",
"type": "string",
"items": {
"type": "string",
"enum": [
"bulk",
"inclusive",
"single"
]
},
"title": "Date Type",
"description": "The type of date being described",
"minLength": 1,
"examples": [
"single"
],
"pattern": "^(.*)$"
},
"label": {
"$id": "#/definitions/date/properties/label",
"type": "string",
"items": {
"type": "string",
"enum": [
"agent_relation",
"broadcast",
"copyright",
"creation",
"deaccession",
"digitized",
"existence",
"event",
"issued",
"modified",
"other",
"publication",
"record_keeping",
"usage"
]
},
"title": "Date label",
"description": "Textual indication of the reason for recording the date",
"minLength": 1,
"examples": [
"publication"
],
"pattern": "^(.*)$"
}
}
},
"extent": {
"$id": "#/definitions/extent",
"type": "object",
"title": "Extents",
"required": [
"type",
"value"
],
"properties": {
"value": {
"$id": "#definitions/extents/properties/value",
"type": "string",
"title": "Extent Value",
"description": "Floating point value of the extent",
"minLength": 1,
"examples": [
"3.7"
]
},
"type": {
"$id": "#definitions/extents/properties/type",
"type": "string",
"items": {
"type": "string",
"enum": [
"box(es)",
"cassettes",
"cubic_feet",
"document box(es)",
"files",
"gigabytes",
"leaves",
"linear_feet",
"megabytes",
"microform reels",
"photographic_prints",
"photographic_slides",
"record cartons",
"reels",
"sheets",
"terabytes",
"volumes"
]
},
"title": "Extent Type",
"description": "Records the type of the extent value",
"minLength": 1,
"examples": [
"record cartons"
],
"pattern": "^(.*)$"
}
}
},
"external_identifier": {
"$id": "#/definitions/external_identifier",
"type": "object",
"title": "External Identifiers",
"required": [
"identifier",
"source"
],
"properties": {
"source": {
"type": "string",
"title": "External Identifier Source",
"examples": [
"wikidata",
"archivesspace"
],
"pattern": "^(.*)$",
"allOf": [{
"$ref": "#/definitions/source"
}]
},
"identifier": {
"$id": "#/definitions/external_identifier/properties/identifier",
"type": "string",
"title": "External Identifiers ID",
"examples": [
"5d604f4ffaa7bea21d1f258d"
],
"pattern": "^(.*)$"
}
}
},
"language": {
"$id": "#/definitions/language",
"type": "object",
"title": "Languages",
"required": [
"expression",
"identifier"
],
"properties": {
"expression": {
"$id": "#/definitions/language/properties/expression",
"type": "string",
"title": "Language Expression",
"minLength": 1,
"description": "Human readable text representation of Language",
"examples": [
"Esperanto"
],
"pattern": "^(.*)$"
},
"identifier": {
"$id": "#/definitions/language/properties/identifier",
"type": "string",
"title": "Language Identifier",
"description": "ISO language identifier",
"maxLength": 3,
"examples": [
"epo"
],
"pattern": "^(.*)$"
}
}
},
"note": {
"$id": "#/definitions/note",
"type": "object",
"title": "Notes",
"required": [
"source",
"subnotes",
"title",
"type"
],
"properties": {
"type": {
"$id": "#/definitions/note/properties/type",
"type": "string",
"items": {
"type": "string",
"enum": [
"accessrestrict",
"accruals",
"acquinfo",
"altformavail",
"appraisal",
"arrangement",
"bibliography",
"bioghist",
"custodhist",
"fileplan",
"index",
"odd",
"otherfindaid",
"originalsloc",
"phystech",
"prefercite",
"processinfo",
"relatedmaterial",
"scopecontent",
"separatedmaterial",
"userestrict",
"dimensions",
"legalstatus",
"summary",
"edition",
"extent",
"note",
"inscription",
"langmaterial",
"physdesc",
"physloc",
"materialspec",
"physfacet",
"rights_statement",
"rights_statement_act",
"materials",
"type_note",
"additional_information",
"expiration",
"extension",
"permissions",
"restrictions"
]
},
"title": "Note Types",
"description": "The type of note being used",
"examples": [
"materialspec"
],
"pattern": "^(.*)$"
},
"title": {
"$id": "#/definitions/note/properties/title",
"type": "string",
"title": "Note Title",
"description": "String title of the note",
"examples": [
"officia quis eu"
],
"pattern": "^(.*)$"
},
"source": {
"title": "Notes Source",
"examples": [
"wikidata"
],
"pattern": "^(.*)$",
"allOf": [{
"$ref": "#/definitions/source"
}]
},
"subnotes": {
"type": "array",
"items": {
"allOf": [{"$ref": "#/definitions/subnote"}]
}
}
}
},
"object": {
"$id": "#/definitions/object",
"type": "object",
"title": "Archival Object",
"required": [
"dates",
"extents",
"external_identifiers",
"title",
"type"
],
"properties": {
"type": {
"$id": "#/definitions/object/properties/type",
"type": "string",
"minLength": 1,
"enum": [
"object"
]
},
"dates": {
"type": ["array", "null"],
"items": {
"allOf": [{"$ref": "#/definitions/date"}]
}
},
"extents": {
"type": ["array", "null"],
"items": {
"allOf": [{"$ref": "#/definitions/extent"}]
}
},
"notes": {
"type": "array",
"items": {
"allOf": [{"$ref": "#/definitions/note"}]
}
},
"terms": {
"type": "array",
"items": {
"allOf": [{"$ref": "#/definitions/reference"}]
}
},
"agents": {
"type": "array",
"items": {
"allOf": [{"$ref": "#/definitions/reference"}]
}
},
"languages": {
"type": "array",
"items": {
"allOf": [{"$ref": "#/definitions/language"}]
}
},
"rights": {
"type": "array",
"items": {
"allOf": [{"$ref": "#/definitions/rights_statement"}]
}
},
"ancestors": {
"type": "array",
"items": {
"allOf": [{"$ref": "#/definitions/reference"}]
}
},
"external_identifiers": {
"type": "array",
"minItems": 1,
"items": {
"allOf": [{"$ref": "#/definitions/external_identifier"}]
}
},
"title": {
"$id": "#/definitions/object/properties/title",
"type": "string",
"title": "Object Title",
"examples": [
"5d604f4ffaa7bea21d1f258d"
],
"pattern": "^(.*)$"
}
}
},
"reference": {
"$id": "#/definitions/reference",
"type": "object",
"title": "References",
"required": [
"external_identifiers"
],
"properties": {
"external_identifiers": {
"type": "array",
"minItems": 1,
"items": {
"allOf": [{"$ref": "#/definitions/external_identifier"}]
}
},
"level": {
"$id": "#/definitions/reference/properties/level",
"type": ["string", "null"],
"title": "Level of description",
"description": "Records the level of description of ancestors",
"examples": [
"series",
"subseries"
],
"pattern": "^(.*)$"
},
"order": {
"$id": "#/definitions/reference/properties/order",
"type": ["number", "null"],
"title": "Order value",
"description": "Helps set the order of references",
"examples": [
"1",
"-4"
],
"pattern": "^(.*)$"
},
"relator": {
"$id": "#/definitions/reference/properties/relator",
"type": ["string", "null"],
"title": "Agent relator",
"description": "Relation of linked agent",
"examples": [
"aut"
],
"pattern": "^(.*)$"
},
"role": {
"$id": "#/definitions/reference/properties/role",
"type": ["string", "null"],
"title": "Agent relator",
"description": "Role of linked agent",
"examples": [
"creator",
"subject"
],
"pattern": "^(.*)$"
},
"title": {
"$id": "#/definitions/reference/properties/title",
"type": "string",
"title": "Title",
"description": "Reference title",
"examples": [
"Correspondence, 1925-1930"
],
"pattern": "^(.*)$"
},
"type": {
"$id": "#/definitions/reference/properties/type",
"type": ["string","null"],
"title": "Type",
"description": "Reference type",
"enum": [
"cultural_context",
"function",
"geographic",
"genre_form",
"occupation",
"style_period",
"technique",
"temporal",
"topical",
"person",
"organization",
"family",
"software",
"object",
"collection",
null
]
},
"uri": {
"$id": "#/definitions/reference/properties/uri",
"type": ["string","null"],
"title": "URI",
"description": "Relative link",
"examples": [
"collections/23rq4df3asdfaf"
],
"pattern": "^(.*)$"
}
}
},
"rights_granted": {
"$id": "#/definitions/rights_granted",
"type": "object",
"title": "Rights Granted",
"required": [
"act",
"begin",
"end",
"restriction"
],
"properties": {
"act": {
"$id": "#/definitions/rights_statement/properties/rights_granted/items/properties/act",
"type": "string",
"items": {
"type": "string",
"enum": [
"delete",
"disseminate",
"modify",
"migrate",
"replicate",
"use"
]
},
"title": "The Act Schema",
"minLength": 1,
"examples": [
"disseminate"
],
"pattern": "^(.*)$"
},
"begin": {
"$id": "#/definitions/rights_statement/properties/rights_granted/items/properties/begin",
"type": "string",
"title": "Rights Granted Begin Date",
"minLength": 1,
"examples": [
"2019-08-23"
],
"pattern": "^(.*)$"
},
"end": {
"$id": "#/definitions/rights_statement/properties/rights_granted/items/properties/end",
"type": "string",
"title": "Rights Granted End Date",
"minLength": 1,
"examples": [
"2019-08-23"
],
"pattern": "^(.*)$"
},
"restriction": {
"$id": "#/definitions/rights_statement/properties/rights_granted/items/properties/restriction",
"type": "string",
"items": {
"type": "string",
"enum": [
"allow",
"disallow"
]
},
"title": "The Restriction Schema",
"default": "",
"examples": [
"allow"
],
"pattern": "^(.*)$"
},
"notes": {
"type": "array",
"allOf": [{
"$ref": "#/definitions/note"
}]
}
}
},
"rights_statement": {
"$id": "#/definitions/rights_statement",
"type": "object",
"title": "Rights Statements",
"required": [
"begin",
"determination_date",
"end",
"rights_granted",
"rights_type",
"type"
],
"properties": {
"type": {
"$id": "#/definitions/rights_statement/properties/type",
"type": "string",
"enum": [
"rights_statement"
]
},
"determination_date": {
"$id": "#/definitions/rights_statement/properties/determination_date",
"type": "string",
"title": "Rights Statement Determination Date",
"minLength": 1,
"examples": [
"2019-08-23"
],
"pattern": "^(.*)$"
},
"rights_type": {
"$id": "#/definitions/rights_statement/properties/rights_type",
"type": "string",
"items": {
"type": "string",
"enum": [
"copyright",
"license",
"other",
"statute"
]
},
"title": "Rights Type",
"minLength": 1,
"examples": [
"other"
],
"pattern": "^(.*)$"
},
"begin": {
"$id": "#/definitions/rights_statement/properties/begin",
"type": "string",
"title": "Rights Begin Date",
"minLength": 1,
"examples": [
"2019-08-23"
],
"pattern": "^(.*)$"
},
"end": {
"$id": "#/definitions/rights_statement/properties/end",
"type": "string",
"title": "Rights End Date",
"minLength": 1,
"examples": [
"2019-08-23"
],
"pattern": "^(.*)$"
},
"copyright_status": {
"$id": "#/definitions/rights_statement/properties/copyright_status",
"type": "string",
"items": {
"type": "string",
"enum": [
"copyrighted",
"public domain",
"unknown"
]
},
"title": "Copyright Status",
"minLength": 1,
"examples": [
"public domain"
],
"pattern": "^(.*)$"
},
"other_basis": {
"$id": "#/definitions/rights_statement/properties/other_basis",
"type": "string",
"title": "Other Basis",
"minLength": 1,
"examples": [
"adipisicing"
],
"pattern": "^(.*)$"
},
"jurisdiction": {
"$id": "#/definitions/rights_statement/properties/jurisdiction",
"type": "string",
"items": {
"type": "string",
"enum": [
"CN",
"FR",
"US"
]
},
"title": "Rights Jurisdiction",
"minLength": 1,
"examples": [
"FR"
],
"pattern": "^(.*)$"
},
"rights_notes": {
"type": "array",
"allOf": [{
"$ref": "#/definitions/note"
}]
},
"rights_granted": {
"type": "array",
"allOf": [{
"$ref": "#/definitions/rights_granted"
}]
}
}
},
"source": {
"$id": "#/definitions/source",
"type": "string",
"items": {
"type": "string",
"enum": [
"archivesspace",
"cartographer",
"wikidata",
"wikipedia"
]
},
"title": "Sources",
"description": "Source of item",
"minLength": 1,
"examples": [
"cartographer"
],
"pattern": "^(.*)$"
},
"subnote": {
"$id": "#/definitions/subnote",
"type": "object",
"title": "Subnotes",
"required": [
"content",
"type"
],
"properties": {
"type": {
"$id": "#/definitions/subnote/properties/type",
"type": "string",
"items": {
"type": "string",
"enum": [
"definedlist",
"orderedlist",
"text"
]
},
"title": "Subnote Type",
"minLength": 1,
"examples": [
"definedlist"
],
"pattern": "^(.*)$"
},
"content": {
"$id": "#/definitions/subnote/properties/content",
"type": "array",
"title": "Subnote Content",
"items": {
"$id": "#/definitions/subnote/properties/content/items",
"type": "string",
"title": "Content Items",
"minLength": 1,
"examples": [
"cupidatat quis culpa amet labore incididunt",
"ullamco in Lorem ad minim labore",
"laborum dolore adipisicing aliquip incididunt ad",
"elit ipsum quis ex do dolore"
],
"pattern": "^(.*)$"
}
}
}
},
"term": {
"$id": "#/definitions/term",
"type": "object",
"title": "Terms",
"required": [
"external_identifiers",
"title",
"type",
"term_type"
],
"properties": {
"title": {
"$id": "#/definitions/term/properties/title",
"type": "string",
"title": "Term Title",
"description": "Human readable title of the term",
"minLength": 1,
"examples": [
"Philosophy"
],
"pattern": "^(.*)$"
},
"term_type": {
"$id": "#/definitions/term/properties/term_type",
"type": "string",
"enum": [
"cultural_context",
"function",
"geographic",
"genre_form",
"occupation",
"style_period",
"technique",
"temporal",
"topical"
],
"title": "Term type",
"minLength": 1,
"examples": [
"temporal"
],
"pattern": "^(.*)$"
},
"type": {
"$id": "#/definitions/term/properties/type",
"type": "string",
"minLength": 1,
"enum": [
"term"
]
},
"external_identifiers": {
"type": "array",
"minItems": 1,
"items": {
"allOf": [{
"$ref": "#/definitions/external_identifier"
}]
}
}
}
}
}
}
You can’t perform that action at this time.