Definitions

ASN.1 Definition of External responderSpecificService

The external object responderSpecificService specifies the processing option. The object is local to OCLC. If this object is not present, the processing option defaults to the Direct-to-Lender option.

OCLCILLService DEFINITIONS ::=
--The object identifier is 1.0.10161.4.1000.2.1
BEGIN
OCLCILLService ::= SEQUENCE {
oCLCILLServiceType [0] IMPLICIT OCLCILLServiceType
}

OCLCILLServicetype ::= ENUMERATED {
directToProfile (1),
directToLender (2),
directToReview (3)
}
END

ASN.1 Definition of External systemNo

If present, systemNo should contain an OCLC number. To encode the OCLC number, use the external object for system number defined by the Library and Archives Canada.

CanSystemNo DEFINITIONS ::=
--The object identifier is 1.2.124.10161.2
BEGIN
IMPORTS ILL-String FROM ISO-10161-ILL-1;

SystemNo ::= SEQUENCE SIZE (1..10) OF SEQUENCE
system System,
recordNo RecordNo
}

System ::= ENUMERATED {
dobis (1),
candoc (2),
oclc (3),
rlin (4),
utlas (5),
other (6)
}
--Do not include the acronym for the system as part of the record number unless
"other (6)" is chosen.

RecordNo ::= ILL-String (SIZE (1..50))
END

ASN.1 Definition of Extension OCLCILLRequestExtension

This extension contains OCLC ILL fields that are not part of the ISO-10161 ILL-Request.

OCLCILLRequestExtension DEFINITIONS ::=
--The object identifier is 1.0.10161.13.2
BEGIN
IMPORTS ILL-String FROM ISO-10161-ILL-1;

OCLCILLRequestExtension ::=SEQUENCE {
clientDepartment [0] ILL-String OPTIONAL,
paymentMethod [1] ILL-String OPTIONAL,
uniformTitle [2] ILL-String OPTIONAL,
dissertation [3] ILL-String OPTIONAL,
issueNumber [4] ILL-String OPTIONAL,
volume [5] ILL-String OPTIONAL
affiliations [6] ILL-String OPTIONAL,
source [7] ILL-String OPTIONAL
}
END


ASN.1 Definition of Extension ILLSupplementalClientInfo

OCLC supports this extension proposed by the ILL Protocol Implementers Group (IPIG). Because the proposed object is not yet registered, OCLC temporarily has defined a local object based on the proposed object.

ILLSupplementalClientInfo DEFINITIONS ::=
--The object identifier is 1.0.10161.13.1000.2.1
BEGIN

IMPORTS ILL-String System-ID, System-Address, Postal-Address, Amount
FROM ISO-10161-ILL-1;

SupplementalClientId ::=SEQUENCE OF ClientInfoData

ClientInfoData ::= SEQUENCE {
infoType ClientInfoType,
infoContent [3] IMPLICIT SEQUENCE OF ClientInfoContent
}

ClientInfoType ::= CHOICE {
standard [1] IMPLICIT StandardClientInfoType,
local [2] ILL-String
}

ClientInfoContent ::= CHOICE {
stringcontent [1] ILL-String,
postalAddress [2] IMPLICIT Postal-Address,
nameOrId [3] IMPLICIT System-Id,
statusCode [4] IMPLICIT StatusCode,
definedNumber [5] IMPLICIT INTEGER,
nested [6] IMPLICIT ClientInfoData,
amount [7] IMPLICIT Amount --Additional type proposed by OCLC
}
StandardClientInfoType ::= ENUMERATED {
--Tags for hierarchical levels.
idInfo (0),
nameInfo (1),
contactInfo (2),
statusInfo (3),
otherInfo (4),
homeAddressInfo (5), Notes
workAddressInfo (6), Notes
faxNumber (7),
voiceNumber (8),
pagerNumber (9),
eMailInfo (10),
--Tags for ID.
systemIdNo (21),
socialSecurityNo (22),
accountNo (23),
driversLicenseNo (24),
other (25), --Requires contents with a string tag.
--Tags for names.
wholeName (30),
lastName (31),
firstName (32),
initials (33),
prefix (34),
suffix (35),
--Tags for addresses.
name (40),
streetAndNumber (41), Notes
additionalInfo (42), --For example, Apt., Floor. Notes
boxAddress (43), Notes
cityOrTown (44),
stateOrProvOrRegion (45),
country (46),
postalcode (47),
--Tags for dialing info.
telephoneCountry Code (50),
telephoneAreaCode (51),
telephoneLocalNumber (52),
telephoneExtension (53),
--Tags for email.
eMailService (60),
eMailAddress (61),
--Additional tags proposed by OCLC.
department (100),
notes (101),
maximumCost (102)
}

StatusCode ::= ENUMERATED {
undergraduate (0),
graduate (1),
faculty (2),
staff (3),
visitor (4),
generaluser (5),
juvenile (6),
vIP (7),
subscriber (8),
suspended (9),
other (10),
unspecified (11)
}
END

ASN.1 Definition for External responderSpecificResults

OCLCSpecificResults DEFINITIONS ::=
-- Responder-Specific-Results for ILL-Answer
-- The object identifier is 1.0.10161.8.1000.2.1

BEGIN

IMPORTS ILL-String FROM ISO-10161-ILL-1;

OCLCSpecificResults ::= SEQUENCE {
oclcSpecificStatus [0] IMPLICIT OCLCSpecificStatus,
reasonInReview [1] IMPLICIT ReasonInReviewList OPTIONAL
}

OCLCSpecificStatus ::= ENUMERATED {
review (1),
reviewInProcess (2),
saved (3)
}

ReasonInReviewList ::= SEQUENCE OF SEQUENCE {
reasonInReview [0] IMPLICIT ReasonInReview,
reasonInReviewText [1] ILL-String OPTIONAL
}

ReasonInReview ::= ENUMERATED {
reasonUnknown (1),
reasonOther (2),
directToReviewService (3),
noBibRecordNumbers (4),
noBibRecord Matched (5),
multipleBibRecordsMatched (6),
problemMatchingBibRecord (7),
noProfilesDefined (8),
noProfileMatched (9),
problemMatchingProfile (10),
heldByYourLibrary (11),
noValidLenders (12),
firstLenderInvalid (13),
notEnoughLenders (14),
serialItem (15),
holdingsPathNotFound (16),
invalidHoldingsPath (17),
noCustomHoldings (18),
noPreferredLenders (19),
constantDataNotFound (20),
invalidNeedBeforeDate (21),
invalidCopyrightCompliance (22),
noShipToAddress (23),
maxCostInvalidForIfm (24),
produceOptionInProfileOff (25)
}
END

ASN.1 Definition of Extension OCLCILLErrorList

OCLCILLErrorList DEFINITIONS ::=
--The object identifier is 1.0.10161.13.1000.2.2

BEGIN

IMPORTS ILL-String FROM ISO-10161-ILL-1;

OCLCILLErrorList ::= SEQUENCE OF SEQUENCE {
errorCode [0] IMPLICIT ENUMERATED {
missingRequiredField (1),
missingTitle (2),
invalidResponderSpecificServiceType (3),
unsupportedILLServiceType (4),
invalidILLServiceType (5),
malformedData (6),
requesterNotAuthorized (7),
requesterSymbolMissing (8),
invalidRequesterSymbol (9),
duplicateTransactionId (10),
invalidTransactionId (11),
malformedRequest (12)
} OPTIONAL,
errorText [1] ILL-String OPTIONAL
}
END