<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE MetadataSet [

  <!-- The outer tag of any metadata set. Contains some number of elements.             -->
  <!-- @param contact     A contact address for the creator.                            -->
  <!-- @param creator     The name of the entity resposibly for this set.               -->
  <!-- @param family      The name of this sets family.                                 -->
  <!-- @param lastchanged The full date, user name and machine name of the last editor. --> 
  <!--   uses the form:                                                                 -->
  <!--   Day Mon(th) dd hh:mm:ss yyyy '-' <username> on <machine>                       -->
  <!-- @param namespace   The namespace of this metadata set.                           -->
  <!ELEMENT MetadataSet ((Name|Description|SetLanguage|Element)+)>
  <!ATTLIST MetadataSet
	    contact            CDATA #REQUIRED
	    creator            CDATA #REQUIRED
	    description        CDATA #REQUIRED
            family             CDATA #REQUIRED
	    lastchanged        CDATA #REQUIRED
            name               CDATA #REQUIRED
	    namespace          CDATA #REQUIRED
	    language_dependent CDATA "">

  <!-- The name of a metadata set. Is language specific. -->
  <!ELEMENT Name (#PCDATA)>
  <!ATTLIST Name
            language CDATA "en">

  <!-- The description of a metadata set. Is language specific. -->
  <!ELEMENT Description (#PCDATA)>
  <!ATTLIST Description
            language CDATA "en">

  <!-- When used in conjuction with defer-node-expansion, allows for better memory use when dealing with several or more languages. -->
  <!ELEMENT SetLanguage (Name, Description?)>
  <!ATTLIST Language
	    code CDATA #REQUIRED>

  <!-- An element in the metadata set. -->
  <!-- Note that the name attribute isn't really Dublin Core compliant - it was just the first thing I came up with. -->
  <!ELEMENT Element (Attribute*,Language*,OptionList?)>
  <!ATTLIST Element
            name       CDATA #REQUIRED
	    occurances CDATA "0">

  <!-- Each element has several attribute children. -->	
  <!-- Given that name was already used for an Element, I decided to use identifier for the language specific 'name', which I've been told isn't really compliant with Dublin Core. -->
  <!ELEMENT Attribute (#PCDATA)>
  <!ATTLIST Attribute
            name CDATA "">

  <!-- When used in conjuction with defer-node-expansion, allows for better memory use when dealing with several or more languages. -->
  <!ELEMENT Language (Attribute*)>
  <!ATTLIST Language
	    code CDATA #REQUIRED>

  <!-- For listing predefined values for this element. -->
  <!ELEMENT OptionList (Value+)>
  <!ATTLIST OptionList
            restricted (true|false) "false">
]>

<MetadataSet 
contact     = "marsull@uflib.ufl.edu"
creator     = "University of Florida Digital Library"
family      = "oral"
lastchanged = "Wed Aug 17 10:35:30 2005"
namespace   = "oral" 
>

  <SetLanguage code="en">
    <Name language="en">University of Flordia Digital Library INTERNAL USE ONLY!!</Name>
    <Description language="en">These fields are used internally by Greenstone to allow proper searches from UFDC.  These fields should NOT be filled in manually. </Description>
  </SetLanguage>

  <Element name="Author" remember_values="false" occurances="0">
      <Attribute name="identifier" language="en">Author</Attribute>
      <Attribute name="definition" language="en">All searchable author fields.</Attribute>
      <Attribute name="comment" language="en">Includes data taken from ufdc.Contributor, ufdc.Creator, and ex.Author.</Attribute>
  </Element>
  
  <Element name="Citation" remember_values="true" occurances="0">
      <Attribute name="identifier" language="en">Full Citation</Attribute>
      <Attribute name="definition" language="en">All searchable fields</Attribute>
      <Attribute name="comment" language="en">Includes just about every field</Attribute>
  </Element>

  <Element name="Collection" remember_values="false" occurances="0">
      <Attribute name="identifier" language="en">Collection</Attribute>
      <Attribute name="definition" language="en">Base name of the primary collection for this item.</Attribute>
      <Attribute name="comment" language="en">This should be lower case and point to the base collection code.</Attribute>
  </Element>
  
  <Element name="Contributor" remember_values="false" occurances="0">
      <Attribute name="identifier" language="en">Contributor</Attribute>
      <Attribute name="definition" language="en">Display field shows just the contributors name.</Attribute>
      <Attribute name="comment" language="en">This does not include any of the additional data, and should be used for display only.</Attribute>
  </Element>

  <Element name="Creator" remember_values="false" occurances="0">
      <Attribute name="identifier" language="en">Creator</Attribute>
      <Attribute name="definition" language="en">Display field shows just the contributors name.</Attribute>
      <Attribute name="comment" language="en">This does not include any of the additional data, and should be used for display only.</Attribute>
  </Element>

  <Element name="SortTitle" remember_values="true" occurances="0">
      <Attribute name="identifier" language="en">SortTitle</Attribute>
      <Attribute name="definition" language="en">Main title for sorting purposes</Attribute>
      <Attribute name="comment" language="en">Removes all punctuation and leading articles.</Attribute>
  </Element>

  <Element name="SortDate" remember_values="true" occurances="0">
      <Attribute name="identifier" language="en">SortDate</Attribute>
      <Attribute name="definition" language="en">Date just used for sorting purposes</Attribute>
      <Attribute name="comment" language="en">Number of days since Jan 1st, year of zero.</Attribute>
  </Element>

  <Element name="Thumbnail" remember_values="true" occurances="0">
      <Attribute name="identifier" language="en">Thumbnail</Attribute>
      <Attribute name="definition" language="en">Thumbnail for this resource item.</Attribute>
      <Attribute name="comment" language="en">Location of the thumbnail for this resource</Attribute>
  </Element>

  <Element name="ThumbLow" remember_values="true" occurances="0">
      <Attribute name="identifier" language="en">ThumbLow</Attribute>
      <Attribute name="definition" language="en">Thumbnail for this resource item, for low-bandwidth connections.</Attribute>
      <Attribute name="comment" language="en">Location of the low-bandwidth thumbnail for this resource</Attribute>
  </Element>

  <Element name="Title" remember_values="true" occurances="0">
      <Attribute name="identifier" language="en">Title</Attribute>
      <Attribute name="definition" language="en">All searchable title fields</Attribute>
      <Attribute name="comment" language="en">Includes data taken from dc.Title, ex.Title, ufdc.SeriesTitle, ufdc.AltTitle, and ufdc.UniformTitle.</Attribute>
  </Element>

</MetadataSet>