<!-- DTD for the library directory XML structure -->
<!-- 1999-07-14 version 0.3 Untested -->
<!-- All elements of AddressInfo contain data in the format and language of the entity the record refers to, except for Country, which is represented with the 2 letter country code, according to ISO 3166-->
<!ELEMENT AddressInfo
(ParentOrganisation?,
EntityName,
SubUnit?,
Department?
Phone?,
Fax?,
Email?,
PostalAddress?) >
<!ELEMENT ParentOrganisation #PCDATA >
<!ELEMENT EntityName #PCDATA >
<!ELEMENT SubUnit #PCDATA >
<!ELEMENT Department #PCDATA >
<!ELEMENT Phone #PCDATA >
<!ELEMENT Fax #PCDATA >
<!ELEMENT Email #PCDATA >
<!ELEMENT PostalAddress
(Street?,
PoBox?,
City,
Region?,
Country,
PostalCode) >
<!ELEMENT Street #PCDATA >
<!ELEMENT PoBox #PCDATA >
<!ELEMENT City #PCDATA >
<!ELEMENT Region #PCDATA >
<!ELEMENT Country #PCDATA >
<!ELEMENT PostalCode #PCDATA >
<!ELEMENT ILLDirectoryInformation
(ILLDirectoryInstitutionInfo,
ILLProcessingUnit* -- ISROOTELEMENT -->
<!ELEMENT ILLDirectoryInstitutionInfo
AddressInfo >
<!ELEMENT ILLProcessingUnit
(UnitName,
UnitTimezone,
Contact*,
CommunicationNumber*,
SymbolCode*,
Material*,
AvailableDelivery*,
ILLService*,
ServiceLevel*,
Clientel*) >
<!ELEMENT Contact
AddressInfo >
<!ATTLIST Contact
Type NMTOKENS #REQUIRED
<!-- Agreed names for Contact Types are
AdministrativeHead
DepartmentHead
LendingSupport
BorrowingSupport
RegistrationContact
BillingContact
ILLSysadmin
TelecomSupport
Other contact types may occur -->
<!ELEMENT CommunicationNumber #PCDATA >
<!ATTLIST CommunicationNumber
Type (telephone | fax | email | IPIG-mail | IPIG-499 | IPIG-1611) #REQUIRED
ILLService NMTOKENS #REQUIRED
>
<!-- Possible values in ILLService are
LendingLoans
LendingCopies
BorrowingLoans
BorrowingCopies
-->
<!ELEMENT SymbolCode #PCDATA >
<!ATTLIST SymbolCode
System NMTOKEN #REQUIRED
>
<!-- Agreed names for SymbolCode System are
ISO
OCLC
BL
LIBRIS
(more to be added)
-->
<!ELEMENT Material
(LendPolicy?,
LoanPeriod?,
RenewPolicy?,
CopyMade?,
Notes?) >
<!ATTLIST Material
Type NMTOKENS #REQUIRED
>
<!-- Possible values for Material Type are
Monographs-Bound
Monographs-Unbound
Monographs-Electronic
Monographs-Braille
Serials-Bound
Serials-Unbound
Serials-Microfilm
Serials-Microfiche
Serials-Opaque
Serials-Electronic
Audiocassettes
Audio CDs
Film(16-32mm)
Videocassettes
Videodiscs
Videotapes
ComputerSoftware
Kits
Machine-readableComputerFiles
Manuscripts
ArchivalMaterials
Maps
MusicScores
Newspapers-Bound
Newspapers-Unbound
Newspapers-Film
Patents
Photographs
TechnicalReports
ConferenceProceedings
Standards
PhDsThesesFromOtherInstitutions
OfficialPublications
LegalDeposits
-->
<!ELEMENT LendPolicy #PCDATA >
<!ELEMENT LoanPeriod #PCDATA >
<!ELEMENT RenewPolicy #PCDATA >
<!ELEMENT CopyMade #PCDATA >
<!ELEMENT Notes #PCDATA >
<!ELEMENT AvailableDelivery
(Method, NormalMethod?, Notes?)+ >
<!ATTLIST AvailableDelivery
ServiceType (Loan | NonReturnable | Both) #REQUIRED
>
<!ELEMENT Method #PCDATA >
<!ELEMENT NormalMethod EMPTY >
<!ELEMENT PhysicalShippingAddress AddressInfo >
<!ATTLIST PhysicalShippingAddress
Type NMTOKENS #REQUIRED
>
<!-- Agreed names for PhysicalShippingAddress Types are
ShipTo
BillTo
ReturnTo
RequestTo
ResponseTo
Others may occur -->
<!ELEMENT ILLService
(SuspendDateTime*,
ServiceHours*) >
<!ATTLIST ILLService
Type NMTOKENS #REQUIRED
>
<!-- Agreed names for ILLService Types are
Loan
Non-returnable
LocationRequests
Estimate
-->
<!ELEMENT SuspendDateTime #PCDATA >
<!-- Formats for SuspendDateTime:
A time interval consisting of two ISO format dates, separated by a colon, or a time interval consisting of two ISO format dates, each followed by an ISO format time at the hours and minutes level. The two times separated by a colon.
Examples:
<SuspendDateTime>1999-12-24 : 1999-12-27 </SuspendDateTime>
<SuspendDateTime> 1999-12-31 1200 : 2000-01-02 1300 </SuspendDateTime>
-->
<!ELEMENT ServiceHours #PCDATA >
<!-- Formats for ServiceHours:
A series of digits showing which day of the week the hours apply to,followed by one or more intervals. The times are given in ISO hour and minutes format with colon as theinterval separator.
Digits representing days of the week use 1 to represent Monday.
The digits are separated from the intervals with an equal sign.
Intervals are separated by commas.
Examples:
<ServiceHours> 123=0900:1200,1300:1900 </ServiceHours>
<ServiceHours> 4=0900:1200,1300:1700, 1745:2100 </ServiceHours>
<ServiceHours> 56=0900:1400 </ServiceHours>
-->
<!ELEMENT ServiceLevel
(ServiceName,
ServiceSymbol,
Notes?) >
<!ATTLIST ServiceLevel
Service (Loans | Non-returnables | Both) #REQUIRED
MinTime CDATA #REQUIRED
MaxTime CDATA #REQUIRED
SearchRange (LocalUnit | Organisation | Consortium | Global) #REQUIRED
>
<!-- MinTime and MaxTime contain a numeric value followed by the letter 'h' to represent hours, or the letter 'd' to represent days. -->
<!ELEMENT ServiceName #PCDATA >
<!ELEMENT ServiceSymbol #PCDATA >
<!-- The format of the ServiceSymbol is that it is a single ASCII character -->
<!ELEMENT Costs
(PostalCharges?,
LoansCharge?,
CopyCharge?,
PerCopyCharge*,
Notes?) >
<!ELEMENT PostalCharges EMPTY >
<!ELEMENT LoansCharge #PCDATA >
<!ELEMENT CopyCharge #PCDATA >
<!ELEMENT PerCopyCharge #PCDATA >
<!ATTRLIST PerCopyCharge
CopyType NMTOKEN #REQUIRED
>
<!-- All charges take the form of a currency code and a sum in the usual format for currencies. The full stop is used as decimal delimiter.
Examples:
SEK 0.25
USD 10
GBP 11.12
-->
<!ELEMENT Clientele
(ClienteleType, RegistrationRequired?, Notes?)+ >
<!ATTLIST Clientele
Service (Loans | Non-returnables | Both) #REQUIRED
>
<!ELEMENT ClienteleType #PCDATA >
<!ELEMENT RegistrationRequired EMPTY >