ESciDoc Item Container Version History
This is a protected page.
Concepts[edit]
See Item, Container Specs&APIs here
Container Handler[edit]
Containers offer the concept of aggregation, i.e. they can contain other (simple and complex) objects. Each container includes a structural map, which manages references to all members of the aggregation. Containers are versionable. They can be associated with a persistent identifier. Containers have a built-in basic object lifecycle. The status of a Container within its object lifecycle influences which actions are applicable and which user privileges are to be evaluated.
Item Handler[edit]
Items are objects representing the actual content of the repository. An item is a simple or complex object like an article, a report or a translation. Items are versionable. They can be associated with a persistent identifier. Items have a built-in basic object lifecycle. The status of an Item within its object lifecycle influences which actions are applicable and which user privileges are to be evaluated.
Premis Event Entity[edit]
The Event entity aggregates information about an action that involves one or more Object entities. Metadata about an Event would normally be recorded and stored separately from the digital object.
Whether or not a preservation repository records an Event depends upon the importance of the event. Actions that modify objects should always be recorded. Other actions such as copying an object for backup purposes may be recorded in system logs or an audit trail but not necessarily in an Event entity. Mandatory semantic units are: eventIdentifier
, eventType
, and eventDateTime
.
This is a hierarchical listing of the semantic units included in the Data Dictionary. The information in parentheses following each semantic unit indicates whether the element is Mandatory (M) or Optional (O), followed by whether it is Repeatable (R), Not repeatable (NR) or Attribute (A).
V1.0[edit]
- eventIdentifier (M, NR)
- eventIdentifierType (M, NR)
- eventIdentifierValue (M, NR)
- eventType (M, NR)
- eventDateTime (M, NR)
- eventDetail (O, NR)
- eventOutcomeInformation (O, R)
- eventOutcome (O, NR)
- eventOutcomeDetail (O, R)
- linkingAgentIdentifier (O, R)
- linkingAgentIdentifierType (M, NR)
- linkingAgentIdentifierValue (M, NR)
- linkingAgentRole (O, R)
- linkingAgentXmlID (O, A)
- linkingObjectIdentifier (O, R)
- linkingObjectIdentifierType (M, NR)
- linkingObjectIdentifierValue (M, NR)
- linkingObjectXmlID (O, A)
- xmlID (M, A)
V2.0[edit]
- eventIdentifier (M, NR)
- eventIdentifierType (M, NR)
- eventIdentifierValue (M, NR)
- eventType (M, NR)
- eventDateTime (M, NR)
- eventDetail (O, NR)
- eventOutcomeInformation (O, R)
- eventOutcome (O, NR)
- eventOutcomeDetail (O, R)
- eventOutcomeDetailNote (O, NR)
- eventOutcomeDetailExtension (O, NR)
- linkingAgentIdentifier (O, R)
- linkingAgentIdentifierType (M, NR)
- linkingAgentIdentifierValue (M, NR)
- linkingAgentRole (O, R)
- LinkAgentXmlID (O, A)
- linkingObjectIdentifier (O, R)
- linkingObjectIdentifierType (M, NR)
- linkingObjectIdentifierValue (M, NR)
- linkingObjectRole (O, R)
- LinkObjectXmlID (O, A)
- xmlID (M, A)
Changes v1.0=>v2.0[edit]
- Complete schema in one file instead of separate files.
- Added elements:
- eventOutcomeDetailNote (O, NR)
- eventOutcomeDetailExtension (O, NR)
- linkingObjectRole (O, R)
PREMIS data dictionary[edit]
Semantic unit | 2.1 eventIdentifier |
---|---|
Semantic components |
2.1.1 eventIdentifierType 2.1.2 eventIdentifierValue |
Definition | A designation used to uniquely identify the event within the
preservation repository system. |
Rationale | Each event recorded by the preservation archive must have a unique
identifier to allow it to be related to objects, agents, and other events. |
Data constraint | Container |
Repeatability | Not repeatable |
Obligation | Mandatory |
Creation / Maintenance notes |
The eventIdentifier is likely to be system generated. There is no
global scheme or standard for these identifiers. The identifier is therefore not repeatable. |
eSciDoc | Each event recorded by the preservation archive must have a unique
identifier to allow it to be related to objects, agents, and other events. |
Semantic unit | 2.1.1 eventIdentifierType |
---|---|
Semantic components |
None |
Definition | A designation of the domain within which the event identifier is unique.
ifier to allow it to be related to objects, agents, and other events. |
Data constraint | None |
Examples | FDA Stanford Repository Event ID UUID |
Repeatability | Not repeatable |
Obligation | Mandatory |
Creation / Maintenance notes |
For most preservation repositories, the eventIdentifierType will be its
own internal numbering system. It can be implicit within the system and provided explicitly only if the data is exported. |
eSciDoc | URL |
Semantic unit | 2.1.2 eventIdentifierValue |
---|---|
Semantic components |
None |
Definition | The value of the 2.1 eventIdentifier |
Data constraint | None |
Examples | [a binary integer] E-2004-11-13-000119 58f202ac-22cf-11d1-b12d-002035b29092 |
Repeatability | Not repeatable |
Obligation | Mandatory |
eSciDoc | Value of the URL --Makarenko 14:19, 5 January 2010 (UTC): For the moment values like /ir/container//version-history#v40e1257337841231 /ir/container/escidoc:29780:39version-history#v39e1257337708130 To be consolidated. |
Semantic unit | 2.2 eventType |
---|---|
Semantic components |
None |
Definition | A categorization of the nature of the event. |
Rational | Categorizing events will aid the preservation repository in machine processing of event information, particularly in reporting. |
Data constraint | Value should be taken from a controlled vocabulary. |
Examples | E77 [a code used within a repository for a particular event type] Ingest |
Repeatability | Not repeatable |
Obligation | Mandatory |
Usage Notes | Each repository should define its own controlled vocabulary of eventType values. A suggested starter list for consideration (see also the Glossary for more detailed definitions): capture = the process whereby a repository actively obtains an object compression = the process of coding data to save storage space or transmission time creation = the act of creating a new object deaccession = the process of removing an object from the inventory of a repository decompression = the process of reversing the effects of compression decryption = the process of converting encrypted data to plaintext deletion = the process of removing an object from repository storage digital signature validation = the process of determining that a decrypted digital signature matches an expected value dissemination = the process of retrieving an object from repository storage and making it available to users fixity check = the process of verifying that an object has not been changed in a given period ingestion = the process of adding objects to a preservation repository message digest calculation = the process by which a message digest (“hash”) is created migration = a transformation of an object creating a version in a more contemporary format. normalization = a transformation of an object creating a version more conducive to preservation replication = the process of creating a copy of an object that is, bitwise, identical to the original validation = the process of comparing an object with a standard and noting compliance or exceptions virus check = the process of scanning a file for malicious programs. Note that migration, normalization, and replication are more precise subtypes of the creation event. “Creation” can be used when more precise terms do not apply, for example, when a digital object was first created by scanning from paper. In general, the level of specificity in recording the type of event (e.g., whether the eventType indicates a transformation, a migration or a particular method of migration) is implementation specific and will depend upon how reporting and processing is done. Recommended practice is to record detailed information about the event itself in eventDetail rather than using a very granular value for eventType. |
eSciDoc | --Makarenko 14:43, 5 January 2010 (UTC) For the moment the following values are presented: create update submitted assignVersionPid released ... Should be replaced with the list of eventType values from controlled vocabulary. |
Semantic unit | 2.3 eventDateTime |
---|---|
Semantic components |
None |
Definition | The single date and time, or date and time range, at or during which the event occurred. |
Data constraint | To aid machine processing, value should use a structured form. To facilitate exchange of PREMIS-conformant metadata, use of standard conventions, for instance as used in the date elements in the PREMIS schema, is recommended. |
Examples | 20050704T071530-0500 [July 4, 2005 at 7:15:30 a.m. EST] 2006-07-16T19:20:30+01:00 20050705T0715-0500/20050705T0720-0500 [from 7:15 a.m. EST to 7:20 a.m. EST on July 4, 2005] 2004-03-17 [March 17, 2004, only the date is known] |
Repeatability | Not repeatable |
Obligation | Mandatory |
Usage Notes | Recommended practice is to record the most specific time possible and to designate the time zone. |
eSciDoc | Example: 2009-11-04T12:30:40.064Z Controlled by PREMIS type edtfSimpleType |
Semantic unit | 2.4 eventDetail |
---|---|
Semantic components |
None |
Definition | Additional information about the event. |
Data constraint | None |
Examples | Object permanently withdrawn by request of Caroline Hunt. Program=“MIGJP2JP2K”; version=“2.2” |
Repeatability | Not repeatable |
Obligation | Optional |
Usage Notes | eventDetail is not intended to be processed by machine. It may record any information about an event and/or point to information stored elsewhere. |
eSciDoc | Currently populated by machine. Examples: Object escidoc:29780 created. Container.addContentRelations ContainerHandler.release() objectPid assigned ContainerHandler.update() no comment ... --Natasa 16:26, 22 December 2009 (UTC) change: to be provided by the end user with the operation (additionally for update, create) --Makarenko 16:17, 5 January 2010 (UTC) My suggestion: can be edited only by user, machine generated message write into eventOutcome and eventOutcomeDetail |
Links[edit]
- PREMIS all schemas
- PREMIS v2.0: Data Dictionary PDF, HTML
- PREMIS v2.0 Hierarchical Listing of Semantic Units, see Event.
- PREMIS v1.0 => v2.0 changes
- JIRA tickets: http://zim01.gwdg.de:8080/browse/AS-765 and https://www.escidoc.org/jira/browse/INFR-606
- Object Manager
- API Documentation Container Handler, Item Handler
- Schemas: Container, Item
- TOC Container
- Version History XSD
Examples[edit]
- container version-history, dev-coreservice, escidoc:29780
- item version-history, dev-coreservice, escidoc:29777