<!--
====================================================================
registry.stanford.edu/xml/person/1.2/hospital/Person.dtd
version 1.2, 11/17/04

DTD for the Stanford University Registry Person

Copyright 2002-2004 by the Board of Trustees of Stanford University
====================================================================
02/05/04 molive  created hospital specific Person DTD
11/17/04 molive  updated to Person 1.2 DTD structure
====================================================================
-->

<!-- +++++++++++++++++++++++++ Person +++++++++++++++++++++++++ -->

<!ELEMENT Person (name+, biodemo, location?, affiliation?, visibility*)>
<!ATTLIST Person
     name               CDATA #REQUIRED
     refid              CDATA #REQUIRED
     regid              CDATA #IMPLIED
     univid             CDATA #IMPLIED
     sunetid            CDATA #IMPLIED
     source             (hospital) #REQUIRED
>


<!-- +++++++++++++++++++++++++ Names +++++++++++++++++++++++++ -->

<!ELEMENT name (prefix?, first?, middle?, last, suffix?)>
<!ATTLIST name
     type               (full | preferred) #REQUIRED
     sourceval          CDATA #IMPLIED
>

<!ELEMENT first         (#PCDATA)>

<!ELEMENT middle        (#PCDATA)>

<!ELEMENT last          (#PCDATA)>

<!ELEMENT prefix        (#PCDATA)>

<!ELEMENT suffix        (#PCDATA)>


<!--  +++++++++++++++++++++++++ Bio Demo data +++++++++++++++++++++++++ -->

<!ELEMENT biodemo (ssn)>

<!ELEMENT ssn           (#PCDATA)>


<!-- +++++++++++++++++++++++++ Affiliations +++++++++++++++++++++++++ -->

<!ELEMENT affiliation (department?, affdata*, place?)>
<!ATTLIST affiliation
     organization       (sumc) #REQUIRED
     type               (staff | staff:nonactive) #REQUIRED
>

<!ELEMENT department    (#PCDATA)>
<!ATTLIST department
     code               CDATA #IMPLIED
>

<!ELEMENT affdata       (#PCDATA)>
<!ATTLIST affdata
     type               (jobtitle) #REQUIRED
     code               CDATA #IMPLIED
>

<!-- +++++++++++++++++++++++++ Place +++++++++++++++++++++++++ -->

<!ELEMENT place (address?, telephone*, email?, url?)>
<!ATTLIST place
     type               (office) #REQUIRED
>


<!-- +++++++++++++++++++++++++ Addresses +++++++++++++++++++++++++ -->
<!-- The Registry supports up to 3 lines of address   -->

<!ELEMENT address (line+, city, (state | province), country, postalcode?)>
<!ATTLIST address
     type               (office) #REQUIRED
>

<!ELEMENT line          (#PCDATA)>

<!ELEMENT city          (#PCDATA)>

<!ELEMENT state         EMPTY>
<!ATTLIST state
     code               CDATA #REQUIRED
>

<!ELEMENT province      EMPTY>
<!ATTLIST province
     code               CDATA #REQUIRED
>

<!ELEMENT country       EMPTY>
<!ATTLIST country
     alpha2             CDATA #REQUIRED
>

<!ELEMENT postalcode    (#PCDATA)>


<!-- +++++++++++++++++++++++++ Location +++++++++++++++++++++++++ -->

<!ELEMENT location EMPTY>
<!ATTLIST location
     type               (idmail) #REQUIRED
     code               CDATA #REQUIRED
     sourceval          CDATA #IMPLIED
>


<!-- +++++++++++++++++++++++++ Telephones +++++++++++++++++++++++++ -->

<!ELEMENT telephone (icc, area, number, ext?)>
<!ATTLIST telephone
     type               (office | officefax | officepager | officeinternalpager |
                         officemobile) #REQUIRED
     sourceval          CDATA #IMPLIED
>

<!ELEMENT icc           (#PCDATA)>

<!ELEMENT area          (#PCDATA)>

<!ELEMENT number        (#PCDATA)>

<!ELEMENT ext           (#PCDATA)>


<!-- +++++++++++++++++++++++++ Email +++++++++++++++++++++++++ -->

<!ELEMENT email (user, host)>
<!ATTLIST email
     type               (office) #REQUIRED
     sourceval          CDATA #IMPLIED
>

<!ELEMENT user (#PCDATA)>

<!ELEMENT host (#PCDATA)>


<!-- +++++++++++++++++++++++++ URLs +++++++++++++++++++++++++ -->

<!ELEMENT url (#PCDATA)>
<!ATTLIST url
     type               (officehomepage) #REQUIRED
>


<!-- +++++++++++++++++++++++++ Visibilities +++++++++++++++++++++++++ -->

<!ELEMENT visibility (#PCDATA)>
<!ATTLIST visibility
     where              (online) #REQUIRED
     what               (identity| idmail | affiliation | officeaddress |
                         officephone | officefax | officepager | officemobile |
                         officeemail | officehomepage) #REQUIRED
>
