PREMIS events modeled using PREMIS 2.2 and serialized in RDF (http://www.loc.gov/standards/premis/ontology/index.html)
Preservation events to model within Phydo functionality
- Ingestion - The process of adding objects to a preservation repository.
Fixity Check (only recurring PREMIS event) - The process of verifying that an object has not been changed in a given period.- Deaccession - The process of removing an object from the inventory of a repository.
Preservation events that happen outside of PHYDO and should be recorded
Message digest calculation - The process by which a message digest ("hash") is created.
Validation - The process of comparing an object with a standard and noting compliance or exceptions.
Creation - The act of creating a new object.
Virus check - The process of scanning a file for malicious programs. (not including for IU implementation)
Capture (need to discuss) - The process whereby a repository actively obtains an object.- Fixity Check (run against asynchronous/tape storage on set of files and added into Phydo) - The process of verifying that an object has not been changed in a given period.
For PREMIS events that happen outside of PHYDO, the following properties included in the attached .n3 file examples will need to map to something from the SIP:
Event | premis:hasEventType | Property | Content Source | Example Data - for 40000000363772_20160606-150945/data/MDPI_40000000363772_01_pres.mkv | Example Data - for 40000000363772_20160606-150945/data/MDPI_40000000363772_01_mezz.mov | Example Data - for 40000000363772_20160606-150945/data/MDPI_40000000363772_01_access.mp4 |
---|---|---|---|---|---|---|
messageDigestCalculation | premis:hasEventOutcome | Brian's YAML file | 6763320f999439f96961fa3209133b9b | 885ed0fb6cf8e55cac6f5b548730f879 | dfee112509b43f8731c2bf8a637802dd | |
messageDigestCalculation | premis:hasAgent | use store-admin@iu.edu to represent SDA | store-admin@iu.edu | store-admin@iu.edu | store-admin@iu.edu | |
messageDigestCalculation | premis:hasEventDetail | Not in SIP but known info to be hard-coded or configured. For IU, "Program used: HSI 5.2 P3" | Program used: HSI 5.2 P3 | Program used: HSI 5.2 P3 | Program used: HSI 5.2 P3 | |
validation | premis:hasEventDateTime | MDPI_[barcode]_[seq]_[type]_ffprobe.xml file date | 2016-06-06T15:09:00Z | 2016-06-06T15:09:00Z | 2016-06-06T15:09:00Z | |
validation | premis:hasEventOutcome | would always be "PASS" if ffprobe/fits file exists, otherwise maybe it would be "FAIL"? | PASS | PASS | PASS | |
validation | premis:hasEvenDetail | if /node() = "ffprobe", then example columns output; if /node() = "fits" then "Program used: File Information Toolset (FITS), version [//identity/@toolversion]" | FFprobe multimedia streams analyzer from FFmpeg | FFprobe multimedia streams analyzer from FFmpeg | FFprobe multimedia streams analyzer from FFmpeg | |
creation | http://id.loc.gov/vocabulary/preservation/eventType/cre | premis:hasEventDateTime | MDPI_[barcode].xml: <Date> from /IU/Carrier[1]/Parts[1]/Part@Side=[seq]/Ingest[1]/Date[1]; could also use that same path for <Date> where /IU/Carrier/Parts/Part/Files/File/FileName = MDPI_[barcode]_[seq]_[type].[ext] | 2016-05-26 | 2016-05-26 | 2016-05-26 |
virusCheck | premis:hasEventDateTime | not including for IU implementation | ||||
virusCheck | premis:hasEventOutcome | not including for IU implementation | ||||
virusCheck | premis:hasEventDetail | not including for IU implementation | ||||
fixityCheck | http://id.loc.gov/vocabulary/preservation/eventType/fix | premis:hasEventDetail | from external file source (not part of SIP) | |||
fixityCheck | premis:hasEventDateTime | from external file source (not part of SIP) | ||||
fixityCheck | premis:hasEventOutcome | from external file source (not part of SIP) |
PREMIS 3 ontology mapping changes things up for events and for the few properties we're using to define objects. See Changes for PREMIS 3 Ontology
3 Comments
Michael Muraszko
Next step, should we start mapping out potential eventIdentifiers and such?
Heidi Dowding
https://bugs.dlib.indiana.edu/browse/HDM-590 might be a good next story to put in the sprint next week. Right now it says "I need to map defined preservation events to PREMIS", maybe we can add a Done Looks Like to make it clearer. Not sure if it would just be like full PREMIS examples on this page? And just for those within HD2 or also for those happening before ingest?
Andrew Myers
Heidi Dowding, Julie Hardesty, can we add a column to the table for premis:hasEventType, where the values is the URI for said PREMIS Event Type?
Hit me up on Slack for more detailed explanation.