The METS Editorial Board is currently considering changes to the METS Profile Schema and creation mechanisms. This page is for information on our plans and discussion for the community on their needs surrounding METS Profiles.
January 11, 2010: the METS Editorial Board has made a few additional small changes, including harmonizing the definition of the <context> element between the External Schema and Controlled Vocabularies section, and further refining the model <tests> within Structural Requirements.
Here is the updated Profile and documentation:
- Revised draft 2.0 Profile Schema: mets.profile.v2-0.xsd
- Revised draft 2.0 Profile Documentation
- Revised sample 2.0 Profile instance: Profile2.0Ex1.xml
November 4, 2009: The METS Editorial Board thanks those who commented on the most recent draft Profile Schema. We've made a few changes in response to them, but need just a bit more information from you, the METS community, on the best way to achieve some of Profile user requirements in the Schema. The METS Board is meeting on Friday November 13 following the DLF Fall Forum, at which time we hope to finalize the Profile 2.0 Schema for release. Please send comments to the METS list by Thursday November 12 for consideration.
Here are the changes we've made in this last revision, and the questions we have for the community:
- Added the value ARC to the LOCTYPE attribute, to align the Profile Schema with the METS Schema
- Made a change to allow more than one statement of context to appear for External Schemas. In doing this, we found an inconsistency in the old Schema - <context> in <external_schema> was defined as a string (making it hard to provide more than one context), but <context> in <controlled_vocabularies> was defined as a data type that brings in some xhtml elements, making it more documentation-like. The draft Profile Schema below moves <context> in <external_schema> to the more documentation-like model used in <controlled_vocabularies>, but we could also change both to be a string and make <context> repeatable. Do implementers have a preference?
- Enhanced the new <tests> area within <structural_requirements> to allow for a wider variety of machine-readable test expressions. Formerly, this element allowed only a string (e.g., no child XML elements). The new version contains three options for presenting this data: <testString> (for an XPath expression or other simple string), <testXML> (for embedding full Schematron or other XML languages expressing test criteria), and <testBin> (for embedding binary data such as code in a scripting language). The latter two elements are modeled on the <xmlData> and <binData> elements in METS <mdWrap>. Do implementers believe this system is robust enough for their needs?
September 24, 2009: The METS Editorial Board extends a heartfelt thank you to those who commented on the earlier draft of the METS Profile 2.0 Schema and documentation. We have several changes to the draft Schema in response to these comments, and would welcome additional feedback. Please post comments to the METS listserv by Friday, October 2, 2009.
- Revised draft 2.0 Profile Schema: mets.profile.v2-0.Sept09.xsd
- Revised draft 2.0 Profile Documentation
- Revised sample 2.0 Profile instance: Profile2.0Ex1.Sept09.xml
Primary changes from the current Profile Schema include:
- Changing terminology from "extension schema" to "external schema" in keeping with a parallel change to METS documentation.
- Allow for no content as a means of indicating when the Profile makes no statement about the usage of an area in the Profile.
- Add the ability to state requirements in machine-readable ways.
- Add a Document Model section. This section will be made up of simple text describing what the objects are that the Profile deals with, and could include information such as whether the profile is intended for an OAIS SIP, AIP, or DIP).
- {file: 00000013.xml}Add a Use Cases section. This section would either link to descriptions already posted online by the Profile creator, or embed within the Profile documentation such as a diagram of a business process that uses a METS document conforming to the profile. It would primarily be used to describe different requirements for METS documents at different points in their project lifecycle with a single profile, connecting a processing action with a specific feature of a METS document.
- Allow some XHTML markup inside elements of the Profile intended for textual documentation.
- Allow the expression of requirements for a profile in multiple languages.
- Add the ability to attach XML snippets as examples to requirements specified in the Profile.
- Add the ability to express** levels (should, must, may, etc. from RFC 2119) on requirements.
- Make separate elements for a URI supplied by the creating institution vs. the one supplied for registered profiles by LC
As background for this work, here you can find the original METS Profile revision proposal that the current draft schema is in response to: profileRevisionProposal.doc .
