METS: Metadata Encoding and Transmission Standard. METS is intended to provide a standardized XML format for transmission of complex digital library objects between systems. As such, it can be seen as filling a role similar to that defined for the Submission Information Package (SIP), Archival Information Package (AIP) and Dissemination Information Package (DIP) in the Reference Model for an Open Archival Information System. mets Complex Type. A METS document consists of five possible subsidiary sections: metsHdr (METS document header), dmdSec (descriptive metadata section), amdSec (administrative metadata section), fileGrp (file inventory group), and structMap (structural map). It also has five possible attributes: 1. ID (an XML ID); 2. OBJID: a primary identifier assigned to the original source document; 3. LABEL: a title/text string identifying the document for users; 4. TYPE: a type for the object, e.g., book, journal, stereograph, etc.; 5. PROFILE: the registered profile to which this METS document conforms. METS registry information is available from the Library of Congress at http://www.loc.gov/mets. metsHdr: METS Header. Like a TEI Header, the METS Header element records metadata about the METS document itself (not the digital library object that the METS document encodes). It has two possible subsidiary elements, agent (document agent) and altRecordID. (alternative Record ID). It also has the following four attributes: 1. ID (an XML ID); 2. CREATEDATE: the date/time the METS document was created; 3. LASTMODDATE: the date/time the METS document was last modified; 4. RECORDSTATUS: a string indicating the status of the METS document, to be used mainly for internal processing purposes. agent: METS agent. The agent element allows for various parties and their roles with respect to the METS document to be recorded. It has three attributes: 1. ID (an XML ID); 2. ROLE: one of 5 set roles with respect to the document, CREATOR, EDITOR, ARCHIVIST, PRESERVATION, and DISSEMINATOR; and 3. TYPE: either INDIVIDUAL agent or ORGANIZATION. altRecordID: Alternative Record ID. This element allows for documentation of alternative ID values for the METS document in addition to the primary ID stored in the OBJID attribute in the root METS element. It has two attributes: 1. ID: an XML ID, and 2. TYPE: a description of the identifier type (e.g., OCLC #, LCCN, etc.). dmdSec: Description Metadata Section. This section records all of the descriptive metadata for all items in the METS object (including both structural map divs and descriptive metadata for data files). Metadata can be either included in the METS hub document (mdWrap) or referenced via an identifier/locator (mdRef), a la Warwick Framework. Multiple dmdSec elements are allowed so that descriptive metadata can be recorded for each separate item within the METS object. amdSec: Administrative Metadata Section. This section records all of the administrative metadata for all items in the METS object (including both structural map divs and data files), and is divided into four subsections: techMD (technical metadata), rightsMD (intellectual property rights metadata), sourceMD (analog/digital source metadata), and digiprovMD (digital provenance metadata). Each of these subsections follows the mdSecType model, so that they can either include metadata within the METS hub document (mdWrap) or reference it via an identifier/locator (mdRef). Multiple techMD, rightsMD, sourceMD and digiprovMD elements are allowed so that administrative metadata can be recorded for each separate item within the METS object. fileSec: Content File Section. The content file section records information regarding all of the data files which comprise the digital library object. It has a single attribute, ID. structMap: Structural Map. The structural map is the heart of a METS document, defining the hierarchical arrangement of a primary source document which has been digitized. This hierarchy is encoded as a tree of 'div' elements. Any given 'div' can point to another METS document via the 'mptr' element, or to a single file, to a group of files, or to segments of individual files or groups of files through the 'fptr' and subsidiary elements. behaviorSec: Behavior Section. This section records executable behaviors that are associated with content in the METS object. amdSecType: Complex Type for Administrative Metadata. The administrative metadata section consists of four possible subsidiary sections: techMD (technical metadata for text/image/audio/video files), rightsMD (intellectual property rights metadata), sourceMD (analog/digital source metadata), and digiprovMD (digital provenance metadata, that is, the history of migrations/translations performed on a digital library object from it's original digital capture/encoding). amdSecType has a single attribute, ID (XML ID). techMD: technical metadata. The techMD element provides a wrapper around a generic metadata section, which should contain technical metadata regarding a file or files. It has a single attribute, ID, which file/fileGrp elements can use to reference the technical metadata that applies to them. rightsMD: intellectual property rights metadata. The rightsMD element provides a wrapper around a generic metadata section, which should contain IP rights metadata. It has a single attribute, ID, which file/fileGrp/div elements can use to reference IP Rights metadata that applies to them. sourceMD: source metadata. The sourceMD element provides a wrapper around a generic metadata section which should contain information regarding the original source. It has a single attribute, ID, which file/fileGrp elements can use to reference the source metadata which applies to them. digiprovMD: digital provenance metadata. The digiprovMD element provides a wrapper around a generic metadata section, which should contain information regarding the ultimate origin of a digital object and the derivation of its current elements. This includes recording master/derivative relationships between various files which currently represent the object, as well recording any transformations or migrations undergone by files composing the digital object subsequent to the initial digitization of an item or, in the case of born digital materials, the files' creation. In short, digiprovMD should be used to record information to allow both archival/library staff and scholars to understand what modifications have been performed to a digital object during its life cycle in order to judge how those processes might have altered or corrupted the object's ability to accurately represent the original item. fileGrp: File Group. The file group is used to cluster all of the digital files composing a digital library object in a hierarchical arrangement (fileGrp is recursively defined to enable the creation of the hierarchy). Any file group may contain zero or more file elements. File elements in turn can contain a FLocat element (a pointer to a file containing content for this object) and/or a FContent element (the contents of the file Base64 encoded). a fileGrp element may have the following attributes: 1. ID: an XML ID for the element 2. VERSDATE: date this version/fileGrp of the digital object was created. 3. ADMID: IDREFs to administrative metadata sections in the METS document that correspond with all files in this file group. file: File element. The file element provides access to content files for a METS document. A file element may contain an FLocat element, which provides a pointer to a content file, and/or an FContent element, which wraps an encoded version of the file. It has the following attributes: 1. ID: an XML ID for the element; 2. MIMETYPE: the MIME type for the file; 3. SEQ: an integer indicating the sequence of this file relative to the others in its file group; 4. SIZE: the size of the file in bytes; 5. CREATED: the date of creation for the file; 6. CHECKSUM: an MD5 digest value for the included file. 7. OWNERID: a primary identifier assigned to the file by its owner; 8. ADMID: IDREFS to administrative metadata sections in the METS document that correspond with this file; and 9. GROUPID: an identifier that establishes a correspondence between this file and files in other file groups. Typically, this will be used to associate a master file in one file group with derivative files in other file groups. FLocat: File Location. The FLocat element provides a pointer to the location of a content file. It uses the XLink syntax to provide linking information indicating the actual location of the content file, along with a few additional attributes specifying additional linking information. The full attribute set for the FLocat element is as follows: 1. ID (an XML ID); 2. LOCTYPE: the type of locator contained in the FLocat element; and 3. OTHERLOCTYPE: a string to indicate an alternative LOCTYPE if the LOCTYPE attribute itself has a value of "OTHER"; 4. xlink:href: see XLink standard (http://www.w3.org/TR/xlink) 5. xlink:role: "" 6. xlink:arcrole: "" 7. xlink:title: "" 8. xlink:show: "" 9. xlink:actuate: "" NOTE: FLocat is an empty element. The location of the resource pointed to MUST be stored in the xlink:href element. FContent: file content. The FContent element is used to deliver a content file for a METS document within the METS file itself. The content file must be Base 64 encoded, and contained within the FContent wrapper element. The FContent element has the following attribute: 1. ID (an XML ID) structMap Complex Type The structural map (structMap) outlines a hierarchical structure for the original object being encoded, using a series of nested div elements. The structMap element has the following attributes: 1. ID: an XML ID for the element; 2. TYPE: the type of structural map provided. Typical values will be "PHYSICAL" for a map which describes the physical composition of the original work (a series with individual monographs with pages) and "LOGICAL" for one which describes the intellectual structure of the work (a monograph with TOC, forward, chapters, index., etc.); 3. LABEL: a string to describe the structMap to users. This is primarily useful where more than one subject is provided for a single object (e.g., both logical and physical structMap). div: Division. The METS standard represents a document structurally as a series of nested div elements, that is, as a hierarchy (e.g., a book, which is composed of chapters, which is composed of subchapters, which is composed of text). Every div node in the structural map hierarchy may be connected (via subsidiary mptr or fptr elements) to content files which represent that div's portion of the whole document. Div Complex Type The METS standard represents a document structurally as a series of nested div elements, that is, as a hierarchy (e.g., a book, which is composed of chapters, which is composed of subchapters, which is composed of text). Every div node in the structural map hierarchy may be connected (via subsidiary mptr or fptr elements) to content files which represent that div's portion of the whole document. The div element has the following attributes: 1. ID (an XML ID); 2. ORDER: an integer representation of this div's order among its siblings (e.g., its sequence); 3. ORDERLABEL: a string representation of this div's order among its siblings (e.g., "xii"), or a non-integer native numbering system. It is presumed that this value will still be machine-actionable (e.g., supports a page 'go to' function), and is not a replacement/ substitute for the LABEL attribute. 4. LABEL: a string label to describe this div to an end user viewing the document, as per a table of contents entry (NB: a div LABEL should be specific to its level in the structural map. In the case of a book with chapters, the book div LABEL should have the book title, and the chapter div LABELS should have the individual chapter titles, rather than having the chapter div LABELs combine both book title and chapter title). NB: to clarify the differences between ORDER, ORDERLABEL, and LABEL, imagine a text with 10 roman numbered pages followed by 10 arabic numbered pages. Page iii would have an ORDER of "3", an ORDERLABEL of "iii" and a LABEL of "Page iii", while page 3 would have an ORDER of "13", an ORDERLABEL of "3" and a LABEL of "Page 3". 5. DMDID: a set of IDREFs to descriptive metadata sections within this METS document applicable to this div. 6. ADMID: a set of IDREFS to administrative metadata sections within this METS document applicable to this div. 7. TYPE: a type of division (e.g., chapter, article, page, etc.). mptr: METS Pointer. The mptr element allows a div to be associated with a separate METS document containing the content corresponding with that div, rather than pointing to an internal file or file group. A typical instance of this would be the case of a METS document for a journal run, with a div elements for each individual journal issue. The div elements for the issues might point to separate METS documents for each issue, rather than having files and file groups for every issue encoded in one document. The mptr element may have the following attributes: 1. ID: an XML ID for this element; 2. LOCTYPE: the type of locator contained in the FLocat element; and 3. OTHERLOCTYPE: a string to indicate an alternative LOCTYPE if the LOCTYPE attribute itself has a value of "OTHER." 4. xlink:href: see XLink standard (http://www.w3.org/TR/xlink) 5. xlink:role: "" 6. xlink:arcrole: "" 7. xlink:title: "" 8. xlink:show: "" 9. xlink:actuate: "" NOTE: mptr is an empty element. The location of the resource pointed to MUST be stored in the xlink:href element. fptr: File Pointer. The fptr element associates a div element with content files that represent that div. It can either point to a file directly itself, via the FILEID attribute, or it can do more complex links to content via the subsidiary area, par and seq elements. The fptr element can have the following attributes: 1. ID: an XML ID for this element; and 2. FILEID: an IDREF to a file element which corresponds with the div containing this ftpr. par: Parallel files. The par element should used to link a div to a set of content files when those files should be played/displayed in unison to deliver the content to the user. Individual area subelements within the par element provide the links to the files or portions thereof. Par has the following attributes: 1. ID: an XML ID for this element. seq: Sequence of files. The seq element should be used to link a div to a set of content files when those files should be played/displayed sequentially to deliver content to a user. Individual area subelements within the seq element provide the links to the files or portions thereof. Seq has the following attributes: 1. ID: an XML ID for this element. The area element provides for more sophisticated linking between a div element and content files representing that div, be they text, image, audio, or video files. An area element can link a div to a point within a file, to a one-dimension segment of a file (e.g., text screen, image line, audio/video clip), or a two-dimensional section of a file (e.g, subsection of an image, or a subsection of the video display of a video file. See the areaType documentation for more details. areaType: Complex Type for Area linking. The area element provides for more sophisticated linking between a div element and content files representing that div, be they text, image, audio, or video files. An area element can link a div to a point within a file, to a one-dimension segment of a file (e.g., text segment, image line, audio/video clip), or a two-dimensional section of a file (e.g, subsection of an image, or a subsection of the video display of a video file. The area element has no content, and the following attributes: 1. ID: an XML ID; 2. FILEID: an IDREF to the file element being pointed to by the div; 3. SHAPE: a text string defining the shape of a two-dimensional area being referenced in a link file; 4. COORDS: a text string representing a set of visual coordinates within an image (still image or video frame). The COORDS and SHAPE attributes should be used as in HTML 4; 5. BEGIN: a beginning location in a referenced file; 6. END: an ending location in a referenced file; 7. BETYPE: the syntax used in specifying the BEGIN and END attributes (byte offset, IDREF value, SMPTE time code, SMIL time value, MIDI time code, a simple time code of the form HH:MM:SS, or a TCF time code); 8. EXTENT: the duration of the segment; and 9. EXTTYPE: the syntax used in specifying the extent (byte length or SMPTE time value); 10. ADMID: IDREFs for administrative metadata regarding this area. behaviorSecType: Complex Type for Behaviors. A behavior section can be used to associate executable behaviors with content in the METS object. A behavior section has an interface definition element that represents an abstract definition of the set of behaviors represented by a particular behavior section. A behavior section also has an behavior mechanism which is a module of executable code that implements and runs the behaviors defined abstractly by the interface definition. An behavior section may have the following attributes: 1. ID: an XML ID for the element 2. STRUCTID: IDREFS to structMap sections or divs within a structMap in the METS document. The content that the STRUCTID attribute points to is considered "input" to the behavior mechanism (executable) defined for the behaviorSec. 3. BTYPE: a behavior type identifier for a given set of related behaviors. 4. CREATED: date this behavior section of the METS object was created. 5. LABEL: a description of the type of behaviors this section represents. 6. GROUPID: an identifier that establishes a correspondence between this behavior section and behavior sections. Typically, this will be used to facilitate versioning of behavior sections. interfaceDef: interface definition object. The interface definition element contains a pointer an abstract definition of a set of related behaviors. These abstract behaviors can be associated with the content of a METS object. The interface definition element will be a pointer to another object (an interface definition object). An interface definition object could be another METS object, or some other entity (e.g., a WSDL file). Ideally, an interface definition object should contain metadata that describes a set of behaviors or methods. It may also contain files that describe the intended usage of the behaviors, and possibly files that represent different expressions of the interface definition. The interfaceDef element is optional to allow for cases where an interface definition can be obtained from a behavior mechanism object (see the mechanism element of the behaviorSec). mechanism: executable mechanism. A mechanism element contains a pointer to an executable code module that implements a set of behaviors defined by an interface definition. The mechanism element will be a pointer to another object (a mechanism object). A mechanism object could be another METS object, or some other entity (e.g., a WSDL file). A mechanism object should contain executable code, pointers to executable code, or specifications for binding to network services (e.g., web services). objectType: An element of type objectType may have the following attributes: 1. ID: an XML ID for the element 2. LABEL: a description of the object that is being linked to. 3. LOCTYPE: the type of locator contained in the FLocat element; and 4. OTHERLOCTYPE: a string to indicate an alternative LOCTYPE if the LOCTYPE attribute itself has a value of "OTHER." 5. xlink:href: see XLink standard (http://www.w3.org/TR/xlink) 6. xlink:role: "" 7. xlink:arcrole: "" 8. xlink:title: "" 9. xlink:show: "" 10. xlink:actuate: "" NOTE: objectType is an empty element. The location of the resource pointed to MUST be stored in the xlink:href element. mdSec (metadata section) Complex Type A generic framework for pointing to/including metadata within a METS document, a la Warwick Framework. An mdSec element may have the following attributes: 1. ID: an XML ID for this element. mdRef: metadata reference. The mdRef element is a generic element used throughout the METS schema to provide a pointer to metadata which resides outside the METS document. It has the following attributes: 1. ID: an XML ID; 2. LOCTYPE: the type of locator contained in the body of the element; 3. OTHERLOCTYPE: a string indicating an alternative LOCTYPE when the LOCTYPE attribute value is set to "OTHER."; 4. xlink:href: see XLink standard (http://www.w3.org/TR/xlink) 5. xlink:role: "" 6. xlink:arcrole: "" 7. xlink:title: "" 8. xlink:show: "" 9. xlink:actuate: "" 10. MIMETYPE: the MIME type for the metadata being pointed at; 11. MDType: the type of metadata being pointed at (e.g., MARC, EAD, etc.); 12. OTHERMDTYPE: a string indicating an alternative MDTYPE when the MDTYPE attribute value is set to "OTHER."; 13. LABEL: a label to display to the viewer of the METS document identifying the metadata; and 14. XPTR: an xptr to a location within the file pointed to by the mdRef element, if applicable. NB: mdRef is an empty element. The location of the metadata must be recorded in the xlink:href attribute, supplemented by the XPTR attribute as needed. mdWrap: metadata wrapper. The mdWrap element is a generic element used throughout the METS schema to allow the encoder to place arbitrary metadata conforming to other standards/schema within a METS document. The included metadata can either be encoded in XML, in which case it may be placed directly within the mdWrap element, or it can be Base64 encoded, and placed within a subsidiary binData element. The mdWrap element can have the following attributes: 1. ID: an XML ID for this element; 2. MIMETYPE: the MIME type for the metadata contained in the element; 3. MDType: the type of metadata contained (e.g., MARC, EAD, etc.); 4. OTHERMDTYPE: a string indicating an alternative MDTYPE when the MDTYPE attribute value is set to "OTHER."; 5. LABEL: a label to display to the viewer of the METS document identifying the metadata. A wrapper to contain Base64 encoded metadata.