Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

View file
name6t0gt8cw96_mets.xml
View file
namef47gq96g1g.xml

Structure

Record Types in StructMap

The attribute TYPE in mets:div must refer to a valid record type. These types are configurable and additional ones can be configured.

For the newspaper ingest the following record types are applicable:

  • Newspaper

  • NewspaperPage

  • Media

  • Representation

  • Sip

For DigiHaven the following records types are available (non exhaustive list)

  • Dossier

  • Document

  • Representation

StructMap

...

titleStructMap

...

languagexml

...

Validation

METS XML forms a skeleton structure with additional embedded metadata from other standards. As such the validation of the METS XML using XSD requires several XSD files. In particular, the XSD validation of the METS inside the SIP requires the following 3 XSDs

Structure

Record Types in StructMap

The attribute TYPE in mets:div must refer to a valid record type. These types are configurable and additional ones can be configured.

For the newspaper ingest the following record types are applicable:

  • Newspaper

  • NewspaperPage

  • Media

  • Representation

  • Sip

For DigiHaven the following records types are available (non exhaustive list)

  • Dossier

  • Document

  • Representation

StructMap

Expand
titleStructMap
Code Block
languagexml
<!-- Describes the entire record tree: Newspaper > NewspaperPage > Digital Representations -->
<mets:structMap>
  <mets:div TYPE="Newspaper" DMDID="DMDID-NEWSPAPER" AMDID="PREMISID-171 PREMISID-172">
    <!-- Page 1 -->
    <mets:div TYPE="NewspaperPage" DMDID="DMDID-NEWSPAPER-PAGE1">
      <!-- Tiff -->
      <mets:div TYPE="Media" DMDID="DMDID-NEWSPAPER-PAGE1-TIFF">
        <mets:div TYPE="Representation" LABEL="Original" DMDID="DMDID-NEWSPAPER-PAGE1-TIFF-ORIGINAL">
          <mets:fptr FILEID="FILEID-NEWSPAPER-PAGE1-TIFF-ORIGINAL" />
        </mets:div>
      </mets:div>
      
      <!-- JP2 -->
      <mets:div TYPE="Media" DMDID="DMDID-NEWSPAPER-PAGE1-TIFF">
        <mets:div TYPE="Representation" LABEL="Original" DMDID="DMDID-NEWSPAPER-PAGE1-JP2-ORIGINAL">
          <mets:fptr FILEID="FILEID-NEWSPAPER-PAGE1-JP2-ORIGINAL" />
        </mets:div>
      </mets:div>
    </mets:div>
    
    <!-- Page 2 -->
    <mets:div TYPE="NewspaperPage" DMDID="DMDID-NEWSPAPER-PAGE2">
      <!-- Tiff... -->
      <!-- JP2... -->
    </mets:div>
   
    <!-- ALTO -->   
    <mets:div TYPE="Media" DMDID="DMDID-NEWSPAPER-ALTO">
      <mets:div TYPE="Representation" LABEL="Original" DMDID="DMDID-NEWSPAPER-ALTO-ORIGINAL">
        <mets:fptr FILEID="FILEID-NEWSPAPER-ALTO-ORIGINAL" />
      </mets:div>
    </mets:div> 
    
    <!-- PDF -->   
    <mets:div TYPE="Media" DMDID="DMDID-NEWSPAPER-PDF">
      <mets:div TYPE="Representation" LABEL="Original" DMDID="DMDID-NEWSPAPER-PDF-ORIGINAL">
        <mets:fptr FILEID="FILEID-NEWSPAPER-PDF-ORIGINAL" />
      </mets:div>
    </mets:div> 
    
  </mets:div>
</mets:structMap>

...

Expand
titleEvents
Code Block
<mets:amdSec ID="ADMID-Newspaper">
      <mets:digiprovMD ID="PREMISID-171">
         <mets:mdWrap MDTYPE="PREMIS:EVENT">
            <mets:xmlData>
               <premis:event>
                  <premis:eventIdentifier>
                     <premis:eventIdentifierType>MEDIAHAVEN_EVENT</premis:eventIdentifierType>
                     <premis:eventIdentifierValue>171</premis:eventIdentifierValue>
                  </premis:eventIdentifier>
                  <premis:eventType>RECORDS.CREATE</premis:eventType>
                  <premis:eventDateTime>2021-09-27T10:40:11.495Z</premis:eventDateTime>
                  <premis:eventDetail/>
                  <premis:eventOutcomeInformation>
                     <premis:eventOutcome>OK</premis:eventOutcome>
                  </premis:eventOutcomeInformation>
                  <premis:linkingAgentIdentifier>
                     <premis:linkingAgentIdentifierType>MEDIAHAVEN_USER</premis:linkingAgentIdentifierType>
                     <premis:linkingAgentIdentifierValue>informatiebeheerder-edp@hfb</premis:linkingAgentIdentifierValue>
                  </premis:linkingAgentIdentifier>
                  <premis:linkingObjectIdentifier>
                     <premis:linkingObjectIdentifierType>MEDIAHAVEN_ID</premis:linkingObjectIdentifierType>
                     <premis:linkingObjectIdentifierValue>74aefb862f2b459993ae81a617eb572e5110964a965842a7aa25005bfd3616e2ed3353b2db00455ab5f6d14f872acd72</premis:linkingObjectIdentifierValue>
                  </premis:linkingObjectIdentifier>
               </premis:event>
            </mets:xmlData>
         </mets:mdWrap>
      </mets:digiprovMD>
      <mets:digiprovMD ID="PREMISID-172">
         <mets:mdWrap MDTYPE="PREMIS:EVENT">
            <mets:xmlData>
               <premis:event>
                  <premis:eventIdentifier>
                     <premis:eventIdentifierType>MEDIAHAVEN_EVENT</premis:eventIdentifierType>
                     <premis:eventIdentifierValue>172</premis:eventIdentifierValue>
                  </premis:eventIdentifier>
                  <premis:eventType>RECORDS.UPDATE.PUBLISH</premis:eventType>
                  <premis:eventDateTime>2021-09-27T10:40:11.495Z</premis:eventDateTime>
                  <premis:eventDetail/>
                  <premis:eventOutcomeInformation>
                     <premis:eventOutcome>OK</premis:eventOutcome>
                  </premis:eventOutcomeInformation>
                  <premis:linkingAgentIdentifier>
                     <premis:linkingAgentIdentifierType>MEDIAHAVEN_USER</premis:linkingAgentIdentifierType>
                     <premis:linkingAgentIdentifierValue>informatiebeheerder-edp@hfb</premis:linkingAgentIdentifierValue>
                  </premis:linkingAgentIdentifier>
                  <premis:linkingObjectIdentifier>
                     <premis:linkingObjectIdentifierType>MEDIAHAVEN_ID</premis:linkingObjectIdentifierType>
                     <premis:linkingObjectIdentifierValue>74aefb862f2b459993ae81a617eb572e5110964a965842a7aa25005bfd3616e2ed3353b2db00455ab5f6d14f872acd72</premis:linkingObjectIdentifierValue>
                  </premis:linkingObjectIdentifier>
                <premis:linkingObjectIdentifierValue>74aefb862f2b459993ae81a617eb572e5110964a965842a7aa25005bfd3616e2ed3353b2db00455ab5f6d14f872acd72<</premis:linkingObjectIdentifierValue>
     event>
            </premismets:linkingObjectIdentifier>xmlData>
         </mets:mdWrap>
      </premis:event>mets:digiprovMD>
      <!-- ... more events -->
     </mets:xmlData>
         </mets:mdWrap>
      </mets:digiprovMD>
      <!-- ... more events -->
   </mets:amdSec>

Storage Location

By using the attribute “USE” on the element mets:file inside the mets:fileSec you can control whether or not to

...

USE="Tape" Store the object on tapes

...

</mets:amdSec>

Storage Location

By using the attribute “USE” on the element mets:file inside the mets:fileSec you can control whether or not to

  • USE="Tape" Store the object on tapes

  • USE="Disk" Store the object on disk(s)

Common mistakes

Tip

The value of the attribute ID must be a valid XML tag name which has the following rules:

  • Must be unique within the METS xml

  • Must start with a letter or underscore

  • Cannot start with the letters xml (or XML, or Xml, etc)

  • Can contain letters, digits, hyphens, underscores, and periods

  • Cannot contain spaces

Tip

Because the value of the attribute xlink:href must be a valid URI, you will have to URI encode its value if the path to the file contains illegal URI symbols such as ? % etc.