9 Specifications and Mapping

Overview

ILL Direct Request recognizes five externals in the ILL-Request APDU. Externals are objects defined outside the ISO-ILL protocols either because they are specific to the responder or because they are extensions. Three of the externals are extensions to the ILL-Request. The externals are:

  • responderSpecificService
  • systemNo (part of itemId)
  • AccessControlFormat-prompt-1 (extension)
  • OCLCILLRequestExtension (extension)
  • ILLSupplementalClientInfo (extension)

Table: Specifications and mapping

The following table details ASN.1 coding for OCLC’s version of the ISO ILL-Request. The table uses the following typographical conventions:

  • All ASN.1 definitions, fields, tags, and values are shown in Courier type
    Example: deliveryAddress [6]
  • The highest-level context-specific data fields appear in boldface for quicker visual reference
    Example: search type [12]
  • Code in the table is within the context:
    ILL-Request [APPLICATION 1]
    SEQUENCE [UNIVERSAL 16]
  • Tag numbers for ISO-10161 fields are shown in square brackets [ ] after the field name
    Example: deliveryAddress [6]
  • Data represented by a code is shown with the definition in Courier followed by the value in parentheses
    Example: Loan (1)
  • Definitions of externals and extensions appear in shaded boxes prior to the relevant coding
  • An asterisk beside an OCLC ILL Field name denotes data supplied by the WorldCat bibliographic record matched during Direct-to-Profile processing. (Data in other fields is supplied by the ISO-10161 ILL-Request or constant data.)

ISO fields that are not mapped to the OCLC ILL workform or are not accompanied by Notes in this table are not used in OCLC’s application of the ISO ILL-Request, but must be present if required by the ILL-Request APDU. For example, requesterOptionalMessages is required, but not used.

Though not illustrated by this table, ILL Direct Request accepts GeneralString or EDIFACTString for the data type ILLString.

OCLC

ILL Field
ISO 10161 Field
  protocolVersionNum [0] Notes
  transactionId [1] Notes
 
initialRequesterId [0]
 
personOrInstitutionSymbol [0]
 
personSymbol [0]

:Borrower:

institutionSymbol [1] Notes
 
nameofPersonOrInstitution [1]
 
nameOfPerson [0]
 
nameOfInstitution [1]
 
transactionGroupQualifier [1]
 
transactionQualifier [2]
 
subTransactionQualifier [3]
  serviceDateTime [2]
 
dateTimeOfThisService [0]
 
date [0]
 
time [1]
 
dateTimeOfOriginalService [1]
 
date [0]
 
time [1]
  requesterId [3]
 
personOrInstitutionSymbol [0]
 
personSymbol [0]

:Borrower:

institutionSymbol [1] Notes
 
nameofPersonOrInstitution [1]
 
nameOfPerson [0]
 
nameOfInstitution [1]
  responderId [4]
 
personOrInstitutionSymbol [0]
 
personSymbol [0]

:Lender:

institutionSymbol [1] Notes
 
nameofPersonOrInstitution [1]
 
nameOfPerson [0]
 
nameOfInstitution [1]
  transactionType [5]
  deliveryAddress [6]
 
postalAddress [0] Notes

:SHIP TO:

nameOfPersonOrInstitution [0]

:SHIP TO:

extendedPostalDeliveryAddress [1]

:SHIP TO:

streetAndNumber [2]

:SHIP TO:

postOfficeBox [3]

:SHIP TO:

city [4]

:SHIP TO:

region [5]

:SHIP TO:

country [6]

:SHIP TO:

postalCode [7]
 
electronicAddress [1]

:BORROWING NOTES:

telecomServiceIdentifier [0]

:BORROWING NOTES:

telecomServiceAddress [0]

:SHIP VIA:

physicalDelivery [7]
  electronicDelivery [50]
 
SEQUENCE [UNIVERSAL 16]
 
eDeliveryService [0]
 
eDeliveryMode [0]
 
eDeliveryParameters [1]
 
documentType [1]
 
documentTypeId [2]
 
documentTypeParameters [3]

:SHIP VIA:

eDeliveryDescription [4]
 
eDeliveryDetails [5]
 
eDeliveryAddress [0]
 
telecomServiceIdentifier [0] Notes

:FAX:

telecomServiceAddress [1]
 
eDeliveryId [1]
 
personOrInstitutionSymbol [0]
 
personSymbol [0]
 
institutionSymbol [1]
 
nameOfPersonOrInstitution [1]
 
nameOfPerson [0]
 
nameOfInstitution [1]
 
nameOrCode [6]
 
deliveryTime [7]
 
SEQUENCE [UNIVERSAL 16]
 
eDeliveryService [0]
 
eDeliveryMode [0]
 
eDeliveryParameters [1]
 
documentType [1]
 
documentTypeId [2]
 
documentTypeParamenters [3]

:SHIP VIA:

eDeliveryDescription [4]
 
eDeliveryDetails [5]
 
eDeliveryAddress [0]
 
telecomServiceIdentifier [0] Notes

:E-MAIL:

telecomServiceAddress [1]
 
eDeliveryId [1]
 
personOrInstitutionSymbol [0]
 
personSymbol [0]
 
institutionSymbol [1]
 
nameOfPersonOrInstitution [1]
 
nameOfPerson [0]
 
nameOfInstitution [1]
 
nameOrCode [6]
 
deliveryTime [7]
  billingAddress [8]
 
postalAddress [0] Notes

:BILL TO:

nameOfPersonOrInstitution [0]

:BILL TO:

extendedPostalDeliveryAddress [1]

:BILL TO:

streetAndNumber [2]

:BILL TO:

postOfficeBox [3]

:BILL TO:

city [4]

:BILL TO:

region [5]

:BILL TO:

country [6]

:BILL TO:

postalCode [7]
 
electronicAddress [1]
 
telecomServiceIdentifier [0]
 
telecomServiceAddress [1]
  ILLServiceType [9] Notes
ENUMERATED [UNIVERSAL 10]
  responderSpecificService [10] ASN.1 Definition
EXTERNAL [UNIVERSAL 8]
OBJECT IDENTIFIER [UNIVERSAL 6]
singleASN1Type [0]
SEQUENCE [UNIVERSAL 16]
oCLCILLServiceType [0] Notes
  requesterOptionalMessages [11]
 
canSendRECEIVED [0]
 
canSendRETURNED [1]
 
requesterSHIPPED [2]
 
requesterCHECKEDIN [3]
  searchType [12]
 
levelOfService [0]

:NeedBefore:

needBeforeDate [1] Notes
 
expiryFlag [2]
 
expiryDate [3]
  supplyMediumInfoType [13]
SEQUENCE [UNIVERSAL 16]
supplyMediumType [0]
mediumCharacteristics [1]
  placeOnHold [14]
  clientID [15]

:PATRON:

clientName [0]

:PSTATUS:

clientStatus [1]

:PATRON ID:

clientIdentifier [2]
  itemId [16]
 
itemType [0]

:VERIFIED:

heldMediumType [1] Notes

:BORROWING NOTES:

callNumber [2]

:AUTHOR:*

author [3]

:TITLE:*

title [4] Notes

:TITLE:*

subTitle [5]
 
sponsoringBody [6]

:IMPRINT:*

placeOfPublication [7]

:IMPRINT:*

publisher [8]

:SERIES:*

seriesTitleNumber [9]

:VOL:

volumeIssue [10] Notes

:EDITION:*

edition [11]

:IMPRINT:

publicationDate [12]

:DATE:

publicationDateOfComponent [13]

:ARTICLE:

authorOfArticle [14]

:ARTICLE:

titleOfArticle [15] Notes

:PAGES:

pagination [16]
 
nationalBibliographyNo [17]

:VERIFIED:

iSBN [18]

:VERIFIED:

iSSN [19] Notes

:OCLC:

systemNo [20] ASN.1 Definition
 
EXTERNAL [UNIVERSAL 8]
OBJECT IDENTIFIER [UNIVERSAL 6] Notes
singleASN1Type [0]
SEQUENCE [UNIVERSAL 16]
SEQUENCE [UNIVERSAL 16]
ENUMERATED [UNIVERSAL 10] Notes
GENERAL STRING [UNIVERSAL 27] Notesstyle="padding-left:18px">
 
additionalNoLetters [21]

:VERIFIED:

verificationReferenceSource [22]
  supplementalItemDescription [17] Notes
  costInfoType [18]

:BILLING NOTES:

accountNumber [0]
 
maximumCost [1] Notes

:MAXCOST:

currencyCode [0] Notes

:MAXCOST:

monetaryValue [1] Notes
 
reciprocalAgreement [2]
 
willPayFee [3]
 
paymentProvided [4]

:COPYRT COMPLIANCE:

copyrightCompliance [19] Notes
  thirdPartyInfoType [20]
 
permissionToForward [0]
 
permissionToChain [1]
 
permissionToPartition [2]
 
permissionToChangeSendToList [3] Notes
 
initialRequesterAddress [4]
 
telecomServiceIdentifier [0]
 
telecomServiceAddress [1]
 
preference [5] Notes
 
sendToList [6]
 
SEQUENCE [UNIVERSAL 16]
 
systemId [0]
 
personOrInstitutionSymbol [0]
 
personSymbol [0]

:Lender:, :LOCATIONS:

institutionSymbol [1] Notes
 
nameofPersonOrInstitution [1]
 
nameOfPerson [0]
 
nameOfInstitution [1]
 
accountNumber [1]
 
systemAddress [2]
 
telecomServiceIdentifier [0]
 
telecomServiceAddress [1]
 
alreadyTriedList [7]
 
SEQUENCE [UNIVERSAL 16]
 
personOrInstitutionSymbol [0]
 
personSymbol [0]
 
institutionSymbol [1]
 
nameOfPersonOrInstitution [1]
 
nameOfPerson [0]
 
nameOfInstitution [1]
  retryFlag [21]
  forwardFlag [22]

:BORROWING NOTES:

requesterNote [46]
  forwardNote [47]
  ILLRequestExtensions [49]
Note:
The first ISO-10161 ILL-Request must contain an OCLC ILL authorization number and password under ILLRequestExtensions . The external object for the authorization extension is the AccessControlFormat-prompt-l from Z39.50-1995. For more information, visit the LC Maintenance Agency page for International Standard Z39.50 at < http://lcweb.loc.gov/z3950/agency >.
 
SEQUENCE [UNIVERSAL 16]
identifier [0] Notes
critical [1]
item [2]
EXTERNAL [UNIVERSAL 8]
OBJECT IDENTIFIER [UNIVERSAL 6] Notes
singleASN1Type [0]
response [2]
SEQUENCE [UNIVERSAL 16] Notes
promptId [1]
enumeratedPrompt [1]
type[1]
promptResponse [2] Notes
string [1]
SEQUENCE [UNIVERSAL 16]
promptId [1]
enumeratedPrompt [1] Notes
type [1]
promptResponse [2]
string [1] Notes
SEQUENCE [UNIVERSAL 16] Notes
identifier [0]
critical [1]
item [2]
EXTERNAL [UNIVERSAL 8] Notes ASN.1 Definition
OBJECT IDENTIFIER [UNIVERSAL 6]
singleASN1Type [0]
SEQUENCE [UNIVERSAL 16]

:PDEPT:

clientDepartment [0]

:MAXCOST:

paymentMethod [1] Notes

:U TITLE:*

uniformTitle [2]

:DISSERTATION:*

dissertation [3]

:NO:

issueNumber [4] Notes

:VOL:

volume [5]

:AFFILIATION:

affiliations [6]

:Source:

source [7] Notes
  ASN.1 Definition of Extension ILLSupplementalClientInfo
Note: How much patron info you encode depends upon your system capabilities. What follows is an example of encoding for a system that includes only patron name and patron notes.

















:PATRON:

:PATRON NOTES:

Example:

ILLRequestExtensions [49]
SEQUENCE [UNIVERSAL 16]
identifier [0]
critical [1] Notes
item [2] Notes
EXTERNAL [UNIVERSAL 8]
OBJECT IDENTIFIER [UNIVERSAL 6] Notes
singleASN1Type [0]
SEQUENCE [UNIVERSAL 16]
SEQUENCE [UNIVERSAL 16]
standard [1] Notes
infoContent [3]
stringContent [1] Notes
standard [1] Notes
infoContent [3]
stringContent [1] Notes
style="padding-left:18px">

Client Extension

The following table lists each StandardClientInfoType defined by the client extension. For each, the table specifies:

  • the ClientInfoContent choices for encoding it
  • the OCLC ILL patron field to which it is mapped
StandardClientInfoType ClientInfoContent OCLC ILL field
idInfo stringContent or definedNumber :PATRON ID:
nameInfo stringContent or nameOrId :PATRON:
contactInfo stringContent :PATRON NOTES:
statusInfo stringContent or statusCode :PSTATUS:
otherInfo stringContent :PATRON NOTES:
homeAddressInfo stringContent or postalAddress :PATRON ADDR:
workAddressInfo stringContent or postalAddress :PATRON ADDR:
faxNumber stringContent :PATRON FAX:
voiceNumber stringContent :PATRON PHONE:
pagerNumber stringContent :PATRON PHONE:
eMailInfo stringContent :PATRON E-MAIL:
systemIdNo stringContent or definedNumber :PATRON ID:
socialSecurityNo stringContent or definedNumber :PATRON ID:
accountNo stringContent or definedNumber :PATRON ID:
driversLicenseNo stringContent or definedNumber :PATRON ID:
other stringContent :PATRON NOTES:
wholeName stringContent or nameOrId :PATRON:
lastName stringContent :PATRON:
firstName stringContent :PATRON:
initials stringContent :PATRON:
prefix (OCLC does not support.)  
suffix (OCLC does not support.)  
name stringContent or nameOrId :PATRON:
streetAndNumber stringContent :PATRON ADDR:
additionalInfo stringContent :PATRON ADDR:
boxAddress stringContent :PATRON ADDR:
cityOrTown stringContent :PATRON ADDR:
stateOrProvOrRegion stringContent :PATRON ADDR:
country stringContent :PATRON ADDR:
postalCode stringContent :PATRON ADDR:
telephoneCountryCode stringContent or definedNumber :PATRON PHONE:
telephoneAreaCode stringContent or definedNumber :PATRON PHONE:
telephoneLocalNumber stringContent or definedNumber :PATRON PHONE:
telephoneExtension stringContent or definedNumber :PATRON PHONE:
eMailService stringContent :PATRON E-MAIL:
eMailAddress stringContent :PATRON E-MAIL:
department stringContent :PDEPT:
maximumCost amount, stringContent, or definedNumber :PATRON NOTES:
notes stringContent :PATRON NOTES:

Client Extension

The following table lists each StandardClientInfoType defined by the client extension. For each, the table specifies:

  • the ClientInfoContent choices for encoding it
  • the OCLC ILL patron field to which it is mapped

Additional rules for client data

Some other rules for mapping the client extension are:

  • A ClientInfoData sequence with infoType local is ignored
  • A ClientInfoData sequence with infoType standard is ignored if standard is set to an unsupported value
  • If a ClientInfoData sequence has more than one infoContent, only the first supported one is retained
  • A ClientInfoData sequence that does not include an infoContent supported for its infoType is ignored
  • The value for statusCode is converted to its corresponding text

Precedence rules for client data

Client data may appear in 3 different locations in an ISO-10161 ILL-Request to OCLC:

  • clientId
  • ILLSupplementalClientInfo
  • OCLCILLRequestExtension

In addition to the ILL-Request having more than 1 location for client data, the client extension itself can encode the same data many ways. If the same client data occurs more than once in the request, ILL Direct Request retains only one instance of it. The following table shows the order of precedence for the different forms and locations (ordered from highest to lowest).

Data from clientId takes precedence over data from ILLSupplementalClientInfo and data from ILLSupplementalClientInfo takes precedence over data from OCLCILLRequestExtension. The table also shows the concatenation rules for multiple pieces of data placed in the same field: order, labels, and punctuation.

Table: Precedence of Client Data

Data Order of Precedence (not all are required)
:PATRON: clientName from clientId
nameInfo
wholeName
name
lastName, firstName initials
:PATRON ADDR: workAddressInfo//homeAddressInfo
streetAndNumber/additionalInfo/boxAddress/cityOrTown
stateOrProvOrRegion country postalCode
:PATRON PHONE: voiceNumber//pagerNumber
telephoneCountryCode telephoneAreaCode telephoneLocalNumber
telephoneExtension//pagerNumber
:PATRON E-MAIL: eMailInfo
eMailService eMailAddress
:PATRON NOTES: notes MC:maximumCost otherInfo contactInfo other
:PATRON ID: clientIdentifier from clientId SSN:socialSecurityNo
DL:driversLicenseNo AN:accountNo
idInfo SSN:socialSecurityNo DL:driversLicenseNo AN:accountNo
systemIdNo SSN:socialSecurityNo DL:driversLicenseNo AN:accountNo
:PSTATUS: clientStatus from clientId
statusInfo
:PDEPT: department
clientDepartment from OCLCILLRequestExtension

Maximum field lengths

The following table shows the maximum length of each OCLC ILL field to which ILL Direct Request maps data. Data that exceeds the maximum field length is truncated.

Field Maximum Length
:AFFILIATIONS: 500
:ARTICLE: 500
:AUTHOR: 500
:BILLING NOTES: 500
:BILL TO: 500
:BORROWING NOTES: 500
:DATE: 70
:DISSERTATION: 500
:EDITION: 500
:E-MAIL: 500
:FAX: 500
:IMPRINT: 500
:LOCATIONS: 500
:MAXCOST: 67
:NO: 72
:PAGES: 67
:PATRON: 500
Field Maximum Length
:PATRON ADDR: 500
:PATRON E-MAIL: 59
:PATRON FAX: 62
:PATRON ID: 63
:PATRON NOTES: 500
:PATRON PHONE: 60
:PDEPT: 67
:PSTATUS: 65
:SERIES: 500
:SHIP TO: 500
:SHIP VIA: 66
:SOURCE: 8
:TITLE: 500
:U TITLE: 500
:VERIFIED: 500
:VOL: 71