<!-- ilias_user.dtd for ILIAS Users -->
<!-- For comments refer to our mailing list: xml-ilias@uni-koeln.de -->
<!-- $Id$ -->
<!-- Language codes referring to ISO 639-1 Alpha-2 code, see http://www.oasis-open.org/cover/iso639a.html for details -->
<!ENTITY % langcode "none | aa | ab | af | am | ar | as | ay | az | ba | be | bg | bh | bi | bn | bo | br | ca | co | cs | cy | da | de | dz | el | en | eo | es | et | eu | fa | fi | fj | fo | fr | fy | ga | gd | gl | gn | gu | ha | he | hi | hr | hu | hy | ia | ie | ik | id | is | it | iu | ja | jv | ka | kk | kl | km | kn | ko | ks | ku | ky | la | ln | lo | lt | lv | mg | mi | mk | ml | mn | mo | mr | ms | mt | my | na | ne | nl | no | oc | om | or | pa | pl | ps | pt | qu | rm | rn | ro | ru | rw | sa | sd | sg | sh  | si | sk | sl | sm | sn | so | sq | sr | ss | st | su | sv | sw | ta | te | tg | th | ti | tk | tl | tn | to | tr | ts | tt | tw | ug | uk | ur | uz | vi | vo | wo | xh | yi | yo | za | zh | zu">

<!-- Action attribute for entities. -->
<!ENTITY % entityAction "Insert | Update | Delete">

<!-- Action attribute for relationships. -->
<!ENTITY % relationshipAction "Assign | Detach">

<!-- Users -->
<!ELEMENT Users (User*)>

<!-- User -->
<!ELEMENT User (Login, Role*, Password?, Firstname?, Lastname?, Title?, Gender?, Email?,
	Institution?, Street?, City?, PostalCode?, Country?, PhoneOffice?, PhoneHome?,
	PhoneMobile?, Fax?, Hobby?, Department?, Comment?, Matriculation?, Active?, ClientIP?)>
<!ATTLIST User
	Id CDATA #REQUIRED
	Language (%langcode;) #REQUIRED
	Action (%entityAction;) "Insert"
>

<!-- Role -->
<!ELEMENT Role (#PCDATA)>
<!ATTLIST Role
	Id CDATA #REQUIRED
	Type (Global | Local) #REQUIRED
	Action (%relationshipAction;) "Assign"
>

<!-- Other Elements -->
<!ELEMENT Login (#PCDATA)>
<!ELEMENT Password (#PCDATA)>
<!ATTLIST Password
	Type (ILIAS2 | ILIAS3) #REQUIRED
>
<!ELEMENT Firstname (#PCDATA)>
<!ELEMENT Lastname (#PCDATA)>
<!ELEMENT Title (#PCDATA)>
<!ELEMENT Gender (#PCDATA)> <!-- content must be "f" (female) or "m" (male) -->
<!ELEMENT Email (#PCDATA)>
<!ELEMENT Institution (#PCDATA)>
<!ELEMENT Street (#PCDATA)>
<!ELEMENT City (#PCDATA)>
<!ELEMENT PostalCode (#PCDATA)>
<!ELEMENT Country (#PCDATA)>
<!ELEMENT PhoneOffice (#PCDATA)>
<!ELEMENT PhoneHome (#PCDATA)>
<!ELEMENT PhoneMobile (#PCDATA)>
<!ELEMENT Fax (#PCDATA)>
<!ELEMENT Hobby (#PCDATA)>
<!ELEMENT Department (#PCDATA)>
<!ELEMENT Comment (#PCDATA)>
<!ELEMENT Matriculation (#PCDATA)>
<!ELEMENT Active (#PCDATA)> <!-- content must be "true" or "false" -->
<!ELEMENT ClientIP (#PCDATA)>
