Import metadata¶
Archivematica can recognize descriptive and/or rights metadata that is included
with your transfer. You can import metadata by including a directory called
metadata
in your transfer. The directory can contain any type of metadata
that you wish to preserve alongside your digital objects. The Process Metadata
Directory Microservice will perform a number of preservation actions on objects
in this directory.
Archivematica supports conventions for importing descriptive metadata and rights metadata that will transpose the contents of the metadata files into the METS file. If you are using AtoM or ArchivesSpace, metadata that is transposed to the METS can be passed on to these access systems for further use.
Metadata that is not able to be transposed to the METS - for example, preservation metadata created by tool like BitCurator prior to ingest into Archivematica - will be preserved alongside the materials in the transfer.
Descriptive and/or rights metadata can be added to standard, unzipped, zipped, and disk image transfer types.
Metadata in the METS file is searchable in the Archival Storage tab.
On this page:
- Importing descriptive metadata with metadata.csv
- Importing rights metadata with rights.csv
- Adding metadata to bags
- Importing other types of metadata
- Importing structural metadata with mets_structmap.xml
Importing descriptive metadata with metadata.csv¶
Archivematica natively supports the Dublin Core Metadata Element Set, the basic 15 Dublin Core metadata elements. Using the metadata.csv method, users can also include non-Dublin Core metadata. Archivematica is able to pass Dublin Core metadata to AtoM or ArchivesSpace, but not non-Dublin Core metadata.
Note
Note: Archivematica can only read CSV files that have been encoded in UTF-8. Metadata saved with a file encoding other than UTF-8 may not map correctly to the METS file, or may cause an error and not be added at all.
Descriptive metadata can be applied to individual objects within a transfer, to directories within the transfer, or both.
Adding descriptive metadata to individual objects¶
Metadata can be applied to individual objects within a transfer. For example, you could apply item-level descriptive metadata to an individual image or multimedia file. The following steps will take you through the basic workflow for creating a metadata.csv file that will apply metadata to individual objects.
Create a transfer directory containing the digital objects you would like to preserve (for more information on creating a basic transfer for Archivematica, see Basic transfers.) As an example, the following directory tree displays a basic transfer called
metadataTransfer
. One digital object sits within the top-level directory, while another object is nested within a subdirectory.:metadataTransfer/ ├── audio │ └── bird.mp3 └── beihai.tif
Note that this transfer does not currently contain any metadata.
Create a CSV file called metadata.csv. The example below can be used as a template for Dublin Core metadata. The filename column must come first and the filename path must always start with
objects/
. Note that if you add column headings that are not in thedc.element
format, Archivematica will not indicate that the metadata is Dublin Core.filename dc.title dc.creator dc.subject dc.subject dc.subject dc.description dc.publisher dc.contributor dc.date dc.type dc.format dc.identifier dc.source dc.language dc.relation dc.coverage dc.rights objects/beihai.tif Beihai, Guanxi, China, 1988 NASA/GSFC/METI/ERSDAC/ JAROS and U.S./Japan ASTER Science Team China Beihai Beihai is a city in the south of Guangxi, People’s Republic of China. NASA Jet Propulsion Laboratory February 29, 2016 image image.tif NASA Jet Propulsion Laboratory Public domain objects/audio/bird.mp3 14000 Caen, France - Bird in my garden Nicolas Germain field recording soundscapes radio aporee Bird singing in my garden, Caen, France, Zoom H6 Radio Aporee 2017-05-27 sound audio/mp3 Internet Archive Public domain Note that empty columns (i.e.
dc.contributor
) were left in to demonstrate the full range of possible Dublin Core values. You do not need to keep empty columns.Create a subdirectory called
metadata
and place the metadata.csv file inside it.:metadataTransfer/ ├── audio │ └── bird.mp3 ├── beihai.tif └── metadata └── metadata.csv
Process the transfer as usual.
Any Dublin Core metadata formatted as in the example above will be transposed to
the METS file. The METS file for the above example includes two descriptive
metadata sections (<dmdSec>
), one for each file in the transfer. These
contain the Dublin Core metadata parsed from the metadata.csv. Note in the
metadata wrapper (<mdWrap>
) that they are given an MDTYPE of “DC”. If there
had been non-Dublin Core metadata in the metadata.csv, there would be a separate
<mdWrap>
for the file with an MDTYPE of “OTHER”.
<dmdSec ID="dmdSec_1">
<mdWrap MDTYPE="DC">
<xmlData>
<dcterms:dublincore xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xsi:schemaLocation="http://purl.org/dc/terms/ http://dublincore.org/schemas/xmls/qdc/2008/02/11/dcterms.xsd">
<dc:title>Beihai, Guanxi, China, 1988</dc:title>
<dc:creator>NASA/GSFC/METI/ERSDAC/JAROS and U.S./Japan ASTER Science Team</dc:creator>
<dc:subject>satellite imagery</dc:subject>
<dc:subject>China|Beihai</dc:subject>
<dc:description>Beihai is a city in the south of Guangxi, People's Republic of China.</dc:description>
<dc:publisher>NASA Jet Propulsion Laboratory</dc:publisher>
<dc:contributor></dc:contributor>
<dc:date>February 29,2016</dc:date>
<dc:type>image</dc:type>
<dc:format>image/tif</dc:format>
<dc:identifier></dc:identifier>
<dc:source>NASA Jet Propulsion Laboratory</dc:source>
<dc:language></dc:language>
<dc:relation></dc:relation>
<dc:coverage></dc:coverage>
<dc:rights>Public domain</dc:rights>
</dublincore>
</xmlData>
</mdWrap>
</dmdSec>
<mets:dmdSec ID="dmdSec_2">
<mets:mdWrap MDTYPE="DC">
<mets:xmlData>
<dcterms:dublincore xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xsi:schemaLocation="http://purl.org/dc/terms/ http://dublincore.org/schemas/xmls/qdc/2008/02/11/dcterms.xsd">
<dc:title>14000 Caen, France - Bird in my garden</dc:title>
<dc:creator>Nicolas Germain</dc:creator>
<dc:subject>field recording</dc:subject>
<dc:subject>phonography|soundscape|sound art|soundmap|radio|ephemeral|listening|radio aporee</dc:subject>
<dc:description>Bird singing in my garden, Caen, France, Zoom H6</dc:description>
<dc:publisher>Radio Aporee</dc:publisher>
<dc:contributor></dc:contributor>
<dc:date>2017-05-27</dc:date>
<dc:type>sound</dc:type>
<dc:format>audio/mp3</dc:format>
<dc:identifier></dc:identifier>
<dc:source>Internet Archive</dc:source>
<dc:language></dc:language>
<dc:relation></dc:relation>
<dc:coverage></dc:coverage>
<dc:rights>Public domain</dc:rights>
</dcterms:dublincore>
</mets:xmlData>
</mets:mdWrap>
</mets:dmdSec>
Adding descriptive metadata to a directory¶
Metadata can also be applied to a directory within the transfer. For example, you could apply directory-level descriptive metadata to folder containing the pages of a book, where the metadata describes the book itself rather than the individual pages. The following steps will take you through the basic workflow for creating a metadata.csv file that will apply metadata to a directory of objects.
Note that the metadata.csv can contain directory-level metadata, individual object metadata, or a combination of both.
Create a transfer directory containing the digital objects you would like to preserve, organized as required within subdirectories (for more information on creating a basic transfer for Archivematica, see Basic transfers.) As an example, the following directory tree displays a basic transfer called
directoryTransfer
. The transfer contains two subfolders, which each contain two images.:directoryTransfer/ ├── CoastNews-1964-01-02 │ ├── page-01.jpg │ └── page-02.jpg └── CoastNews-1964-01-09 ├── page-01.jpg └── page-02.jpg
Note that this transfer does not currently contain any metadata.
Create a CSV file called metadata.csv. The example below can be used as a template for Dublin Core metadata. The filename column must come first and the filename path must always start with
objects/
. In the example below, the filename column contains the directory path, instead of a filename path.filename dc.title dc.publisher dc.subject dc.date dc.description dc.language dc.source objects/CoastNews-1964-01-02 Coast News, January 02, 1964 Fred Cruice Gibsons (B.C.)–Newspapers 1964/01/02 Scans of the January 2, 1964 issue of the Coast News. English British Columbia Historical Newspapers collection, https://open.library.ubc.ca/collections/bcnewspapers/xcoastnews objects/CoastNews-1964-01-09 Coast News, January 09, 1964 Fred Cruice Gibsons (B.C.)–Newspapers 1964/01/09 Scans of the January 9, 1964 issue of the Coast News. English British Columbia Historical Newspapers collection, https://open.library.ubc.ca/collections/bcnewspapers/xcoastnews Create a subdirectory called
metadata
and place the metadata.csv file inside it.:directoryTransfer/ ├── CoastNews-1964-01-02 │ ├── page-01.jpg │ └── page-02.jpg ├── CoastNews-1964-01-09 │ ├── page-01.jpg │ └── page-02.jpg └── metadata └── metadata.csv
Process the transfer as usual.
The METS file that results from the above example includes a <dmdSec>
for
each directory, rather than each individual file. These contain the Dublin Core
metadata parsed from the metadata.csv.
<mets:dmdSec ID="dmdSec_1">
<mets:mdWrap MDTYPE="DC">
<mets:xmlData>
<dcterms:dublincore xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xsi:schemaLocation="http://purl.org/dc/terms/ http://dublincore.org/schemas/xmls/qdc/2008/02/11/dcterms.xsd">
<dc:title>Coast News, January 02, 1964 </dc:title>
<dc:publisher>Fred Cruice </dc:publisher>
<dc:subject>Gibsons (B.C.)–Newspapers </dc:subject>
<dc:date>1964/01/02 </dc:date>
<dc:description>
Scans of the January 2, 1964 issue of the Coast News.
</dc:description>
<dc:language>English </dc:language>
<dc:source>
British Columbia Historical Newspapers collection, https://open.library.ubc.ca/collections/bcnewspapers/xcoastnews
</dc:source>
</dcterms:dublincore>
</mets:xmlData>
</mets:mdWrap>
</mets:dmdSec>
<mets:dmdSec ID="dmdSec_2">
<mets:mdWrap MDTYPE="DC">
<mets:xmlData>
<dcterms:dublincore xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xsi:schemaLocation="http://purl.org/dc/terms/ http://dublincore.org/schemas/xmls/qdc/2008/02/11/dcterms.xsd">
<dc:title>Coast News, January 09, 1964 </dc:title>
<dc:publisher>Fred Cruice </dc:publisher>
<dc:subject>Gibsons (B.C.)–Newspapers </dc:subject>
<dc:date>1964/01/09 </dc:date>
<dc:description>
Scans of the January 9, 1964 issue of the Coast News.
</dc:description>
<dc:language>English </dc:language>
<dc:source>
British Columbia Historical Newspapers collection, https://open.library.ubc.ca/collections/bcnewspapers/xcoastnews
</dc:source>
</dcterms:dublincore>
</mets:xmlData>
</mets:mdWrap>
</mets:dmdSec>
Adding non-Dublin Core descriptive metadata¶
You may wish to capture metadata elements that are not supported by the Dublin
Core Metadata Elements Set. As shown in the examples above, Dublin Core metadata
is written to the <dmdSec>
of the METS file with the metadata type indicated
as MDTYPE="DC"
. Non-Dublin Core metadata will be written into a separate
<dmdSec>
as MDTYPE="OTHER"
.
Here is an example of a metadata.csv file containing a mix of Dublin Core and non-Dublin Core descriptive metadata.
filename | dc.title | alternative_title | dc.publisher | dates_of_publication | dc.subject | dc.date | dc.description | frequency | dc.language | dc.source | digital_file_format |
---|---|---|---|---|---|---|---|---|---|---|---|
objects/CoastNews-1964-01-02 | Coast News, January 02, 1964 | Sunshine Coast News | Fred Cruice | 1945-1995 | Gibsons (B.C.)–Newspapers | 1964/01/02 | Scans of the January 2, 1964 issue of the Coast News. | Weekly | English | British Columbia Historical Newspapers collection, https://open.library.ubc.ca/collections/bcnewspapers/xcoastnews | jpg |
objects/CoastNews-1964-01-09 | Coast News, January 09, 1964 | Sunshine Coast News | Fred Cruice | 1945-1995 | Gibsons (B.C.)–Newspapers | 1964/01/09 | Scans of the January 9, 1964 issue of the Coast News. | Weekly | English | British Columbia Historical Newspapers collection, https://open.library.ubc.ca/collections/bcnewspapers/xcoastnews | jpg |
This results in a METS file containing two <dmdSec>
sections for each directory
- two with MDTYPE="DC"
and two with MDTYPE="OTHER"
.
<mets:dmdSec ID="dmdSec_1">
<mets:mdWrap MDTYPE="DC">
<mets:xmlData>
<dcterms:dublincore xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xsi:schemaLocation="http://purl.org/dc/terms/ http://dublincore.org/schemas/xmls/qdc/2008/02/11/dcterms.xsd">
<dc:title>Coast News, January 02, 1964 </dc:title>
<dc:publisher>Fred Cruice </dc:publisher>
<dc:subject>Gibsons (B.C.)–Newspapers </dc:subject>
<dc:date>1964/01/02 </dc:date>
<dc:description>
Scans of the January 2, 1964 issue of the Coast News.
</dc:description>
<dc:language>English </dc:language>
<dc:source>
British Columbia Historical Newspapers collection, https://open.library.ubc.ca/collections/bcnewspapers/xcoastnews
</dc:source>
</dcterms:dublincore>
</mets:xmlData>
</mets:mdWrap>
</mets:dmdSec>
<mets:dmdSec ID="dmdSec_2">
<mets:mdWrap MDTYPE="OTHER" OTHERMDTYPE="CUSTOM">
<mets:xmlData>
<alternative_title>Sunshine Coast News </alternative_title>
<dates_of_publication>1945-1995 </dates_of_publication>
<frequency>Weekly </frequency>
<digital_file_format>image/jpg</digital_file_format>
</mets:xmlData>
</mets:mdWrap>
</mets:dmdSec>
<mets:dmdSec ID="dmdSec_3">
<mets:mdWrap MDTYPE="DC">
<mets:xmlData>
<dcterms:dublincore xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xsi:schemaLocation="http://purl.org/dc/terms/ http://dublincore.org/schemas/xmls/qdc/2008/02/11/dcterms.xsd">
<dc:title>Coast News, January 09, 1964 </dc:title>
<dc:publisher>Fred Cruice </dc:publisher>
<dc:subject>Gibsons (B.C.)–Newspapers </dc:subject>
<dc:date>1964/01/09 </dc:date>
<dc:description>
Scans of the January 9, 1964 issue of the Coast News.
</dc:description>
<dc:language>English </dc:language>
<dc:source>
British Columbia Historical Newspapers collection, https://open.library.ubc.ca/collections/bcnewspapers/xcoastnews
</dc:source>
</dcterms:dublincore>
</mets:xmlData>
</mets:mdWrap>
</mets:dmdSec>
<mets:dmdSec ID="dmdSec_4">
<mets:mdWrap MDTYPE="OTHER" OTHERMDTYPE="CUSTOM">
<mets:xmlData>
<alternative_title>Sunshine Coast News </alternative_title>
<dates_of_publication>1945-1995 </dates_of_publication>
<frequency>Weekly </frequency>
<digital_file_format>image/jpg</digital_file_format>
</mets:xmlData>
</mets:mdWrap>
</mets:dmdSec>
Adding metadata using JSON files¶
It is possible to use a JSON file rather than a CSV to import Dublin Core metadata. The JSON file is added to the metadata directory as above.
Create a transfer directory containing the digital objects you would like to preserve (for more information on creating a basic transfer for Archivematica, see Basic transfers.) As an example, the following directory tree displays a basic transfer called
jsonMetadataTransfer
. One digital object sits within the top-level directory, while another object is nested within a subdirectory.:jsonMetadataTransfer/ ├── audio │ └── bird.mp3 └── beihai.tif
Note that this transfer does not currently contain any metadata.
Create a JSON file called metadata.json. The example below can be used as a template for Dublin Core metadata. The filename field must come first and the filename path must always start with
objects/
. Note that if you add fields that are not in thedc.element
format, Archivematica will not indicate that the metadata is Dublin Core.[ { "filename": "objects/audio/bird.mp3", "dc.title": "14000 Caen, France - Bird in my garden", "dc.creator": "Nicolas Germain", "dc.description": "Bird singing in my garden, Caen, France, Zoom H6", "dc.subject": [ "field recording", "soundscapes", "radio aporee" ], "dc.publisher": "Radio Aporee", "dc.date": "2017-05-27", "dc.identifier": "aporee_36644_41997", "dc.source": "Internet Archive", "dc.coverage": "Caen, France", "dc.rights": "Public domain" }, { "filename": "objects/beihai.tif", "dc.title": "Beihai, Guanxi, China, 1988", "dc.creator": "NASA/GSFC/METI/ERSDAC/JAROS and U.S./Japan ASTER Science Team", "dc.description": "Beihai is a city in the south of Guangxi, People's Republic of China.", "dc.subject": [ "satellite imaging", "photography", "city" ], "dc.publisher": "NASA Jet Propulsion Laboratory", "dc.date": "February 29,2016", "dc.source": "NASA Jet Propulsion Laboratory", "dc.coverage": "Beihai, China", "dc.rights": "Public domain" } ]
Repeating fields can be listed in an array, as with
dc.subject
in the example above.Create a subdirectory called
metadata
and place the metadata.json file inside it.:metadataTransfer/ ├── audio │ └── bird.mp3 ├── beihai.tif └── metadata └── metadata.json
Process the transfer as usual.
The METS file will be populated exactly as in the CSV examples above.
Importing rights metadata with rights.csv¶
Rights information can be associated with objects or directories in a transfer by creating a rights.csv file, similar to the metadata.csv file used for descriptive metadata. Archivematica implements PREMIS metadata in Archivematica, including PREMIS rights, as used here. Rights metadata added using the rights.csv will be transposed to the METS file.
Rights metadata can be applied to individual objects within a transfer, to directories within the transfer, or both.
Create a transfer directory containing the digital objects you would like to preserve. As an example, the following directory tree displays a basic transfer called
rightsTransfer
. One digital object sits within the top-level directory, while another object is nested within a subdirectory.:rightsTransfer/ ├── audio │ └── bird.mp3 └── beihai.tif
Create a file called rights.csv. The example below can be used as a template for PREMIS rights metadata. The filename column must come first and the filename path must always start with
objects/
.file basis status determination_date jurisdiction start_date end_date terms citation note grant_act grant_restriction grant_start_date grant_end_date grant_note doc_id_type doc_id_value doc_id_role objects/beihai.tif copyright copyrighted 2011-01-01 ca 2011-01-01 2013-12-31 Terms of copyright. Citation of copyright. Note about copyright. disseminate Disallow 2011-01-01 2013-12-31 Grant note Copyright documentation identifier type. Copyright documentation identifier value. Copyright documentation identifier role. objects/beihai.tif copyright copyrighted 2011-01-01 ca 2011-01-01 2013-12-31 Terms of copyright. Citation of copyright. Note about copyright. use Disallow 2011-01-01 2013-12-31 Grant note Copyright documentation identifier type. Copyright documentation identifier value. Copyright documentation identifier role. objects/audio/bird.mp3 license 2000-09-09 2010-09-08 Terms of license. Note about license. migrate allow Conditional 2000-09-00 Grant note License documentation identifier type. License documentation identifier value. License documentation identifier role. Note that to enter multiple rights acts for the same basis, you must create two separate rows, as with rows 1 and 2 in the example above.
Create a subdirectory called
metadata
and place the rights.csv file inside it.:rightsTransfer/ ├── audio │ └── bird.mp3 ├── beihai.tif └── metadata └── rights.csv
Process the transfer as usual.
Any PREMIS rights metadata formatted as in the example above will be transposed to
the METS file. The METS file for the above example includes three rights
metadata sections (<mets:rightsMD>
).
<mets:rightsMD ID="rightsMD_1">
<mets:mdWrap MDTYPE="PREMIS:RIGHTS">
<mets:xmlData>
<premis:rightsStatement xmlns:premis="info:lc/xmlns/premis-v2" xsi:schemaLocation="info:lc/xmlns/premis-v2 http://www.loc.gov/standards/premis/v2/premis-v2-2.xsd">
<premis:rightsStatementIdentifier>
<premis:rightsStatementIdentifierType>UUID</premis:rightsStatementIdentifierType>
<premis:rightsStatementIdentifierValue>acfb8ae7-249e-4ff9-a5da-040c8160a856</premis:rightsStatementIdentifierValue>
</premis:rightsStatementIdentifier>
<premis:rightsBasis>License</premis:rightsBasis>
<premis:licenseInformation>
<premis:licenseDocumentationIdentifier>
<premis:licenseDocumentationIdentifierType>License documentation identifier type.</premis:licenseDocumentationIdentifierType>
<premis:licenseDocumentationIdentifierValue>License documentation identifier value.</premis:licenseDocumentationIdentifierValue>
<premis:licenseDocumentationRole>License documentation identifier role.</premis:licenseDocumentationRole>
</premis:licenseDocumentationIdentifier>
<premis:licenseTerms>Terms of license.</premis:licenseTerms>
<premis:licenseNote>migrate</premis:licenseNote>
<premis:licenseApplicableDates>
<premis:startDate>2000-09-09</premis:startDate>
<premis:endDate>2010-09-08</premis:endDate>
</premis:licenseApplicableDates>
</premis:licenseInformation>
<premis:rightsGranted>
<premis:act>allow</premis:act>
<premis:restriction>Conditional</premis:restriction>
<premis:termOfRestriction>
<premis:endDate>2000-09-00</premis:endDate>
</premis:termOfRestriction>
<premis:rightsGrantedNote>Grant note</premis:rightsGrantedNote>
</premis:rightsGranted>
<premis:linkingObjectIdentifier>
<premis:linkingObjectIdentifierType>UUID</premis:linkingObjectIdentifierType>
<premis:linkingObjectIdentifierValue>00367530-3d6f-4b9c-8ce7-13c7662a7a87</premis:linkingObjectIdentifierValue>
</premis:linkingObjectIdentifier>
</premis:rightsStatement>
</mets:xmlData>
</mets:mdWrap>
</mets:rightsMD>
<mets:rightsMD ID="rightsMD_2">
<mets:mdWrap MDTYPE="PREMIS:RIGHTS">
<mets:xmlData>
<premis:rightsStatement xmlns:premis="info:lc/xmlns/premis-v2" xsi:schemaLocation="info:lc/xmlns/premis-v2 http://www.loc.gov/standards/premis/v2/premis-v2-2.xsd">
<premis:rightsStatementIdentifier>
<premis:rightsStatementIdentifierType>UUID</premis:rightsStatementIdentifierType>
<premis:rightsStatementIdentifierValue>4ea7a41b-fbff-414b-aad0-c10aa471c147</premis:rightsStatementIdentifierValue>
</premis:rightsStatementIdentifier>
<premis:rightsBasis>Copyright</premis:rightsBasis>
<premis:copyrightInformation>
<premis:copyrightStatus>copyrighted</premis:copyrightStatus>
<premis:copyrightJurisdiction>ca</premis:copyrightJurisdiction>
<premis:copyrightStatusDeterminationDate>2011-01-01</premis:copyrightStatusDeterminationDate>
<premis:copyrightNote>Note about copyright.</premis:copyrightNote>
<premis:copyrightDocumentationIdentifier>
<premis:copyrightDocumentationIdentifierType>Copyright documentation identifier type.</premis:copyrightDocumentationIdentifierType>
<premis:copyrightDocumentationIdentifierValue>Copyright documentation identifier value.</premis:copyrightDocumentationIdentifierValue>
<premis:copyrightDocumentationRole>Copyright documentation identifier role.</premis:copyrightDocumentationRole>
</premis:copyrightDocumentationIdentifier>
<premis:copyrightApplicableDates>
<premis:startDate>2011-01-01</premis:startDate>
<premis:endDate>2013-12-31</premis:endDate>
</premis:copyrightApplicableDates>
</premis:copyrightInformation>
<premis:rightsGranted>
<premis:act>disseminate</premis:act>
<premis:restriction>Disallow</premis:restriction>
<premis:termOfRestriction>
<premis:startDate>2011-01-01</premis:startDate>
<premis:endDate>2013-12-31</premis:endDate>
</premis:termOfRestriction>
<premis:rightsGrantedNote>Grant note</premis:rightsGrantedNote>
</premis:rightsGranted>
<premis:linkingObjectIdentifier>
<premis:linkingObjectIdentifierType>UUID</premis:linkingObjectIdentifierType>
<premis:linkingObjectIdentifierValue>ef3517aa-8480-4a1f-9b3d-627c25561b12</premis:linkingObjectIdentifierValue>
</premis:linkingObjectIdentifier>
</premis:rightsStatement>
</mets:xmlData>
</mets:mdWrap>
</mets:rightsMD>
<mets:rightsMD ID="rightsMD_3">
<mets:mdWrap MDTYPE="PREMIS:RIGHTS">
<mets:xmlData>
<premis:rightsStatement xmlns:premis="info:lc/xmlns/premis-v2" xsi:schemaLocation="info:lc/xmlns/premis-v2 http://www.loc.gov/standards/premis/v2/premis-v2-2.xsd">
<premis:rightsStatementIdentifier>
<premis:rightsStatementIdentifierType>UUID</premis:rightsStatementIdentifierType>
<premis:rightsStatementIdentifierValue>049f1b41-d547-43a0-9130-087d0d6f9421</premis:rightsStatementIdentifierValue>
</premis:rightsStatementIdentifier>
<premis:rightsBasis>Copyright</premis:rightsBasis>
<premis:copyrightInformation>
<premis:copyrightStatus>copyrighted</premis:copyrightStatus>
<premis:copyrightJurisdiction>ca</premis:copyrightJurisdiction>
<premis:copyrightStatusDeterminationDate>2011-01-01</premis:copyrightStatusDeterminationDate>
<premis:copyrightNote>Note about copyright.</premis:copyrightNote>
<premis:copyrightDocumentationIdentifier>
<premis:copyrightDocumentationIdentifierType>Copyright documentation identifier type.</premis:copyrightDocumentationIdentifierType>
<premis:copyrightDocumentationIdentifierValue>Copyright documentation identifier value.</premis:copyrightDocumentationIdentifierValue>
<premis:copyrightDocumentationRole>Copyright documentation identifier role.</premis:copyrightDocumentationRole>
</premis:copyrightDocumentationIdentifier>
<premis:copyrightApplicableDates>
<premis:startDate>2011-01-01</premis:startDate>
<premis:endDate>2013-12-31</premis:endDate>
</premis:copyrightApplicableDates>
</premis:copyrightInformation>
<premis:rightsGranted>
<premis:act>use</premis:act>
<premis:restriction>Disallow</premis:restriction>
<premis:termOfRestriction>
<premis:startDate>2011-01-01</premis:startDate>
<premis:endDate>2013-12-31</premis:endDate>
</premis:termOfRestriction>
<premis:rightsGrantedNote>Grant note</premis:rightsGrantedNote>
</premis:rightsGranted>
<premis:linkingObjectIdentifier>
<premis:linkingObjectIdentifierType>UUID</premis:linkingObjectIdentifierType>
<premis:linkingObjectIdentifierValue>ef3517aa-8480-4a1f-9b3d-627c25561b12</premis:linkingObjectIdentifierValue>
</premis:linkingObjectIdentifier>
</premis:rightsStatement>
</mets:xmlData>
</mets:mdWrap>
Adding metadata to bags¶
Metadata can also be added to transfers packaged in accordance with the Library of Congress BagIt specification (zipped or unzipped). Special care needs to be taken in order to ensure that Archivematica can recognize the metadata files and process them properly.
Create your metadata files. In this example, we will create a metadata.csv to add descriptive metadata to the individual objects in the bag.
filename dc.title dc.creator dc.subject dc.subject dc.subject dc.description dc.publisher dc.date dc.type dc.format dc.source dc.rights data/beihai.tif Beihai, Guanxi, China, 1988 NASA/GSFC/METI/ERSDAC/ JAROS and U.S./Japan ASTER Science Team China Beihai Beihai is a city in the south of Guangxi, People’s Republic of China. NASA Jet Propulsion Laboratory February 29, 2016 image image.tif NASA Jet Propulsion Laboratory Public domain data/audio/bird.mp3 14000 Caen, France - Bird in my garden Nicolas Germain field recording soundscapes radio aporee Bird singing in my garden, Caen, France, Zoom H6 Radio Aporee 2017-05-27 sound audio/mp3 Internet Archive Public domain Note that the filename path anticipates the structure of the bag that we will create below by including the payload directory (
data
) in the path. If your transfer includes subdirectories, those should be reflected in the path as well.Assemble your transfer materials. In this example, there are two objects, one of which is contained in a subdirectory, as well as the metadata directory containing a metadata.csv file.:
to-be-transferred/ ├── audio │ └── bird.mp3 ├── beihai.tif └── metadata └── metadata.csv
Create a bag containing the material that you would like to preserve as well as the metadata. The digital objects and the metadata directory have been added to the payload directory (
data
).:bagTest/ ├── bag-info.txt ├── bagit.txt ├── data │ ├── audio │ │ └── bird.mp3 │ ├── beihai.tif │ └── metadata │ └── metadata.csv ├── manifest-md5.txt └── tagmanifest-md5.txt
Note that when the metadata.csv was created in step 1, above, this structure had to be anticipated. Material that you add to a bag will always be inside the payload directory, so the filename path must always begin with
data
.The bagging program has also created the required bag files.
Process the transfer using the Unzipped Bag or Zipped Bag transfer type.
The METS file in the resulting AIP will include the metadata in the <dmdSec>
as in the non-bagged examples above.
The above method can be used for metadata.csv files that apply metadata to a directory, for rights.csv files, and for other types of metadata that you wish to preserve.
Note
Submission documentation can also be added to a bag using the above method.
The submissionDocumentation
directory should be nested inside the
metadata directory. See Submission documentation
for more information.
Importing other types of metadata¶
You can include other types of metadata files in the metadata
directory
other than the metadata.csv and rights.csv files. For example, you may want to
preserve the output of a specialized analysis tool alongside the file. You can
place these files in the metadata directory.:
rightsTransfer/
├── video.mp4
└── metadata
├── qctools.xml.gz
└── rights.csv
Archivematica will run various preservation tasks on this file, just as it would
on the metadata.csv or rights.csv. In the METS, the file will be listed in the
file section (<fileSec>
) alongside any other metadata files, under the file
group (fileGrp
) usage heading metadata
.
<mets:fileSec>
<mets:fileGrp USE="metadata">
<mets:file GROUPID="Group-0befdb64-c512-4dd2-98c7-16a5a312daeb" ID="file-0befdb64-c512-4dd2-98c7-16a5a312daeb" ADMID="amdSec_3">
<mets:FLocat xlink:href="objects/metadata/transfers/other-md-5f6bbf43-64b1-4bed-9296-dcf458f6db0d/qctools.xml.qz" LOCTYPE="OTHER" OTHERLOCTYPE="SYSTEM"/>
</mets:file>
<mets:file GROUPID="Group-6852937b-cd7e-4871-ac6e-564e4e14309e" ID="file-6852937b-cd7e-4871-ac6e-564e4e14309e" ADMID="amdSec_4">
<mets:FLocat xlink:href="objects/metadata/transfers/other-md-5f6bbf43-64b1-4bed-9296-dcf458f6db0d/rights.csv" LOCTYPE="OTHER" OTHERLOCTYPE="SYSTEM"/>
</mets:file>
</mets:fileGrp>
</mets:fileSec>
Importing structural metadata with mets_structmap.xml¶
The files transferred to Archivematica may have a coherent hierarchical
or logical structure (e.g. sections of a book or parts of an audio file) that
has already been described in a METS structural map. Users can import these by
including a file called mets_structmap.xml
in their transfer’s
metadata
directory. The files referenced in this structural map should be
included in the transfer’s objects
directory.
Archivematica will merge this structural map into the archival information
package’s METS file by assigning it a unique structural map ID. It will also
update the file pointers (mets:fptr
) to use the UUIDs created by
Archivematica for the files in its archival information packages.
Note that Archivematica requires that CONTENTIDS
attributes in mets:fptr
elements must be used with the objects/
prefix to correctly map files to
IDs.
Example mets_structmap.xml
Using a minimal structural map example for an audio file:
<mets:mets xmlns:mets="http://www.loc.gov/METS/">
<mets:structMap TYPE="logical">
<mets:div TYPE="track" LABEL="Complete documentary">
<mets:div LABEL="Introduction" ORDER="1">
<mets:fptr FILEID="ferdinand_short_2017_01_27.mp3" CONTENTIDS="objects/ferdinand_short_2017_01_27.mp3">
<mets:area FILEID="ferdinand_short_2017_01_27.mp3" CONTENTIDS="objects/ferdinand_short_2017_01_27.mp3" BEGIN="00:00:00" END="00:00:17" BETYPE="TIME"/>
</mets:fptr>
</mets:div>
<mets:div LABEL="Outro" ORDER="2">
<mets:fptr FILEID="ferdinand_short_2017_01_27.mp3" CONTENTIDS="objects/ferdinand_short_2017_01_27.mp3">
<mets:area FILEID="ferdinand_short_2017_01_27.mp3" CONTENTIDS="objects/ferdinand_short_2017_01_27.mp3" BEGIN="00:00:18" END="00:01:13" BETYPE="TIME"/>
</mets:fptr>
</mets:div>
</mets:div>
</mets:structMap>
</mets:mets>
The resulting output in the Archivematica AIP METS file will be:
<mets:structMap TYPE="logical" ID="structMap_2">
<mets:div TYPE="track" LABEL="Complete documentary">
<mets:div LABEL="Introduction" ORDER="1">
<mets:fptr FILEID="file-a47cee9a-7508-4189-aa21-76ab3d02e2a2" CONTENTIDS="objects/ferdinand_short_2017_01_27.mp3">
<mets:area FILEID="file-a47cee9a-7508-4189-aa21-76ab3d02e2a2" CONTENTIDS="objects/ferdinand_short_2017_01_27.mp3" BEGIN="00:00:00" END="00:00:17" BETYPE="TIME"/>
</mets:fptr>
</mets:div>
<mets:div LABEL="Outro" ORDER="2">
<mets:fptr FILEID="file-a47cee9a-7508-4189-aa21-76ab3d02e2a2" CONTENTIDS="objects/ferdinand_short_2017_01_27.mp3">
<mets:area FILEID="file-a47cee9a-7508-4189-aa21-76ab3d02e2a2" CONTENTIDS="objects/ferdinand_short_2017_01_27.mp3" BEGIN="00:00:18" END="00:01:13" BETYPE="TIME"/>
</mets:fptr>
</mets:div>
</mets:div>
</mets:structMap>
Here is another example of a custom METS structural map for a simple book. The
transfer’s objects/
directory contains all of the digital files used to
compile the book (e.g. cover.jpg, inside_cover.jpg, page_01.jpg, etc.) The
transfer’s metadata/
directory contains the following mets_structmap.xml
file to define the structure of the book. Upon import, Archivematica will add a
unique ID to the structMap
element and update all the FILEID
attributes
to match the UUID value for these files in the Archivematica AIP.
<mets:structMap TYPE="logical">
<mets:div TYPE="book" LABEL="How to create a hierarchical book">
<mets:div TYPE="page" LABEL="Cover">
<mets:fptr FILEID="cover.jpg" CONTENTIDS="objects/cover.jpg"/>
</mets:div>
<!-- cover -->
<mets:div TYPE="page" LABEL="Inside cover">
<mets:fptr FILEID="inside_cover.jpg" CONTENTIDS="objects/inside_cover.jpg"/>
</mets:div>
<!-- inside cover -->
<mets:div TYPE="chapter" LABEL="Chapter 1">
<mets:div TYPE="page" LABEL="Page 1">
<mets:fptr FILEID="page_01.jpg" CONTENTIDS="objects/page_01.jpg"/>
</mets:div>
<mets:div TYPE="subchapter" LABEL="Subchapter 1.1">
<mets:div TYPE="page" LABEL="Page 2">
<mets:fptr FILEID="page_02.jpg" CONTENTIDS="objects/page_02.jpg"/>
</mets:div>
<mets:div TYPE="page" LABEL="Page 3">
<mets:fptr FILEID="page_03.jpg" CONTENTIDS="objects/page_03.jpg"/>
</mets:div>
<mets:div TYPE="page" LABEL="Page 4">
<mets:fptr FILEID="page_04.jpg" CONTENTIDS="objects/page_04.jpg"/>
</mets:div>
</mets:div>
<!-- Subchapter 1.1 -->
<mets:div TYPE="subchapter" LABEL="Subchapter 1.2">
<mets:div TYPE="page" LABEL="Page 5">
<mets:fptr FILEID="page_05.jpg" CONTENTIDS="objects/page_05.jpg"/>
</mets:div>
<mets:div TYPE="page" LABEL="Page 6">
<mets:fptr FILEID="page_06.jpg" CONTENTIDS="objects/page_06.jpg"/>
</mets:div>
<mets:div TYPE="page" LABEL="Page 7">
<mets:fptr FILEID="page_07.jpg" CONTENTIDS="objects/page_07.jpg"/>
</mets:div>
</mets:div>
<!-- Subchapter 1.2 -->
</mets:div>
<!-- Chapter 1 -->
<!-- Chapters 2 and 3, each with their own subchapters as in Chapter 1, omitted from this example. -->
<mets:div TYPE="afterword" LABEL="Afterword">
<mets:div TYPE="page" LABEL="Page 20">
<mets:fptr FILEID="page_20.jpg" CONTENTIDS="objects/page_20.jpg"/>
</mets:div>
</mets:div>
<!-- afterword -->
<mets:div TYPE="index" LABEL="Index">
<mets:div TYPE="page" LABEL="Index, page 1">
<mets:fptr FILEID="index_01.jpg" CONTENTIDS="objects/index_01.jpg"/>
</mets:div>
<mets:div TYPE="page" LABEL="Index, page 2">
<mets:fptr FILEID="index_02.jpg" CONTENTIDS="objects/index_02.jpg"/>
</mets:div>
</mets:div>
<!-- index -->
<mets:div TYPE="page" LABEL="Back cover">
<mets:fptr FILEID="back_cover.jpg" CONTENTIDS="objects/back_cover.jpg"/>
</mets:div>
<!-- back cover -->
</mets:div>
<!-- book -->
</mets:structMap>
</mets:mets>
</mets:structMap>
The resulting output in the Archivematica AIP METS file will be:
<mets:structMap TYPE="logical" ID="structMap_2">
<mets:div TYPE="book" LABEL="How to create a hierarchical book">
<mets:div TYPE="page" LABEL="Cover">
<mets:fptr FILEID="file-89dea0eb-663f-4c86-b2e0-4f41a7654fcd" CONTENTIDS="objects/cover.jpg"/>
</mets:div>
<mets:div TYPE="page" LABEL="Inside cover">
<mets:fptr FILEID="file-fd3f32cc-eef2-4d8e-aa1c-a9ad06ac03b4" CONTENTIDS="objects/inside_cover.jpg"/>
</mets:div>
<mets:div TYPE="chapter" LABEL="Chapter 1">
<mets:div TYPE="page" LABEL="Page 1">
<mets:fptr FILEID="file-709ff24e-7594-4bae-b5fe-9be1103805fb" CONTENTIDS="objects/page_01.jpg"/>
</mets:div>
<mets:div TYPE="subchapter" LABEL="Subchapter 1.1">
<mets:div TYPE="page" LABEL="Page 2">
<mets:fptr FILEID="file-12b79f5e-853e-4767-a1f8-221540e2df63" CONTENTIDS="objects/page_02.jpg"/>
</mets:div>
<mets:div TYPE="page" LABEL="Page 3">
<mets:fptr FILEID="file-a2c1ec4b-e165-4c67-94f1-6d63aa78df1a" CONTENTIDS="objects/page_03.jpg"/>
</mets:div>
<mets:div TYPE="page" LABEL="Page 4">
<mets:fptr FILEID="file-cc4474e7-0640-4824-8c30-fd9309b752ca" CONTENTIDS="objects/page_04.jpg"/>
</mets:div>
</mets:div>
<!-- Subchapter 1.1 -->
<mets:div TYPE="subchapter" LABEL="Subchapter 1.2">
<mets:div TYPE="page" LABEL="Page 5">
<mets:fptr FILEID="file-5d19ca92-5f93-46c6-a1bd-65b3c6af8025" CONTENTIDS="objects/page_05.jpg"/>
</mets:div>
<mets:div TYPE="page" LABEL="Page 6">
<mets:fptr FILEID="file-7f760fdd-173c-4158-a673-b8231ae30d1c" CONTENTIDS="objects/page_06.jpg"/>
</mets:div>
<mets:div TYPE="page" LABEL="Page 7">
<mets:fptr FILEID="file-3db99d4e-323a-4d75-be45-74772597d560" CONTENTIDS="objects/page_07.jpg"/>
</mets:div>
</mets:div>
<!-- Subchapter 1.2 -->
</mets:div>
<!-- Chapter 1 -->
<!-- Chapters 2 and 3, each with their own subchapters as in Chapter 1, omitted from this example. -->
<mets:div TYPE="afterword" LABEL="Afterword">
<mets:div TYPE="page" LABEL="Page 20">
<mets:fptr FILEID="file-465bb720-a801-401e-880f-49a1416cb444" CONTENTIDS="objects/page_20.jpg"/>
</mets:div>
</mets:div>
<!-- afterword -->
<mets:div TYPE="index" LABEL="Index">
<mets:div TYPE="page" LABEL="Index, page 1">
<mets:fptr FILEID="file-6a3be87f-a0e1-4d6f-bd39-aef8fe289542" CONTENTIDS="objects/index_01.jpg"/>
</mets:div>
<mets:div TYPE="page" LABEL="Index, page 2">
<mets:fptr FILEID="file-9af8ab15-ff76-4094-8114-0e94d9245093" CONTENTIDS="objects/index_02.jpg"/>
</mets:div>
</mets:div>
<!-- index -->
<mets:div TYPE="page" LABEL="Back cover">
<mets:fptr FILEID="file-335db20c-752f-4a94-a679-4fde4d2777f5" CONTENTIDS="objects/back_cover.jpg"/>
</mets:div>
<!-- back cover -->
</mets:div>
<!-- book -->
</mets:structMap>
Archivematica 1.10.2
Contents
Search
Open the general index or type your search in the search box.
Available projects
Archivematica
- Version 1.16.0 (stable-current)
- Version 1.15.1 (stable-previous)
- Version 1.14.1 (legacy)
- Version 1.13.2 (legacy)
- Version 1.12.2 (legacy)
- Version 1.11.2 (legacy)
- Version 1.10.2 (legacy)
- Version 1.9.3 (legacy)
- Version 1.8.1 (legacy)
- Version 1.7.2 (legacy)
- Version 1.6.1 (legacy)
- Version 1.5 (legacy)
- Version 1.4 (legacy)
Archivematica Storage Service
- Version 0.22.0 (stable-current)
- Version 0.21.1 (stable-previous)
- Version 0.20.1 (legacy)
- Version 0.19.0 (legacy)
- Version 0.18.1 (legacy)
- Version 0.17.1 (legacy)
- Version 0.16.1 (legacy)
- Version 0.15.1 (legacy)
- Version 0.14.1 (legacy)
- Version 0.13.0 (legacy)
- Version 0.12.0 (legacy)
- Version 0.11.1 (legacy)
- Version 0.10 (legacy)
- Version 0.9 (legacy)
- Version 0.8 (legacy)
License
Archivematica documentation by Artefactual Systems Inc. is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.