JOB Document Type Definition
<!--
version: 1.0.0
date: 12 August, 1998

This DTD declares Entities, Elements, Attributes and Notations for the document type "job-list.dtd"

Created by Tapestry.Net in conjunction with Search Tools Consulting and XMLSolutions, LLC

http://www.searchtools.com/
http://www.xmls.com/
-->
<!-- DTD version number -->
<!ENTITY job-dtd "1.0.0" >
<!-- lists ============================================-->
<!-- This section contains lists for attribute validation of districts, countries, currency and language codes --> <!-- USPS standard state & territory abbreviations, including armed forces for details, see http://www.usps.gov/ncsc/lookups/abbr_state.txt Canadian, Mexican and Japanese districts from the International Postal Union http://www.upu.int/addressing/AN/ -->

<!ENTITY % district-list "AL | AK | AS | AZ | AR | CA | CO | CT | DE | DC | FM | FL | GA | GU | HI | ID | IL | IN | IA | KS | KY | LA | ME | MH | MD | MA | MI | MN | MS | MO | MT | NE | NV | NH | NJ | NM | NY | NC | ND | MP | OH | OK | OR | PW | PA | PR | RI | SC | SD | TN | TX | UT | VT | VI | VA | WA | WV | WI | WY |

AB | BC | MB | NB | NF | NS | NT | ON | PE | QC | SK | YT |

AGS | BC | BCS | CAM | COAH | COL | CHIS | CHIH | DF | DGO | GTO | GRO | HGO | JAL | MEX | MICH | MOR | NAY | NL | OAX | PUE | QRO | QROO | SLP | SIN | SON | TAB | TAMPS | TLAX | VER | YUC | ZAC |

AICHI | AKITA | AOMORI | CHIBA | EHIME | FUKUI | FUKUOKA | FUKUSHIMA | GIFU | GUNMA | HIROSHIMA | HOKKAIDO | HYOGO | IBARAGI | ISHIKAWA | IWATE | KAGAWA | KAGOSHIMA | KANAGAWA | KOCHI | KUMAMOTO | KYOTO-FU | MIE | MIYAGI | MIYAZAKI | NAGANO | NAGASAKI | NARA | NIIGATA | OITA | OKAYAMA | OKINAWA | OSAKA-FU | SAGA | SAITAMA | SHIGA | SHIMANE | SHIZUOKA | TOCHIGI | TOKUSHIMA | TOKYO-TO | TOTTORI | TOYAMA | WAKAYAMA | YAMAGATA | YAMAGUCHI | YAMANASHI ">

<!-- ISO 3166 standard country domain abbreviations use ZZ for unknown countries. for details, see http://www.sil.org/sgml/country3166.html -->

<!ENTITY % country-list "AD | AE | AF | AG | AI | AL | AM | AN | AO | AQ | AR | AS | AT | AU | AW | AZ | BA | BB | BD | BE | BF | BG | BH | BI | BJ | BM | BN | BO | BR | BS | BT | BU | BV | BW | BY | BZ | CA | CC | CF | CG | CH | CI | CK | CL | CM | CN | CO | CR | CS | CU | CV | CX | CY | CZ | DD | DE | DJ | DK | DM | DO | DZ | EC | EE | EG | EH | ER | ES | ET | FI | FJ | FK | FM | FO | FR | FX | GA | GB | GD | GE | GF | GH | GI | GL | GM | GN | GP | GQ | GR | GS | GT | GU | GW | GY | HK | HM | HN | HR | HT | HU | ID | IE | IL | IN | IO | IQ | IR | IS | IT | JM | JO | JP | KE | KG | KH | KI | KM | KN | KP | KR | KW | KY | KZ | LA | LB | LC | LI | LK | LR | LS | LT | LU | LV | LY | MA | MC | MD | MG | MH | ML | MN | MM | MO | MP | MQ | MR | MS | MT | MU | MV | MW | MX | MY | MZ | NA | NC | NE | NF | NG | NI | NL | NO | NP | NR | NT | NU | NZ | OM | PA | PE | PF | PG | PH | PK | PL | PM | PN | PR | PT | PW | PY | QA | RE | RO | RU | RW | SA | SB | SC | SD | SE | SG | SH | SI | SJ | SK | SL | SM | SN | SO | SR | ST | SU | SV | SY | SZ | TC | TD | TF | TG | TH | TJ | TK | TM | TN | TO | TP | TR | TT | TV | TW | TZ | UA | UG | UM | US | UY | UZ | VA | VC | VE | VG | VI | VN | VU | WF | WS | YD | YE | YT | YU | ZA | ZM | ZR | ZW | ZZ">

<!-- ISO 4217 standard abbreviations for currencies for details, see http://www.triacom.com/archive/iso4217.en.html -->

<!ENTITY % currency-list "ADP | AED | AFA | ALL | AMD | ANG | AON | AOR | ARS | ATS | AUD | AUD | AUD | AUD | AUD | AUD | AUD | AUD | AWG | AZM | BAD | BBD | BDT | BEF | BEF | BGL | BHD | BIF | BMD | BND | BOB | BOV | BRL | BSD | BTN | BWP | BYB | BZD | CAD | CHF | CHF | CLF | CLP | CNY | COP | CRC | CUP | CVE | CYP | CZK | DEM | DJF | DKK | DKK | DKK | DOP | DZD | ECS | ECV | EEK | EGP | ESP | ESP | ETB | FIM | FJD | FKP | FRF | FRF | FRF | FRF | FRF | FRF | FRF | FRF | FRF | GBP | GBP | GBP | GBP | GEL | GHC | GIP | GMD | GNF | GRD | GTQ | GWP | GYD | HKD | HNL | HRK | HTG | HUF | IDR | IDR | IEP | ILS | INR | INR | IQD | IRR | ISK | ITL | ITL | JMD | JOD | JPY | KES | KGS | KHR | KMF | KPW | KRW | KWD | KYD | KZT | LAK | LBP | LKR | LRD | LSL | LTL | LUF | LVL | LYD | MAD | MAD | MDL | MGF | MKD | MMK | MNT | MOP | MRO | MTL | MUR | MVR | MWK | MXN | MYR | MZM | NAD | NGN | NIO | NLG | NOK | NOK | NOK | NPR | NZD | NZD | NZD | NZD | NZD | OMR | PAB | PEN | PGK | PHP | PKR | PLN | PLZ | PTE | PYG | QAR | ROL | RUR | RWF | SAR | SBD | SCR | SDD | SEK | SGD | SHP | SIT | SKK | SLL | SOS | SRG | STD | SVC | SYP | SZL | THB | TJR | TMM | TND | TOP | TPE | TRL | TTD | TWD | TZS | UAG | UAK | UGX | USD | USD | USD | USD | USD | USD | USD | USD | USD | USD | USD | USD | USD | USD | USD | UYU | UZS | VEB | VND | VUV | WST | XAF | XAF | XAF | XAF | XAF | XAF | XCD | XCD | XCD | XCD | XCD | XCD | XCD | XCD | XEU | XOF | XOF | XOF | XOF | XOF | XOF | XOF | XPF | XPF | XPF | YER | YUM | ZAL | ZAR | ZAR | ZAR | ZMK | ZRN | ZWD">

<!-- ISO 649 standard abbreviations for languages for details, see http://nvlinux.netvision.net.il/htmlcompendium/langcode.htm -->

<!ENTITY % language-list "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 | FI | FJ | FO | FR | FY | GA | GL | GN | GU | HA | HI | HR | HU | HY | IA | IE | IK | IN | IS | IT | IW | JA | JI | 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 | UK | UR | UZ | VI | VO | WO | XH | YO | ZH | ZU">
<!-- ============================================-->
<!-- root element ============================================-->
<!ELEMENT job-list (dtd-version, job+, comment*)>
<!ELEMENT dtd-version (#PCDATA)> <!-- ** required ** -->
<!ELEMENT comment ANY> <!-- used in several places -->
<!-- basic information ============================================-->
<!-- ** at least one job is required ** -->
<!ELEMENT job (title, id?, source?, field+, description?, details?, requirements?, company?, contact?) >
<!ELEMENT title (#PCDATA)> <!-- the job title, ** required ** -->
<!-- the listing company's ID number, freeform -->
<!ELEMENT id (#PCDATA)>
<!-- meta-data, freeform, describing the source, listing company, whatever -->
<!ELEMENT source (#PCDATA) >
<!-- job field ============================================-->
<!-- job field or discipline, ** required ** (one or more) -->
<!ELEMENT field (#PCDATA)>>
<!-- actual job description ============================================--> <!-- freeform description, can include HTML -->
<!ELEMENT description (#PCDATA) >
<!-- details =============================================-->
<!-- job location (city, state, country), pay, term, amount of travel required, other requirements (see below), date position is posted, last date to apply, and optional comments -->
<!ELEMENT details (location, pay?, term?, travel?, post-date?, close-date?, comment*) >
<!-- if there is a location, city and country are ** required **, district (state, province, etc.) is optional-->
<!ELEMENT location (city, district?, country)>
<!ELEMENT city (#PCDATA)>
<!-- you can pick from the list, or supply your own -->
<!ELEMENT district (#PCDATA)>
<!ATTLIST district name (%district-list;) #IMPLIED>
<!-- you can pick from the list at the end, or supply your own (default to US) -->
<!ELEMENT country (#PCDATA)> <!ATTLIST country code (%country-list;) "US">
<!-- pay info: how much, per what, and in what currency (default to per year, US Dollars) -->
<!ELEMENT pay (#PCDATA) >
<!ATTLIST pay amount CDATA #IMPLIED increment (year | month | hour | flat-rate) "year" currency (%currency-list;) "USD" >
<!-- what kind of position (default to full time) -->
<!ELEMENT term (#PCDATA) >
<!ATTLIST term value (full-time | part-time | contract | other) "full-time" >
<!-- percentage travel required -->
<!ELEMENT travel (#PCDATA)>
<!ATTLIST travel percentage CDATA #IMPLIED >
<!-- date the job was posted to the original location -->
<!-- date-type not required, but if included, must have specified value -->
<!-- example: July 8, 1998 --> <!ELEMENT post-date (#PCDATA) > <!ATTLIST post-date date-type CDATA #FIXED "ISO-8601" value CDATA #IMPLIED >
<!-- date on which the applications must be recieved -->
<!-- see above for notes -->
<!-- example: <close-date type="ISO 8601" value="19980808"/> -->
<!ELEMENT close-date (#PCDATA) >
<!ATTLIST close-date date-type CDATA #FIXED "ISO-8601" value CDATA #IMPLIED >
<!-- requirements ============================================-->
<!-- ALL OPTIONAL: multiple entries for experience (including number of years and how important) degree, skills, languages, and freeform comment, defined above. -->
<!ELEMENT requirements (degree*, skill*, language*, comment*)>
<!-- degrees cannot be required, for legal reasons. For field info, see above -->
<!ELEMENT degree (field)>
<!ATTLIST degree level (HS | AA | BA | BS | MA | MS | MBA | PhD | Other) #IMPLIED &rt;
<!-- free form skill description by having content ANY, area-specific tags can be inserted for example, programming languages, software experience -->
<!ELEMENT skill ANY>
<!ATTLIST skill importance ( desired | required | plus ) "required" &rt;
<!-- multiple entries for languages allowed -->
<!ELEMENT language (#PCDATA)>
<!ATTLIST language importance ( desired | required | plus ) "required" value (%language-list;) #IMPLIED >
<!-- company information (all optional) -->
<!ELEMENT company (name?, division?, department?, logo?, location?, comment* )>
<!-- special fields for XLink live linking --> <!-- just use the href field -->
<!ATTLIST company display (yes | no) "yes" xml:link CDATA #FIXED "simple" href CDATA #IMPLIED inline (true | false) "true" >
<!ELEMENT name (#PCDATA)> <!-- company name, optional -->
<!ELEMENT division (#PCDATA)>
<!ELEMENT department (#PCDATA)>
<!ELEMENT logo ANY>
<!-- for comment and location, see above -->
<!-- contact ============================================-->
<!-- contact information for sending applications most information is optional, though at least one of fax/email/address/application-url -->
<!ELEMENT contact (contact-name?, contact-title?, company?, apply-to, comment*)>
<!ELEMENT contact-name (#PCDATA)>
<!ELEMENT contact-title (#PCDATA)>
<!-- recruiting company field, see above -->
<!-- apply-to field is required if contact is used document should include at least one way to apply! -->
<!ELEMENT apply-to (phone?, fax?, email?, mailing-address?, application-url?)> <!ELEMENT phone (#PCDATA)>
<!ELEMENT fax (#PCDATA)>
<!ELEMENT email (#PCDATA)>
<!-- special fields for XLink live linking -->
<!-- just use the href field -->
<!ELEMENT application-url (#PCDATA)>
<!ATTLIST application-url display (yes | no) "yes" xml:link CDATA #FIXED "simple" href CDATA #IMPLIED inline (true | false) "true" >
<-- one or more streets, city, district, postcode (Zip Code) and country) -->
<!ELEMENT mailing-address (street+, city, district, postcode, country?)>
<!ELEMENT street (#PCDATA)>
<!-- re-use city element from above -->
<!-- re-use district (state, province) element from above, including attribute from list -->
<!-- Zip Code or other postal code -->
<!ELEMENT postcode (#PCDATA)>
<!-- re-use country element from above, including attribute from list -->
<!-- end ============================================-->