Use cases

ISO 18626 Interlibrary Loan Transactions

ISO TC46/SC4/WG14 Interlibrary Loan Transactions

 

Identifier: http://illtransactions.org/guidelinesusecases/usecases/2021/


Hosted by OCLC, Inc.


Last update: 12 March 2021

 

 

Use cases for ISO 18626:2021

Please note these use cases are being made available prior to the publication of ISO 18626:2021

Sample Use Case A.  Requesting library asks for a loan. Supplying library lends the requested item.

Use Case 1.  Requesting library cancels request.

Use Case 1a.  Supplying library agrees to cancel.

Use Case 1b.  Supplying library cannot cancel.

Use Case 2.  Supplying library unable to fill request.

Use Case 3.  Requesting library requests copy of an article.   The article is sent via Article Exchange.

Use Case 4.  Retry - maximum cost exceeded.

Use Case 4a.  Supplying library suggests retry due to maximum cost exceeded.

Use Case 4b.  Requesting library sends retry request with a new maximum cost.

Use Case 5.  Overdue loan.

Use Case 6.  Renewal of loan.

Use Case 7.  Consortium request.

Use Case 8.  Multiple item request for a specific time period.

Use Case 8a.  Multiple item request - Retry

Use Case 9.  Return item to different location at supplying library.

Use Case 10.   Supply an item when it becomes available at a future date.

Use Case 11.   Retry - requested edition not available.

Use Case 12.  Supplying library sends requested item directly to the patron.

Use Case 13. Supplying library DOES NOT send requested item directly to the patron.

Use Case 14. Supplying library sends a digital loan (CDL) with an expiry date.

Use Case 15. Supplying library sends a digital loan (CDL)

Use Case 16. Supplying library supplies an Open Access electronic copy of a book.

Use Case 17. Supplying library sends item via courier and supplies tracking information.  The package is insured.

Use Case 18  Error - requesting library asks to cancel a request the supplying library doesn't recognise.

Use Case 19 Error - requesting library uses an open code scheme that is not recognized by the supplying library.

Use Case 20 Error - supplying library uses an unfamiliar value from a default open code scheme.

Sample Use Case A.  Requesting library asks for a loan. Supplying library lends the requested item.

The following use case is provided as a template (or baseline) for the creation of additional use cases.  

All additional uses cases will include only the elements that are specific to the use case being described.  

The requesting library asks for a loan. The supplying library lends the requested item.

Action

Requesting library (XYZ)

Supplying library (ABC)

1

Requesting library (XYZ) sends a request for a loan to supplying library (ABC).

Requesting library XYZ, is known to supplying library ABC and so no address or contact information is provided in the request.  

Library XYZ

  • Asks for the loan to be sent by Courier, or if that is not possible, by Mail.
  • Indicates they are willing to pay no more than $50 US

1a

Sends Request message with:

Header

SupplyingAgencyId 

AgencyIdType = "ISIL”

AgencyIdValue = "CA-ABC”

RequestingAgencyId

AgencyIdType = "OCLC”

AgencyIdValue = "oclc-XYZ”

Timestamp = "2020–04–24T09:06:32Z”

RequestingAgencyRequestId = "5333890654Z”

BibliographicInfo

Title = "The salt path”

Author = "Raynor Winn”

BibliographicItemId

BibliographicItemIdentifierCode = "ISBN”

BibliographicItemIdentifier = "9780241349649”

BibliographicRecordId

BibliographicRecordIdentifierCode = "OCLC”

BibliographicRecordIdentifier = "1020281909”

PublicationInfo

Publisher = "Michael Joseph (Penguin Books)”

PublicationType = "Book”

PublicationDate = "2018”

PlaceOfPublication = "London”

ServiceInfo

RequestType = "New”

ServiceType = "Loan”

PreferredFormat = "Printed”

AnyEdition = "Y”

RequestedDeliveryInfo

SortOrder = "0”

Address

PhysicalAddress

Line1 = "123 Main Street”

Locality = "Chicago”

PostalCode = "60616”

Region = "IL”

Country = "USA”

DeliveryMethod = "Courier"

CourierName = "FedEx"

SortOrder = "1”

Address

PhysicalAddress

Line1 = "123 Main Street”

Locality = "Chicago”

PostalCode = "60616”

Region = "IL”

Country = "USA”

DeliveryMethod = "Mail"

RequestingAgencyInfo

Name = "Library XYZ”

ContactName = "Mary Smith”

Address

ElectronicAddress

ElectronicAddressType = “Email”

ElectronicAddressData = “mary.smith@xyz.edu”

BillingInfo

MaximumCosts

CurrencyCode = "USD”

MonetaryValue = "50”

1b

Sends Request Confirmation message with:

Header

SupplyingAgencyId 

AgencyIdType = "ISIL”

AgencyIdValue = "CA-ABC”

RequestingAgencyId

AgencyIdType = "ISIL”

AgencyIdValue = "oclc-XYZ”

Timestamp = "2020–04–24T09:06:48Z”

RequestingAgencyRequestId = "5333890654Z”

TimestampReceived = "2020–04–24T09:06:32Z”

MessageStatus = "OK”

2

The supplying library (ABC) lends the item.

Library ABC indicates

  • A due date of June 22, 2020
  • The loan has been sent by mail
  • The price of the loan is $35 US

2a

Sends Supplying Agency message with:

Header

SupplyingAgencyId 

AgencyIdType = "ISIL”

AgencyIdValue = "CA-ABC”

RequestingAgencyId

AgencyIdType = "ISIL”

AgencyIdValue = "oclc-XYZ”

Timestamp = "2020–04–27T10:32:21Z”

RequestingAgencyRequestId = "5333890654Z”

SupplyingAgencyRequestId = "14329018YT”

MessageInfo

ReasonForMessage = "RequestResponse”

StatusInfo

Status = " Loaned”

DueDate = "2020–06-22T23:59:59Z”

LastChange = “2020–04–24T09:06:32Z”

DeliveryInfo

DateSent = "2020–04–27T10:32:21Z”

ItemId =5784678448198”

DeliveryMethod = "Mail”

Address

PhysicalAddress

Line1 = "123 Main Street”

Locality = "Chicago”

PostalCode = "60616”

Region = "IL”

Country = "USA”

ItemFormat = "Printed”

ServiceType = “Loan”

DeliveryCosts 

CurrencyCode = "USD”

MonetaryValue = "35”

CostType = “Service

2b

Sends Supplying Agency Confirmation message with:

Header 

SupplyingAgencyId 

AgencyIdType = "ISIL”

AgencyIdValue = "CA-ABC”

RequestingAgencyId

AgencyIdType = "ISIL”

AgencyIdValue = "oclc-XYZ”

Timestamp = "2020–04–27T10:32:49Z”

RequestingAgencyRequestId = "5333890654Z”

TimestampReceived = "2020–04–27T10:32:21Z”

MessageStatus = "OK”

ReasonForMessage = "RequestResponse”

3

The requesting library (XYZ) receives the item.

3a

Sends Requesting Agency message with:

Header

SupplyingAgencyId 

AgencyIdType = "ISIL”

AgencyIdValue = "CA-ABC”

RequestingAgencyId

AgencyIdType = "ISIL”

AgencyIdValue = "oclc-XYZ”

Timestamp = "2020–05–04T13:29:53Z”

RequestingAgencyRequestId = "5333890654Z”

SupplyingAgencyRequestId = "14329018YT”

ActiveSection

Action = "Received”

3b

Sends Requesting Agency Confirmation message with:

Header 

SupplyingAgencyId 

AgencyIdType = "ISIL”

AgencyIdValue = "CA-ABC”

RequestingAgencyId

AgencyIdType = "ISIL”

AgencyIdValue = "oclc-XYZ”

Timestamp = "2020–05–04T13:30:02Z”

RequestingAgencyRequestId = "5333890654Z”

TimestampReceived = "2020–05–04T13:29:53Z”

MessageStatus = "OK”

Action = "Received”

4

The requesting library (XYZ) returns the item.

4a

Sends Requesting Agency message with:

Header

SupplyingAgencyId 

AgencyIdType = "ISIL”

AgencyIdValue = "CA-ABC”

RequestingAgencyId

AgencyIdType = "ISIL”

AgencyIdValue = "oclc-XYZ”

Timestamp = "2020–05–28T11:42:04Z”

RequestingAgencyRequestId = "5333890654Z”

SupplyingAgencyRequestId = "14329018YT”

ActiveSection

Action = ShippedReturn”

4b

Sends Requesting Agency Confirmation message with:

Header 

SupplyingAgencyId 

AgencyIdType = "ISIL”

AgencyIdValue = "CA-ABC”

RequestingAgencyId

AgencyIdType = "ISIL”

AgencyIdValue = "oclc-XYZ”

Timestamp = "2020–05–28T11:42:23Z”

RequestingAgencyRequestId = "5333890654Z”

TimestampReceived = "2020–05–28T11:42:04Z”

MessageStatus = "OK”

Action = " ShippedReturn”

5

The supplying library (ABC) receives the item back into the collection.

5a

Sends Supplying Agency message with:

Header

SupplyingAgencyId 

AgencyIdType = "ISIL”

AgencyIdValue = "CA-ABC”

RequestingAgencyId

AgencyIdType = "ISIL”

AgencyIdValue = "oclc-XYZ”

Timestamp = "2020–04–27T10:32:21Z”

RequestingAgencyRequestId = "5333890654Z”

SupplyingAgencyRequestId = "14329018YT”

MessageInfo

ReasonForMessage = "StatusChange”

StatusInfo

Status = "LoanCompleted”

LastChange = “2020–04–27T10:32:21Z”

5b

Sends Supplying Agency Confirmation message with:

Header 

SupplyingAgencyId 

AgencyIdType = "ISIL”

AgencyIdValue = "CA-ABC”

RequestingAgencyId

AgencyIdType = "ISIL”

AgencyIdValue = "oclc-XYZ”

Timestamp = "2020–04–27T10:32:41Z”

RequestingAgencyRequestId = "5333890654Z”

TimestampReceived = "2020–04–27T10:32:21Z”

MessageStatus = "OK”

ReasonForMessage = "StatusChange”

Use Case 1.  Requesting library cancels request.  

Use Case 1a.  Supplying library agrees to cancel.  

The requesting library sends a request and then cancels it.

The supplying library agrees to cancel.

See Sample Use Case A for a complete request including all mandatory and suggested elements.  

Action

Requesting library (XYZ)

Supplying library (ABC)

1

The requesting library (XYZ) sends a
request to supplying library (ABC).

1a

Sends Request message.

1b

Sends Request Confirmation message.

2

The requesting library (XYZ) decides to
cancel the request before hearing whether the supplying library is able to fulfill the request.

2a

Sends Requesting Agency message with:


ActiveSection

Action = “Cancel”

2b

Sends Requesting Agency Confirmation message.

3

The supplying library cancels the request.

3a

Sends Supplying Agency message with:

MessageInfo

ReasonforMessage = ”CancelResponse”
AnswerYesNo = ”Yes”

3b

Sends Supplying Agency Confirmation message with:

Header

ReasonforMessage = ”CancelResponse”

Use Case 1b.  Supplying library cannot cancel.

The requesting library sends a request and then cancels it.

The supplying library cannot cancel the transaction.

See Sample Use Case A for a complete request including all mandatory and suggested elements.  

Action

Requesting library (XYZ)

Supplying library (ABC)

1

The requesting library (XYZ) sends a
request to supplying library (ABC).

1a

Sends Request message.

1b

Sends Request Confirmation message.

2

The requesting library (XYZ) decides to
cancel the request before hearing whether the supplying library is able to fulfill the request.

2a

Sends Requesting Agency message with:


ActiveSection

Action = “Cancel”

2b

Sends Requesting Agency Confirmation message.

3

The supplying library cannot agree to
cancel the request as it has already
processed the item and shipped it –
although the library has not yet
informed the requester of this.

3a

Sends Supplying Agency message with:

MessageInfo

ReasonforMessage = ”CancelResponse”
AnswerYesNo = ”No”

3b

Sends Supplying Agency Confirmation message with:

Header

ReasonforMessage = ”CancelResponse”

Use Case 2.  Supplying library unable to fill request.  

The requesting library sends a request.

The supplying library is unable to fill the request.

See Sample Use Case A for a complete request including all mandatory and suggested elements.

Action

Requesting library (XYZ)

Supplying library (ABC)

1

The requesting library (XYZ) sends a
request to supplying library (ABC)

1a

Sends Request message.

1b

Sends Request Confirmation message.

2

The supplying library (ABC) cannot
supply the requested item because it is
not on the shelf.

2a

Sends Supplying Agency message with:

MessageInfo

ReasonforMessage = “RequestResponse”
ReasonUnfilled = “NotOnShelf”

StatusInfo

Status = ”Unfilled”

2b

Sends Supplying Agency Confirmation message with:

Header

ReasonforMessage = ”RequestResponse”

Use Case 3.  Requesting library requests copy of an article.   The article is sent via Article Exchange.  

The requesting library sends a request for an article.  

The supplying library sends the article via Article Exchange.

See Sample Use Case A for a complete request including all mandatory and suggested elements.

Action

Requesting library (XYZ)

Supplying library (ABC)

1

The requesting library (XYZ) sends a
request for an article.

1a

Sends Request message with:

BibliographicInfo

Title = “JAMA Neurology”

TitleOfComponent = “The Coronavirus Disease 2019 Crisis as Catalyst for Telemedicine for Chronic Neurological Disorders”

AuthorOfComponent = “Bloem BR, Dorsey ER, Okun MS”

BibliographicRecordId

BibliographicRecordIdentifierCode = “DOI

BibliographicRecordIdentifier = “10.1001/jamapediatrics.2020.1467”

PublicationInfo

PublicationType = “Article”

PublicationDate = “April 22, 2020”

ServiceInfo

ServiceType = “Copy”

RequestedDeliveryInfo

SortOrder = “0”

Address

ElectronicAddress

ElectronicAddressType = “Email”

ElectronicAddressData = “library.ill@xyz.edu

DeliveryMethod  = “Article Exchange” 

1b

Sends Request Confirmation message.

2

The supplying library (ABC) sends the article.  

2a

Sends Supplying Agency message with:

MessageInfo

ReasonforMessage = “RequestResponse”

StatusInfo

Status = “CopyCompleted”

2b

Sends Supplying Agency Confirmation message.

3

The requesting library (XYZ) receives the article.

3a

Sends Requesting Agency message with:

ActiveSection

Action = "Received”

3b

Sends Request Confirmation message.

Use Case 4.  Retry - maximum cost exceeded.

Use Case 4a.  Supplying library suggests retry due to maximum cost exceeded.  

The requesting library includes a maximum cost they are willing to pay in the initial request.  

The supplying library cannot fill a request because the costs exceed the maximum cost specified by the requesting library.

See Sample Use Case A for a complete request including all mandatory and suggested elements.

Action

Requesting library (XYZ)

Supplying library (ABC)

1

The requesting library (XYZ) sends a
request for an article, with request number XYZ456, indicating that the maximum they are willing to pay is $25 US.

1a

Sends Request message with:

Header

RequestingAgencyRequestId = “XYZ456”

BillingInfo

MaximumCosts

CurrencyCode = ”USD”
MonetaryValue = ”25”

1b

Sends Request Confirmation message.

2

The supplying library (ABC) does have
the requested item but the cost of
delivery is more than the maximum cost specified in the request.  .

The request is Unfilled and the supplying library indicates the requesting library can retry and that the cost of the service will be $35 US .  

2a

Sends Supplying Agency message with:

MessageInfo

ReasonforMessage = “RequestResponse”

ReasonUnfilled = “CostExceedsMaxCost”

StatusInfo

Status = ”RetryPossible”

RetryInfo

OfferedCosts

CurrencyCode = ”USD”

MonetaryValue = ”35”

CostType = “Service”

2b

Sends Supplying Agency Confirmation message.

Use Case 4b.  Requesting library sends retry request with a new maximum cost.

The requesting library sends a retry request with a new maximum cost (see Use Case 4a for the initial request).

See Sample Use Case A for a complete request including all mandatory and suggested elements.

Action

Requesting library (XYZ)

Supplying library (ABC)

1

The requesting library (XYZ) sends request number a retry request referencing
the request submitted in Use Case 4a,
to supplying library (ABC)
indicating that the maximum amount
they are willing to pay is $35 US.

1a

Sends Request message with:

ServiceInfo

RequestType = ”Retry”

RequestingAgencyPreviousRequestID = “XYZ456”

MaximumCosts

CurrencyCode = ”USD”

MonetaryValue = ”35”

1b

Sends Request Confirmation message.

2

The supplying library (ABC) fills the request.

2a

Sends Supplying Agency message with:
MessageInfo

ReasonforMessage = ”RequestResponse”

StatusInfo

Status = ”Loaned

2b

Sends Supplying Agency Confirmation message. 

3

The requesting library (XYZ) receives the requested item.

3a

Sends Requesting Agency message with:

ActiveSection

Action = "Received”

3b

Sends Requesting Agency Confirmation message.

Use Case 5.  Overdue loan.

The requesting library asks for a loan and keeps it past the due date.

The supplying library sends an overdue notice to the requesting library.

See Sample Use Case A for a complete request including all mandatory and suggested elements.

Action

Requesting library (XYZ)

Supplying library (ABC)

1

The requesting library (XYZ) sends a request for a loan to supplying library (ABC).

1a

Sends Request message.

1b

Sends Request Confirmation message.

2

The supplying library (ABC) loans the item.

2a

Sends Supplying Agency message.

2b

Sends Supplying Agency Confirmation message.

3

The requesting library (XYZ) receives the item.

3a

Sends Requesting Agency message.

3b

Sends Requesting Agency Confirmation message.

4

The requesting library keeps the item
past the due date. The supplying library
notifies the requesting library the item is overdue.

4a

Sends Supplying Agency message with:
MessageInfo with:

ReasonforMessage = ”StatusChange”

StatusInfo

Status = ”Overdue”

DueDate = "2020–06-22T23:59:59Z”

4b

Sends Supplying Agency Confirmation message.

5

The requesting library returns the item.

5a

Sends Requesting Agency message.

5b

Sends Requesting Agency Confirmation message.

6

The supplying library receives the item back into the collection.

6a

Sends Supplying Agency message.

6b

Sends Supplying Agency Confirmation message.

Use Case 6.  Renewal of loan.

The requesting library asks for a loan and then asks for a renewal.

The supplying library renews the loan for the requesting library and sends an updated due date.

See Sample Use Case A for a complete request including all mandatory and suggested elements.

Action

Requesting library (XYZ)

Supplying library (ABC)

1

The requesting library (XYZ) sends a request for a loan to supplying library (ABC).

1a

Sends Request message.

1b

Sends Request Confirmation message.

2

The supplying library (ABC) loans the item.

2a

Sends Supplying Agency message.

2b

Sends Supplying Agency Confirmation message.

3

The requesting library (XYZ) receives the item.

3a

Sends Requesting Agency message.

3b

Sends Requesting Agency Confirmation message.

4

The requesting library (XYZ) asks for the loan to be renewed.

4a

Sends Requesting Agency message with:
ActiveSection

Action = "Renew”

4b

Sends Requesting Agency Confirmation message.

5

The supplying library (ABC) agrees to the renewal and sends a new due date.  

5a

Sends Supplying Agency message sends with:
MessageInfo

ReasonForMessage = “RenewResponse”

AnswerYesNo = ”Yes”

StatusInfo

DueDate =  "2020–07-06T23:59:59Z”

Status = ”Loaned”

5b

Sends Supplying Agency Confirmation message.

6

The requesting library (XYZ) returns the item.

6a

Sends Requesting Agency message.

6b

Sends Requesting Agency Confirmation message.

7

The supplying library (ABC) receives the item back into the collection.

7a

Sends Supplying Agency message.

7b

Sends Supplying Agency Confirmation message.

Use Case 7.  Consortium request.  

Requesting library (XYZ) and supplying library (ABC) belong to Consortium AAA.

The requesting library asks for a loan.

The supplying library supplies the loan to the requesting library.

See Sample Use Case A for a complete request including all mandatory and suggested elements.

Action

Requesting library (XYZ)

Supplying library (ABC)

1

The requesting library (XYZ) sends a request for a loan to supplying library (ABC).

1a

Sends Request message with:

Header

SupplyingAgencyId 

AgencyIdType = "ISIL”

AgencyIdValue = "CA-ABC”

RequestingAgencyId

AgencyIdType = "OCLC”

AgencyIdValue = "oclc-XYZ”

ConsortialId

 AgencyIdType = "ICOLC”

AgencyIdValue = "AAA”

Timestamp = "2020–04–24T09:06:32Z”

RequestingAgencyRequestId = "5333890654Z”

1b

Sends Request Confirmation message.

2

The supplying library (ABC) loans the item.

2a

Sends Supplying Agency message.

2b

Sends Supplying Agency Confirmation message.

3

The requesting library (XYZ) receives the item.

3a

Sends Requesting Agency message.

3b

Sends Requesting Agency Confirmation message.

4

The requesting library returns the item.

5a

Sends Requesting Agency message.

5b

Sends Requesting Agency Confirmation message.

5

The supplying library receives the item back into the collection.

6a

Sends Supplying Agency message.

6b

Sends Supplying Agency Confirmation message.

Use Case 8.  Multiple item request for a specific time period.

The requesting library is looking for 12 copies of a title for a study group for a specific period.  

The requesting library sends 12 separate requests each with the same MultipleItemRequestId so that the requests can be grouped in the local application.  

Note:  s ending requests for more than one copy and for a specific period (booking) presupposes agreement between the libraries to support these features.

A supplying library not supporting this feature responds with Error Data in the Confirmation message.

This example illustrates 3 use cases

  • the supplying libraries not supporting the feature
  • the supplying libraries supporting the feature
  • the supplying libraries supporting the feature that can deliver for the specified period

The requesting library does not get all the wanted copies in the first try. (The next steps of sending the request to more libraries is not included in the example.)

In this example, when the supplying libraries lend the items, they all choose to give the requesting library one week after the requested EndDate to return the items.

The requesting library can use the same MultipleItemRequestId for all requests to all other libraries. In the requesting library’s local application MultipleItemRequestId is used to bundle the requests, the supplying library can also use this id to bundle requests in their local application.

Action

Requesting library (XYZ)

Supplying libraries

1

The requesting library (XYZ) sends three separate requests each with a unique request number to four different supplying libraries asking for copies for a specific period.

1a

Sends Request message with:

Header

MultipleItemRequestId  = ”123456”

RequestingAgencyRequestId = “unique number

ServiceInfo

RequestSubType = “BookingRequest”

RequestSubType = “MultipleItemRequest”

ServiceType = ”Loan”

StartDate= ”2020–06–01T23:59:59Z”

EndDate = ”2020–06–30T23:59:59Z”

1b1

Supplying library supports the feature  sends Request Confirmation messages.

1b2

Supplying library does not support the feature  sends Request Confirmation messages  with:

Header

ErrorData

UnrecognisedDataElement = “MultipleItemRequestId”

UnrecognisedDataElement = “StartDate”

UnrecognisedDataElement = “EndDate”

2

The supplying libraries reply with yes or no to lending the items for the requested period

2a1

Supplying library that can fill the request sends
Supplying Agency messages with:
MessageInfo

Reason for Message = “RequestResponse”

StatusInfo

Status = ”WillSupply”

2a2

Supplying library that cannot  fill the request sends
Supplying Agency messages with:
MessageInfo

Reason for Message = “RequestResponse”

StatusInfo

Status = ”Unfilled”

2b

Sends Supplying Agency Confirmation messages.

3

The supplying libraries (that support the feature and have sent Supplying Agency Message with Status = WillSupply) lends the item.

3a

Supplying library that can fill the request sends
Supplying Agency messages with:
MessageInfo

Reason for Message = “StatusChange”

StatusInfo

Status = ”Loaned”

DueDate = ”2020–07–07T23:59:59Z”

DeliveryInfo

 ItemId = ”3434123434555”

3b

Sends Supplying Agency Confirmation messages.

4

The requesting library (XYZ) receives the item.

4a

Sends RequestingAgency message.

4b

Sends Requesting Agency Confirmation message.

5

The requesting library returns the item.

5a

Sends RequestingAgency message.

5b

Sends Requesting Agency Confirmation message.

6

The supplying libraries receive the item and it is returned into the collection.

6a

Sends Supplying Agency message.

6b

Sends Supplying Agency Confirmation message.

Use Case 8a.  Multiple item request - Retry

The requesting library is looking for 12 copies of a title.  

The requesting library sends 12 separate requests each with the same MultipleItemRequestId so that the requests can be grouped in the local application.  

Two of the supplying libraries indicate the requested items are not currently available and suggest a retry is possible.  

The requesting library sends retry requests.  

The requesting library uses the same MultipleItemRequestId for all requests to all other libraries. In the requesting library’s local application MultipleItemRequestId is used to bundle the requests, the supplying library can also use this id to bundle requests in their local application.

Action

Requesting library (XYZ)

Supplying libraries

1

The requesting library (XYZ) sends two separate requests each with a unique request number to six different supplying libraries.

For each request there is a MaxCost of £20.  

1a

Sends Request messages with:

Header

MultipleItemRequestId  = ”41352446”

RequestingAgencyRequestId = “unique number

ServiceInfo

RequestSubType = “MultipleItemRequest”

ServiceType = ”Loan”

BillingInfo

MaximumCosts

CurrencyCode = “GBP”

MonetaryValue = "20”

1b1

Each supplying library sends Request Confirmation message for each request.

2

Two of the supplying libraries reply suggesting the requesting library send a retry request since the maximum cost is exceeded.

2a

Supplying library (FGH) sends
Supplying Agency messages with:
MessageInfo

Status = ”RetryPossible”

RetryInfo

OfferedCosts

CurrencyCode = ”GBP”

MonetaryValue = ”28”

CostType = “Service”

Supplying library (JKL) sends
Supplying Agency message with:
MessageInfo

Status = ”RetryPossible”

RetryInfo

OfferedCosts

CurrencyCode = ”GBP”

MonetaryValue = ”30”

CostType = “Service”

2b

Sends Supplying Agency Confirmation messages.

Action

Requesting library (XYZ)

Supplying libraries

1

The requesting library (XYZ) sends two separate retry requests to supplying library (FGH).  For each request there is a MaxCost of £28.  

The requesting library (XYZ) sends two separate retry requests to supplying library (JKL).  For each request there is a MaxCost of £30.

   

1

Sends Request messages with:

Header

MultipleItemRequestId  = ”41352446”

RequestingAgencyRequestId = “unique number

ServiceInfo

RequestType = “Retry”

RequestSubType = “MultipleItemRequest”

RequestingAgencyPreviousRequestID = “unique request id used in action 1 above

ServiceType = ”Loan”

BillingInfo

MaximumCosts

CurrencyCode = “GBP”

MonetaryValue = "28”

Sends Request messages with:

Header

MultipleItemRequestId  = ”41352446”

RequestingAgencyRequestId = “unique number

ServiceInfo

RequestType = “Retry”

RequestSubType = “MultipleItemRequest”

RequestingAgencyPreviousRequestID = “unique request id used in action 1 above

ServiceType = ”Loan”

BillingInfo

MaximumCosts

CurrencyCode = “GBP”

MonetaryValue = "30”

1b

Sends Requesting Agency Confirmation messages.

2

The supplying libraries lend the items.  

2a

Sends Supplying Agency messages.

2b

Sends Supplying Agency Confirmation messages.

3

The requesting library receives the items.  

3a

Sends RequestingAgency messages.

3b

Sends Requesting Agency Confirmation messages.

4

The requesting library returns the items.

4a

Sends RequestingAgency messages.

4b

Sends Requesting Agency Confirmation messages.

The supplying libraries receive the items and they are  returned into the collection.

5a

Sends Supplying Agency messages.

5b

Sends Supplying Agency Confirmation messages.

Use Case 9.  Return item to different location at supplying library.

In this example, the material was supplied from a physical location (ABD) of the supplying library which is different from the physical location represented by the id of the supplying library (ABC).

The supplying library uses ReturnInfo to ask for the material to be returned to the physical location from which it was supplied.

Action

Requesting library (XYZ)

Supplying library (ABC)

1

The requesting library (XYZ) sends a request to supplying Library (ABC)

1a

Sends Request message.

1b

Sends Request Confirmation message.

2

The supplying library (ABC) lends the item from the physical location (ABD). Asks for material to be returned to the physical location when the loan is due.

2a

Sends Supplying Agency message with:
ReturnInfo

ReturnAgencyId

AgencyIdType = “ISIL”

AgencyIdValue = “CA-ABD”

Name = “ABD remote storage”

PhysicalAddress

Line1 = “Library ABC’s  remote storage facility”

Line2 = 456 Industrial Avenue

Locality = “Ottawa”

PostalCode = “K2T 3N8”

Region = “Ontario”

Country = “Canada”

2b

Sends Supplying Agency Confirmation message.

3

The requesting library (XYZ) receives the item.

3a

Sends Requesting Agency message. 

3b

Sends Requesting Agency Confirmation message.

4

The requesting library returns the item to location (ABD).

4a

Sends Requesting Agency message with:

ActiveSection

Action = “ShippedForward”

4b

Sends Requesting Agency Confirmation message.

5

The supplying library receives the item and returns it back into the collection.

5a

Sends Supplying Agency message. 

5b

Sends Supplying Agency Confirmation message

Use Case 10.   Supply an item when it becomes available at a future date.

The requesting library asks for a loan.  The item is currently on loan but the supplying agency will loan the material to the requesting library when it becomes available.

The supplying library uses StatusInfo -> Status = WillSupply and StatusInfo -> expectedDeliveryDate to indicate the item is not immediately available but can be supplied at a future date.  

There are two requests, the initial request and the retry request, associated with this use case both are outlined below.  

Initial Request.  

Action

Requesting library (XYZ)

Supplying library (ABC)

1

The requesting library (XYZ) sends a request to supplying library (ABC).

1a

Sends Request message.

1b

Sends Request Confirmation message.

2

The supplying library (ABC) cannot supply the material right away as the material is currently on loan but will send it when it becomes available.

2a

Sends Supplying Agency message with:

MessageInfo

Reason for Message = “RequestResponse”

ReasonRetry = “OnLoan”

StatusInfo

Status = “RetryPossible”

RetryInfo

RetryAfter = “2020–06–30T23:59:59Z”

2b

Sends Supplying Agency Confirmation message.

Retry Request

Once the suggested retry date has passed, the requesting library sends another request to the supplying library.  

Action

Requesting library (XYZ)

Supplying library (ABC)

1

The requesting library (XYZ) sends a retry request to supplying library (ABC).

1a

Sends Request message with:

ServiceInfo

RequestType = “Retry”

1b

Sends Request Confirmation message.

2

The supplying library (ABC) loans the item.

2a

Sends Supplying Agency message.

2b

Sends Supplying Agency Confirmation message.

3

The requesting library (XYZ) receives the item.

3a

Sends Requesting Agency message.

3b

Sends Requesting Agency Confirmation message.

4

The requesting library (XYZ) returns the item.

4a

Sends Requesting Agency message.

4b

Sends Requesting Agency Confirmation message.

5

The supplying library (ABC) receives the item back into the collection.

5a

Sends Supplying Agency message.

5b

Sends Supplying Agency Confirmation message.

Use Case 11.   Retry - requested edition not available.  

The requesting library asks for a specific edition.  

The supplying library indicates the requested edition is not available and suggests the requesting library send a retry request.  

There are two requests, the initial request and the retry request associated with this use case both are outlined below.  

Initial Request

Action

Requesting library (XYZ)

Supplying library (ABC)

1

The requesting library (XYZ) sends a request to supplying library (ABC), indicating the Maximum Cost they are willing to pay.  

1a

Sends Request message with:

BibliographicInfo

Edition = "5th”

ServiceInfo

PreferredEdition = “ThisEdition”

1b

Sends Request Confirmation message.

2

The supplying library (ABC) cannot supply the copy with the max cost indicated by the requesting library.

The supplying library indicates what the cost will be and suggests a retry.  

2a

Sends Supplying Agency message with:

MessageInfo

Reason for Message = “RequestResponse”

ReasonRetry = “ReqEditionNotPossible”

StatusInfo

Status = “RetryPossible”

RetryInfo

Edition = “7th”

Edition = “9th”

Edition = “10th”

2b

Sends Supplying Agency Confirmation message.

Retry Request

The requesting library sends a retry request specifying that the 7th edition is acceptable.

Action

Requesting library (XYZ)

Supplying library (ABC)

1

The requesting library (XYZ) sends a retry
request with an updated Maximum Cost.

1a

Sends Request message with:

BibliographicInfo

Edition = “7th”

ServiceInfo

RequestType = “Retry”

1b

Sends Request Confirmation message.

2

The supplying library (ABC) sends the article.  

2a

Sends Supplying Agency message.

2b

Sends Supplying Agency Confirmation message.

3

The requesting library (XYZ) receives the article.

3a

Sends Requesting Agency message.

3b

Sends Request Confirmation message.

Use Case 12.  Supplying library sends requested item directly to the patron.  

Requesting library asks the supplying library to deliver a document directly to the patron and the supplying library does so.

Note:   Once the requesting library receives the Supplying Agency message that the item has been loaned and has been shipped, the workflow is complete.  There is no further messaging between the supplying and requesting libraries.  

Action

Requesting library (XYZ)

Supplying library (ABC)

1

The requesting library (XYZ) sends a request for a loan to supplying library (ABC).  

The requesting library asks for the loan to be sent directly to the patron at the address provided.  

1a

Sends Request message with: 

RequestedDeliveryInfo

DeliveryMethod  = “Mail”

PatronInfo

Surname = “Black”

GivenName = “John”

SendToPatron = “Y”

Address

PhysicalAddress

Line1 = "867 Elm Street”

Locality = "Evanston”

PostalCode = "60204”

Region = "IL”

Country = "USA”

1b

Sends Request Confirmation message.

2

The supplying library (ABC) loans the item and sends it directly to the patron.  

2a

Sends Supplying Agency message with:

DeliveryInfo

SentToPatron = “Y”

2b

Sends Supplying Agency Confirmation message.

Use Case 13. Supplying library DOES NOT send requested item directly to the patron.  

Requesting library asks supplying library to deliver document directly to the patron and supplying library does not.  See also Use Case 15.

Action

Requesting library (XYZ)

Supplying library (ABC)

1

The requesting library (XYZ) sends a request for a loan to supplying library (ABC).  

The requesting library asks for the loan to be sent directly to the patron at the address provided.  

1a

Sends Request message.

1b

Sends Request Confirmation message.

2

The supplying library (ABC) loans the item and sends it to the library not directly to the patron as originally requested.

2a

Sends Supplying Agency message with:

DeliveryInfo

SentToPatron = “N”

2b

Sends Supplying Agency Confirmation message.

3

The requesting library (XYZ) receives the item.

3a

Sends Requesting Agency message.

3b

Sends Requesting Agency Confirmation message.

4

The requesting library returns the item.

4a

Sends Requesting Agency message.

4b

Sends Requesting Agency Confirmation message.

5

The supplying library receives the item back into the collection.

5a

Sends Supplying Agency message.

5b

Sends Supplying Agency Confirmation message.

Use Case 14. Supplying library sends a digital loan (CDL) with an expiry date.

The requesting library submits a request indicating either a loan in any format is acceptable.  

The supplying library is able to provide a digital loan (via CDL) with a due date.

Action

Requesting library (XYZ)

Supplying library (ABC)

1

The requesting library (XYZ) sends a  request for a loan to supplying library (ABC).  

1a

Sends Request message with:

ServiceInfo

ServiceType = “Loan”

1b

Sends Request Confirmation message.

2

The supplying library (ABC) is able to supply as a digital loan.

The supplying library sends a URL for a digital loan and indicates the due date.

The barcode of the book is included with the message

The structure of the URL indicates the loan follows the same processing as loan of a print item, i.e., there is an expiry date and renewals and recalls are possible.  

2a

Sends Supplying Agency message.

MessageInfo

ReasonForMessage = “RequestResponse”

StatusInfo

Status = “Loaned”

DueDate = “2020-06-30T23:59:59Z”

DeliveryInfo

DateSent = “2020-06-02T13:29:51Z”

URL = “ http://urltocontent.edu/token

DeliveryMethod = “URL”

DeliveredFormat = “PDF”

ServiceType = “Loan”

2b

Sends Supplying Agency Confirmation message.

3

The requesting library (XYZ) receives the digital loan.

4

The requesting library (XYZ) returns the digital loan or the loan expires.  

4a

Sends Requesting Agency message.

4b

Sends Requesting Agency Confirmation message.

5

The supplying library (ABC) receives the digital loan back into the collection.

5a

Sends Supplying Agency message.

5b

Sends Supplying Agency Confirmation message.

Use Case 15. Supplying library sends a digital loan (CDL)

The requesting library sends a request for a loan.  

The supplying library is not able to send a physical loan, but can send a digital loan (via CDL).  

There are two requests, the initial request and the retry request, associated with this use case both are outlined below.  

Initial request.  

Action

Requesting library (XYZ)

Supplying library (ABC)

1

The requesting library (XYZ) sends a request for a loan to supplying library (ABC).  

1a

Sends Request message with:

ServiceInfo

ServiceType = "Loan”

PreferredFormat = "Printed”

1b

Sends Request Confirmation message.

2

The supplying library (ABC) cannot loan a printed copy of the item but can supply a digital loan (via CDL).  

2a

Sends Supplying Agency message with:

MessageInfo

ReasonForMessage = “RequestResponse”

ReasonRetry = “ReqFormatNotPossible

RetryInfo

ItemFormat= “PDF”

StatusInfo

Status = “RetryPossible”

2b

Sends Supplying Agency Confirmation message.

Retry request.

Action

Requesting library (XYZ)

Supplying library (ABC)

1

The requesting library (XYZ) sends a retry request for a digital loan to supplying library (ABC).  

1a

Sends Request message with:

ServiceInfo

RequestType = “Retry”

ItemFormat = “PDF”

1b

Sends Request Confirmation message.

2

The supplying library (ABC) sends a digital loan.  

2a

Sends Supplying Agency message with:

MessageInfo

ReasonForMessage = “RequestResponse”

StatusInfo

Status = “Loaned”

DueDate = “2020-10-30T23:59:59Z”

DeliveryInfo

DateSent = “2020-10-06T13:29:51Z”

URL = “ http://urltocontent.edu/token

DeliveryMethod = “URL”

ItemFormat = “PDF”

ServiceType = “Loan”

2b

Sends Supplying Agency Confirmation message.

3

The requesting library (XYZ) receives the digital loan.

3a

Sends Requesting Agency message.

3b

Sends Requesting Agency Confirmation message.

Use Case 16. Supplying library supplies an Open Access electronic copy of a book.   

The requesting library sends a request for a book.  

The supplying library is able to send an electronic copy of the book.  

Action

Requesting library (XYZ)

Supplying library (ABC)

1

The requesting library (XYZ) sends a request for a book to supplying library (ABC), indicating that any service type can be accepted. In addition, no format is specified indicating the requesting library will accept any format.    

1a

Sends Request message with:

PublicationInfo

PublicationType = “Book”

ServiceInfo

ServiceType = “CopyOrLoan

1b

Sends Request Confirmation message.

2

The supplying library (ABC) sends an electronic copy of the book.  

2a

Sends Supplying Agency message with:

MessageInfo

ReasonForMessage = “RequestResponse”

StatusInfo

Status = “CopyCompleted”

DeliveryInfo

DeliveryMethod = “URL”

URL = “http://urltocontent.edu/some.pdf”

ItemFormat = “PDF”

2b

Sends Supplying Agency Confirmation message.

3

The requesting library (XYZ) receives the copy.

3a

Sends Requesting Agency message.Courier

3b

Sends Requesting Agency Confirmation message.

Use Case 17. Supplying library sends item via courier and supplies tracking information.  The package is insured.  

The requesting library submits a request and indicates courier as the preferred delivery method.  

The supplying library sends the item via courier and includes shipment tracking information for the requesting library.

Action

Requesting library (XYZ)

Supplying library (ABC)

1

The requesting library (XYZ) sends a request for a loan to supplying library (ABC).  

The requesting library asks for the item to be shipped via courier.  

1a

Sends Request message with: 

RequestedDeliveryInfo

SortOrder = "0”

Address

PhysicalAddress

Line1 = "123 Main Street”

Locality = "Chicago”

PostalCode = "60616”

Region = "IL”

Country = "USA”

DeliveryMethod = "Courier"

CourierName = "FedEx"

1b

Sends Request Confirmation message.

2

The supplying library (ABC) loans the item and sends it by courier.  

The supplying library provides tracking information on the shipment.  

The supplying library indicates the cost to insure the package.

2a

Sends Supplying Agency message with:

DeliveryInfo

DeliveryMethod = “Courier

DeliveryCosts

CurrencyCode = “CAD”

MonetaryValue = “14”

CostType = “Insurance

CurrencyCode = “CAD”

MonetaryValue = “35”

CostType = “Service

ShippingInfo

CourierName = “FedEx

TrackingId = “133736897570”

Insurance = “Y”

InsuranceThirdParty = “N”

2b

Sends Supplying Agency Confirmation message.

3

The requesting library (XYZ)  receives the loan. 

3a

Sends Requesting Agency message.

3b

Sends Requesting Agency Confirmation message.

4

The requesting library returns the loan.  

4a

Sends Requesting Agency message.

4b

Sends Requesting Agency Confirmation message.

5

The supplying library receives the item back into the collection.

5a

Sends Supplying Agency message.

5b

Sends Supplying Agency Confirmation message.

Use Case 18  Error - requesting library asks to cancel a request the supplying library doesn't recognise.

The requesting library sends a request and then cancels it.

The supplying library does not recognize the request id provided by the requesting library, and sends an error.

See Sample Use Case A for a complete request including all mandatory and suggested elements.  

Action

Requesting library (XYZ)

Supplying library (ABC)

1

The requesting library (XYZ) sends a
request to supplying library (ABC).

1a

Sends Request message with: 

Header

RequestingAgencyRequestId = “X90223456”

1b

Sends Request Confirmation message.

2

The requesting library (XYZ) decides to
cancel the request before hearing whether the supplying library is able to fulfill the request.

2a

Sends Requesting Agency message with:

Header

RequestingAgencyRequestId = “X90238231”

ActiveSection

Action = “Cancel”

The supplying library (ABC) does not recognize the request id sent in the Requesting Agency message and sends an error in the Requesting Agency confirmation message.  

2b

Sends Requesting Agency Confirmation message with:

Header

ErrorData

UnrecognisedDataValue = “RequestingAgencyRequestId=X90238231”

Use Case 19 Error - requesting library uses an open code scheme that is not recognized by the supplying library.

The requesting library sends a request..

The supplying library cannot fill the request but uses an open code scheme, ReasonForNo, that is not recognized by the requesting library.

The requesting library sends an error.  

See Sample Use Case A for a complete request including all mandatory and suggested elements.  

Action

Requesting library (XYZ)

Supplying library (ABC)

1

The requesting library (XYZ) sends a
request to supplying library (ABC).

1a

Sends Request message.

1b

Sends Request Confirmation message.

2

The supplying library (ABC) is unable to fill the request and sends the reason the request cannot be filled using a locally defined scheme,  

2a

Sends Supplying Agency message with:  

MessageInfo

     ReasonUnfilled

          Scheme = “ http://somecompany.com/ISO18626/schemes/ReasonsForNo.scm

           Value = “NotOnShelf”

The requesting library does not recognize the ReasonUnfilled  scheme referenced by the supplying library and sends an error in the confirmation message.  

2b

Sends Supplying Agency Confirmation Message with:  

UnrecognisedDataValue = “ReasonUnfilled/Scheme = http://somecompany.com/ISO18626/schemes/ReasonsForNo.scm

Use Case 20 Error - supplying library uses an unfamiliar value from a default open code scheme.

The requesting library sends a request..

The supplying library cannot fill the request but uses a ReasonUnfilled value, ItemDoesNotCirculate, that is not recognized by the requesting library.

The requesting library sends an error.  

See Sample Use Case A for a complete request including all mandatory and suggested elements.  

Action

Requesting library (XYZ)

Supplying library (ABC)

1

The requesting library (XYZ) sends a
request to supplying library (ABC).

1a

Sends Request message.

1b

Sends Request Confirmation message.

2

The supplying library (ABC) is unable to fill the request and sends a ReasonUnfilled value from a locally defined list.    

2a

Sends Supplying Agency message with:  

MessageInfo

ReasonUnfilled = “ItemDoesNotCirculate”

The requesting library does not recognize the ReasonUnfilled value referenced by the supplying library and sends an error in the confirmation message.  

2b

Sends Supplying Agency Confirmation message with:  

UnrecognisedDataValue = “ReasonForNo - Value = ItemDoesNotCirculate”

 

 


CILLT has done its best to ensure that the information contained on this Website and the resources available for download are accurate.


You agree to take full responsibility for any products/works developed as a result of the use, or non-use, of the information available on this Website or the resources available for download from this Website.