<!--         
       '$RCSfile: eml-software.dtd,v $'
       Copyright: 2000 Regents of the University of California and the
                  National Center for Ecological Analysis and Synthesis
     For Details: http://knb.ecoinformatics.org/

        '$Author: higgins $'
          '$Date: 2001-10-19 21:24:30 $'
      '$Revision: 1.8 $'

    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 2 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-->
 

<!ELEMENT individualName (salutation*, givenName*, surName)>
<!ELEMENT salutation (#PCDATA)>
<!ELEMENT givenName (#PCDATA)>
<!ELEMENT surName (#PCDATA)>

<!ELEMENT organizationName (#PCDATA)>
<!ELEMENT positionName (#PCDATA)>

<!ELEMENT address (deliveryPoint*, city?, administrativeArea?, 
                   postalCode?, country?)>
<!ELEMENT deliveryPoint (#PCDATA)>
<!ELEMENT city (#PCDATA)>
<!ELEMENT administrativeArea (#PCDATA)>
<!ELEMENT postalCode (#PCDATA)>
<!ELEMENT country (#PCDATA)>

<!ELEMENT phone (#PCDATA)>
<!ATTLIST phone phonetype CDATA "voice">
<!ELEMENT electronicMailAddress (#PCDATA)>
<!ELEMENT onlineLink (#PCDATA)>

<!-- Note that the domain for role is not expressed in the DTD -->
<!ELEMENT role (#PCDATA)>


<!-- entity to conglomerate these fields into one name -->
<!ELEMENT role (#PCDATA)>

<!-- common fields -->
<!ELEMENT identifier (#PCDATA)>
<!ATTLIST identifier system CDATA "">
<!ELEMENT shortName (#PCDATA)>
<!ELEMENT title (#PCDATA)>
<!ELEMENT originator ((individualName|organizationName|positionName)+,
                             address*, phone*, electronicMailAddress*, 
                             onlineLink*, role+)>
<!ELEMENT pubdate (#PCDATA)>
<!ELEMENT pubplace (#PCDATA)>
<!ELEMENT series (#PCDATA)>
<!ELEMENT abstract (paragraph+)>
<!ELEMENT keywordSet (keyword+, keywordThesaurus*)>
<!ELEMENT keyword (#PCDATA)>
<!ATTLIST keyword keywordType CDATA "">
<!ELEMENT keywordThesaurus (#PCDATA)>
<!ELEMENT additionalInfo (paragraph+)>
<!ELEMENT paragraph (#PCDATA)>
<!ELEMENT rights (paragraph+)>
<!ELEMENT triple (subject, relationship, object)>
<!ELEMENT subject (#PCDATA)>
<!ELEMENT relationship (#PCDATA)>
<!ELEMENT object (#PCDATA)>

<!-- The software branch -->
<!ELEMENT software (identifier+, shortName?, title+,
                     originator+, pubdate?, pubplace?, series?, abstract?, 
                     keywordSet*, additionalInfo?, rights*, triple*, 
                     versionNumber?, sourceModule?, binaryFile?, location?, 
                     programmingLanguage?)>

<!ELEMENT versionNumber (#PCDATA)>
<!ELEMENT sourceModule (#PCDATA)>
<!ELEMENT binaryFile (#PCDATA)>
<!ELEMENT location (#PCDATA)>
<!ELEMENT programmingLanguage (#PCDATA)>
<!-- EOF -->