Skip to end of metadata
Go to start of metadata

A CollectionSpace ID (abbreviated in some contexts as "CSID") is an arbitrary, implementation-independent identifier, used to identify each of the unique resources in a CollectionSpace system.

Generally, any unit or bundle of data in a CollectionSpace system that is capable of being accessed individually, as a resource, from CollectionSpace's Services Layer, will be addressable via its CollectionSpace ID.

Some representative examples of the many types of resources addressable via CSIDs include CollectionObjects, Intakes, Loans, Vocabularies and VocabularyItems.

CollectionSpace IDs are intended to be opaque and portable. That is, they should not have any relation to any identifier used by an underlying storage system or software component in a CollectionSpace system.

Icon

Some resources in CollectionSpace may also be identified by Short Identifiers, which tend to be more human readable than CSIDs.

Where Short Identifers are supported, you may use either a CSID or a Short Identifier to refer to a particular resource. In all other contexts in CollectionSpace, only CSIDs may be used as identifiers.

Example

The following are two illustrative examples of CollectionSpace IDs (CSIDs):

Formats

The two formats currently used for CollectionSpace IDs (CSIDs), generated internally by a CollectionSpace system, are:

  • An instance of a Version 4 Universally Unique Identifier (UUID).

    Version 4 UUIDs are 36-character strings. The following is a regular expression to match valid values of these UUIDs:
  • An alternate instance of a UUID, a 23-character string.

    See CSPACE-2782 for more details regarding this format.

Generating

You can generate Version 4 UUIDs via the following simple Java class; copy the following text and paste it into a file named Guid.java:

To compile this class from your operating system's command line, assuming Java is installed:

To run this class, and generate a new UUID:

Alternatively, on Mac OS and linux systems, you can generate UUIDs using the uuidgen command. This will generate a UUID, and print it out:

See Also