MMI Collection Browser Authority Term Schema for 2.6

Status

This schema is...

 

under review

 

complete

Browser Schema

Authority

MMI Field Name

CSpace field name

DB table.field

NXQL table:field

notes

search
API

updated

Entity (Person)

Term display name

Display name

personstermgroup.termdisplayname

persons_common:personTermGroupList/0/termDisplayName

 

@

 

Birth/founding date

Date Display Date

structureddategroup.dateEarliestSingleYear

persons_common:birthDateGroup/dateDisplayDate

 

@

 

Death/dissolution date

Date Display Date

structureddategroup.dateEarliestSingleYear

persons_common:deathDateGroup/dateDisplayDate

 

@

 

Type

Entity type (CL)

personstermgroup.termtype

persons_common:personTermGroupList/0/termType

 

@

 

History notes

Biographical Note

persons_common.bionote

persons_common:bioNote

 

@

 

 

Source

Source (CL)

personstermgroup.termsource

persons_common:personTermGroupList/0/termSource

 

@

 

Source notes

Source note

personstermgroup.termsourcenote

persons_common:personTermGroupList/0/termSourceNote

 

@

Production (Work)

Term display name

Display name

worktermgroup.termdisplayname

works_common:workTermGroupList/0/termDisplayName

 

@

 

Medium

Medium (CL)

works_common.medium

works_common:medium

 

@

 

Display Date

Display Date

structureddategroup.datedisplaydate

works_common:workDateGroupList/0/dateDisplayDate

 

@

 

Date Association

Date Association (CL)

structureddategroup.dateassociation

works_common:workDateGroupList/0/dateAssociation

 

@

 

Creator

Creator

creatorgroup.creator

works_common:creatorGroupList/0/creator

 

@

 

Creator Type

Creator Type (CL)

creatorgroup.creatortype

works_common:creatorGroupList/0/creatorType

 

@

 

Publisher

Publisher

publishergroup.publisher

works_common:publisherGroupList/0/publisher

 

@

 

Publisher Type

Publisher Type (CL)

publishergroup.publishertype

works_common:publisherGroupList/0/publisherType

 

@

 

Scope Note

Scope Note

works_common.scopenote

works_common:scopeNote

is there data in this field?

@

 

Indexing notes

Term source detail

worktermgroup.termsourcedetail

works_common:workTermGroupList/0/termSourceDetail

 

@

The fields marked (CL) describe a field that is a controlled list (HTML select element). The returned value is a non-spaced string. Please see Controlled List mapping for a mapping of controlled list strings to displayed values.

Other parameters

Description

NXQL string

DB string

API query string

Required

is object record deleted?

CSpace specific flag

misc.lifestylestate <> 'deleted'

&wf_deleted=false

Y

sort by

CSpace specific flag

ORDER BY collectionspace_core.updatedat

?sortBy=collectionspace_core:updatedAt

N

Using short ID in place of CSIDs

Foreknowledge of the parent authority CSID is no longer necessary. Only the short ID of the parent authority needs be known, which for MMI is urn:cspace:name(person). Likewise, the CSID of the person authority record can be replaced with the short ID of that record.

The URL structure can be formatted with CSIDs

http://collectiontest.movingimage.us:8180/cspace-services/personauthorities/b348ff18-db98-44e7-9780/items/44793958-fe52-4c4f-b960-84e23f9b618d

or with short IDs

http://collectiontest.movingimage.us:8180/cspace-services/personauthorities/urn:cspace:name(person)/items/urn:cspace:name(oc96)

Also see /wiki/spaces/collectionspace/pages/666273476.

Get referenced authority records

Append authorityrefs to the API URL for a collectionobject record to get a list of referenced authority records': sourceField, itemDisplayName and refName (in short ID format).

An example API call for authorityrefs for a given authority record

http://collectiontest.movingimage.us:8180/cspace-services/personauthorities/urn:cspace:name(person)/items/urn:cspace:name(oc96)/authorityrefs

Get cataloging records referencing a specific person authority record

Getting a list of cataloging records referencing a specific person authority record follows the same API construction listed in the previous section. An additional query path component is used, refObjs, to filter referencing cataloging, procedural or authority records. By default refObjs filters by procedural records, i.e. records that are not collectionobjects nor authorities, but using a ?type=object parameter will filter by object record. Likewise, ?type=authority will filter by authorities.

An example API call would be as such

http://collectiontest.movingimage.us:8180/cspace-services/personauthorities/urn:cspace:name(person)/items/urn:cspace:name(oc96)/refObjs?type=object

Also see related Object References for authority term instances.

Chaining multiple record calls using the OR operator

The benefit of the relations service is receiving a single payload that contains refNames or CSIDs of all the related records. Typically, from here it is necessary to make one API call for every refName/CSID received since no other supporting information is returned for a related record, since only a few fields are listed in the query results. This can be unwieldy if there are dozens of refNames/CSIDs to fetch. Here the OR operator can be used to 'chain' together multiple calls to the same procedure.

Example

We want to create a list of cataloging records that reference a given person authority record. We want the caption and objectNumber fields to show in the UI for each cataloging record.

First, the following person authority service API call is made to find all the referenced cataloging records.

http://collectiontest.movingimage.us:8180/cspace-services/personauthorities/urn:cspace:name(person)/items/782c7a8a-3026-49d5-9575-9c8ff57ea0a6/refObjs?type=object

The xml list returns something like this abbreviated payload in the following (using xpath authority-ref-doc-item/). We will take the value in docID as this is the CSID of the referenced cataloging record.

...
    <docId>7f8337d1-26c6-4363-858a-8eeea04da220</docId>
    ...
    <docId>88b76720-f9f9-4d87-aa07-5c2128b01bdc</docId>
    ...
    <docId>53a45ccb-729e-4953-b6a8-608a5e2f2f82</docId>
    ...
    <docId>7e1fde40-a917-43cd-96a8-a9eb2403cc57</docId>
...

There are 32 cataloging records listed above, but we'll only use the first 4 in this example.

Next, instead of 32 separate API calls to the media server we can construct one (or more)* API call using the CSIDs given above. We can use a special CSpace/Nuxeo NXQL property to search by CSIDs: ecm:name.

http://collectiontest.movingimage.us:8180/cspace-services/collectionobjects?as=
ecm:name='7f8337d1-26c6-4363-858a-8eeea04da220'
OR ecm:name='88b76720-f9f9-4d87-aa07-5c2128b01bdc'
OR ecm:name='53a45ccb-729e-4953-b6a8-608a5e2f2f82'
OR ecm:name='7e1fde40-a917-43cd-96a8-a9eb2403cc57'

This resultant list payload will show us the value of the caption field for each of cataloging record queried.

* More records can be chained together to improve processing speed, but there is a string limit to the length of a URL.

Controlled List mapping

Entity - Type

link

Controlled list string

Display string

corporation

Corporation

group

Group

individual

Individual

Entity - Source

link

Controlled list string

Display string

encyclopediaofearlycinema

Encyclopedia of Early Cinema

halliwellswhoswhointhemovies

Halliwell's Who's Who in the Cinema

libraryofcongressnameauthority

Library of Congress Name Authority

other

Other

root

Root

silentfilmnecrology2ndedition

Silent Film Necrology, 2nd Edition

thefilmencyclopedia4thedition

The Film Encyclopedia, 4th Edition

Production - Medium

link

Controlled list string

Display string

film

Film

internet

Internet

television

Television

videogame

Video game

Production - Date Association

link

Controlled list string

Display string

creation

Creation

copyright

Copyright

display

Display

exhibition

Exhibition

ownership

Ownership

releasedate

Release

production

Production

publication

Publication

running

Running

use

Use

Production - Creator Type

link

Controlled list string

Display string

artist

Artist

director

Director

publishingcompany

Publishing company

developer

Developer

productioncompany

Production company

Production - Publisher Type

link

Controlled list string

Display string

networkcableservice

network cable service

distributioncompany

distribution company

publishingcompany

publishing company

Authority REST API for Hierarchies
Person Services REST APIs
Organization Services REST APIs
Common Services REST API
Short Identifier /wiki/spaces/collectionspace/pages/666273476