Page tree

Versions Compared

Key

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

...

Section


Column
width60%

The Codex Metadata Model


Column




 

The initial model consists of 5 objects (in orange). It is anticipated that more objects will be added to the model. Some of the future objects are already known (in blue): Work and Subject.

...

Field TypeRequiredRepeatableDescription
idstringY The internal id of the Item record (UUID)
instanceidstringY Link back to the parent Instance
descriptionstring  Free-form description of the resource
titlestringY Inherited from Instance: see above
altTitlestring  Inherited from Instance: see above
seriesstring  Inherited from Instance: see above
contributorstring YInherited from Instance: see above
publisherstring  Inherited from Instance: see above
datestring  Inherited from Instance: see above
typestring  Inherited from Instance: see above
formatstring  Inherited from Instance: see above
identifier object YInherited from Instance: see above
 typestring  Inherited from Instance: see above
 valuestring  Inherited from Instance: see above
sourcestring  Inherited from Instance: see above
languagestring YInherited from Instance: see above
rightsstring  Inherited from Instance: see above
copyNumbernumber  the "bad old" copy number. Required for backwards compatibilitycodex.location.json
barcodestring  barcode on the Item
vendorPackagestring  name of vendor package associated with item. (Not to be confused with the Codex Package object.)
coverageobject  See Coverage object
locationobject YSee Location object. There can be multiple locations associated with an Item: e.g. Permanent and Termporary
itemStatusstring  Item state: e.g. on order
isSelectedboolean  Holding property. Selection state ("is it held?") of the Item. Mostly relevant for e-resources
isCustomizedboolean  Administrative flag to indicate that inherited fields have been overwritten

Item JSON schema.

Package

The Package represents a container of either Instances and/or Items. As such it provides the ability to group these together for any number of reasons. A given Instance or Item may be placed in any number of Packages since these are ostensibly independent groupings and there are many possible ways to group resources.

...

FieldTypeRequiredRepeatableDescription
idstringY The internal id of the Package record (UUID)
identifierstring  An external identifier used to track the Package (e.g. a barcode)
namestring  A name (or label) associated with the Package
descriptionstring  A free-form description of the Package
typestring  The type of package - what sort of collection does it represent. (e.g. DVD box set; boundwidth; archival cardboard box; etc..)
vendoridstring  Link to vendor object associated with this resource (could be in another domain)
vendorstring  Name of vendor for display purposes
platformstring  Platform hosting the e-resource.
itemsarrayY Array containing Instance or Item objects
itemCountnumber  Number of items found in the itemsArray
selectedCountnumber  Number of items in the ItemsArray that are selected ("are held"). Mostly relevant for e-resources
coverageobject  Coverage object for the package itself, rather than its contents. See Content object
isSelectedboolean  Selection state ("is it held?") of the package itself, rather than its contents. Mostly relevant for e-resources

Package JSON schema.

Location

The Location object will be typically be found nested within the Item or Package object. However, it warrants its own representation as it is a powerful object with potential reuse in other parts of Folio. To this end it has it’s own data model description (JSON schema).

...

Field TypeRequiredRepeatableDescription
idstringY The internal id of the Location record (UUID)
institutionstring  Top level administrative organization (e.g. University)
campusstring  Geographic level (e.g. City)
librarystring  Building level (e.g. individual libraries)
parkingobject YExtensible collection of name value pairs. Can represent common location properties (e.g. cal numbers) or library specific location details (e.g. shelf number or department)
 name   Name of the parking value (e.g. LCCallNumber or ShelfLocation)
 value   Value tied to the specific parking name
platformstring  Delivery platform (for e-resources)
uristring  URI to access a resource (for e-resources)

.Location JSON schema.

Coverage

The Coverage object allows the definition of coverage ranges associated with a resource. This is some of what would traditionally be found in a library’’s holding record (holding in the non-Codex sense).

...

Field TypeRequiredRepeatableDescription
idstringYYThe internal id of the Coverage record (UUID)
rangeobject Y

A set of ranges to describe coverage for the resource

  • Begin and End values specify a range
  • End value is optional (i.e. when specifying date singleton)
  • Range can be specified in time (dates) or volume-issue units
 beginstring  Beginning point in a range
 endstring  Ending point in a range
statementstring  A free form text statement to describe coverage for the resource
embargoobject YA set of ranges to describe embargo periods for a resource
 beginstring  Beginning of embargo
 endstring  End of embargo

Coverage JSON schema.