Skip to content

Commit

Permalink
Merge pull request #321 from bic-org-uk/v1.3.0-rc
Browse files Browse the repository at this point in the history
Release of v1.3.0
  • Loading branch information
mdovey committed Dec 16, 2023
2 parents 0c1e52d + c18da6f commit 7f22c42
Show file tree
Hide file tree
Showing 25 changed files with 39,132 additions and 2,803 deletions.
5 changes: 5 additions & 0 deletions LICENSE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# License to use BIC Standards

The use of the documents in this repository is subject to the License to use BIC Standards.

The license terms and conditions can be found at <http://www.bic.org.uk/resources/license-to-use-bic-standards/>.
Binary file removed LICENSE.pdf
Binary file not shown.
18 changes: 13 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,24 +8,32 @@
This repository holds five things:

* The documentation for the BIC Library Communication Framework:
* [Current release on the __master__ branch](../../tree/master/docs)
* [Current release on the __main__ branch](../../tree/main/docs)
* [Next release in development on the __develop__ branch](../../tree/develop/docs)
* The XML Schema for the BIC Library Communication Framework:
* [Current release on the __master__ branch](../../tree/master/lcf-schema/src/main/resources)
* [Current release on the __main__ branch](../../tree/main/lcf-schema/src/main/resources)
* [Next release in development on the __develop__ branch](../../tree/develop/lcf-schema/src/main/resources)
* Example source code
* [Current release on the __master__ branch](../../tree/master/lcf-samples)
* [Current release on the __main__ branch](../../tree/main/lcf-samples)
* [Next release in development on the __develop__ branch](../../tree/develop/lcf-samples/)
* The [issue tracker](../../issues), used to request amendments to the standard, or seek clarifications
* The [wiki](../../wiki) including FAQs (such as raising issues and registering extensions), editorial processes, other information and tips

## Getting Started ##
### Getting Started ###
1. Read the documentation and wiki;
2. Download the XML Schemas and sample code;
3. Make the world a more open and integrated place.

## Twitter ##
[@bic_lcf](http://twitter.com/bic_lcf) is our Twitter account, please follow us!

*© 2019 [Book Industry Communication](http://www.bic.org.uk)*
## License to use BIC Standards

The use of the documents in this repository is subject to the License to use BIC Standards.

The license terms and conditions can be found at <http://www.bic.org.uk/resources/license-to-use-bic-standards/>.



*© 2023 [Book Industry Communication](http://www.bic.org.uk)*

219 changes: 117 additions & 102 deletions docs/LCF-CodeLists.md

Large diffs are not rendered by default.

200 changes: 122 additions & 78 deletions docs/LCF-DataFrameworks.md

Large diffs are not rendered by default.

179 changes: 116 additions & 63 deletions docs/LCF-ImplementationProfiles.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
title: LCF v1.2.0 Implementation Profiles
title: LCF Implementation Profiles Issue 3
menu: Implementation Profiles
weight: 6
---
Expand All @@ -12,75 +12,128 @@ weight: 6

## Implementation Profiles

### Issue 2
### Issue 3

### 23 December 2019
### 16 December 2023

---

### Profiles

This document defines implementation profiles for the LCF data communication framework.

The use of this document is subject to license terms and conditions that can be found *at* <http://www.bic.org.uk/files/bicstandardslicence.pdf>.
The use of this document is subject to license terms and conditions that can be found *at* <http://www.bic.org.uk/resources/license-to-use-bic-standards/>.

#### P00 Core LMS Profile
*(Added in Issue 2)*

This profile defines which of the core functions by entity type need to be supported by an LMS.

| Core&nbsp;function: | 01<br/>Retrieve/View entity instance information | 02<br/>Retrieve entity instance list | 03<br/>Create entity instance | 04<br/>Modify entity instance | 05</br>Delete entity instance|
|---------------------------|----|----|----|----|----|
| E01<br/>Manifestation | y | y | | | |
| E02<br/>Item | y | y | | y | |
| E03<br/>Patron | y | y | y | y | y |
| E04<br/>Location | y | y | | | |
| E05<br/>Loan | y | y | | | |
| E06<br/>Reservation | y | y | y | | y |
| E07<br/>Charge | y | y | y | | |
| E08<br/>Payment | y | y | y | | |
| E09<br/>Contact | y | y | y | y | |
| E13<br/>Authorization | y | y | | | |
| E14<br/>Authority/Inst. | y | y | | | |
| E15<br/>Message/alert | y | y | | | |


#### P01 Self Issue

This profile has the following function groups:

* Basic check-in / check-out with standard HTTP response (no XML payload)
* Handle item security information on check-in / check-out
* Retrieve Patron-specific loan information
* Reservation-related activities (retrieve reservation information, make / cancel reservations)
* Handle payments (handle charge refs in check-in/check-out response, make payment).

| | *Basic* | *Security* | *Loans* | *Reservations* | *Payments* |
|------------------------|---------------------|----------------------|---------------|----------------|-------------------|
| Basic check out | *X* | | | | |
| Check out with <br/>security | | *X* | | | |
| Check out with <br/>charge | | | | | *X* |
| Basic check in | *X* | | | | |
| Check in with <br/>security | | *X* | | | |
| Check in with <br/>charge | | | | | *X* |
| List checked-out items (loans) | | | *X* | | |
| List reserved items | | | | *X* | |
| Make payment | | | | | *X* |

#### P02 Patron information maintenance

This profile has the following function groups:

* Maintain personal contact details
* Manage reservations
* Manage charges

| | Personal | Reservations | Charges |
|------------------------|---------------------|----------------------|---------------|
| Retrieve patron record | *X* | | |
| Modify patron record | *X* | | |
| List contact records | *X* | | |
| Modify contact record | *X* | | |
| Delete contact record | *X* | | |
| List reserved items | | *X* | |
| Cancel reservation | | *X* | |
*(Added in Issue 2, substantially revised in Issue 3)*

This profile defines which of the LCF core functions by entity type need to be supported by an LMS that implements LCF. As a minimum, an LMS must support all retrieval functions, to allow an authorised terminal, operated by an authorised user, to retrieve specific entities and lists of entities of all the specified types.

The core functions that must be supported are:

- 01 Retrieve entity instance information
- 02 Retrieve entity instance list

The following function elements in requests must be supported: Q01D01, Q01D02, Q02D01.

The following function elements in responses must be supported: R01C01, R02D01, _either_ R02D06 _or_ R02C07 _or both_.

Using these core functions it must be possible for authorised users to operate authorised terminals to retrieve instances and lists for each of the following entity types:

- E01 Manifestation
- E02 Item
- E03 Patron
- E04 Location
- E05 Loan
- E06 Reservation
- E07 Charge
- E08 Payment
- E09 Contact
- E13 Authorisation
- E14 Authority/institution
- E15 Message/alert

#### P01 Self Issue
*(Substantially revised in Issue 3)*

Implementation of this profile involves implementation of one or more of the following four function groups:

**P01.1**: Basic self-issue, including check-out, renewal and check-in.
**P01.2**: Reservations, including making reservations
**P01.3**: Payments, including the ability of the terminal user to make payments and of the server to accept payments.

*P01.1 Basic self-issue*

In addition to the core functions specified in Profile P00, the following functions must be supported:

- 11 Check-out/renewal
- 12 Check-in

*P01.2 Reservations*

In addition to the core functions specified in Profile P00, the following function must also be supported:

- 16 Reserve manifestation / item

*P01.3 Payments*

In addition to the core functions specified in Profile P00, the following function must also be supported:

- 13 Patron payment

#### P02 Record management
*(Substantially revised in Issue 3)*

Implementation of this profile involves implementation of one or more of the following five function groups:

**P02.1**: Maintain patron contact details, involving the creation, modification or deletion of Contact records and possible consequential modification of the associated Patron record.
**P02.2**: Patron cancellation of library membership, involving the consequential modification or deletion of Patron records and any associated Contact and Reservation records; it is assumed that all Charges would have been paid and all Items on Loan would have been checked in.
**P02.3**: Manage loans, involving the creation, modification or deletion of Loan records and possible consequential modification of Item, Patron and Charge records.
**P02.4**: Manage reservations, involving the creation, modification or deletion of Reservation records and possible consequential modification of Item, Patron and Charge records.
**P02.5**: Manage charges, involving the creation, modification or deletion of Charge records and possible consequential modification of Item, Patron, Loan and Reservation records.

*P02.1 Maintain patron contact details*

In addition to the core functions specified in Profile P00, the following functions must be supported for the specified entity types:

- 03 Create new entity, to add a new contact, for entity type E09 Contact
- 04 Modify existing entity, to change contact details, for entity type E09 Contact
- 04 Modify existing entity, to add or delete contact references,, for entity type E03 Patron
- 05 Delete entity, to remove an existing contact, for entity type E09 Contact

*P02.2 Patron cancellation of library membership

In addition to the core functions specified in Profile P00, the following functions must be supported for the specified entity types:

- 04 Modify existing entity, to change patron status, for entity type E03 Patron
- 04 Modify existing entity, to remove any references to this patron, for entity types E02 Item and E05 Loan
- 05 Delete entity, for entity type E09 Contact

*P02.3 Manage loans*

In addition to the core functions specified in Profile P00, the following functions must be supported for the specified entity types:

- 03 Create new entity, to create a new loan, for entity type E05 Loan
- 04 Modify existing entity, to change loan details, for entity type E05 Loan
- 04 Modify existing entity, to change charge details associated with a loan, for entity type E07 Charge
- 04 Modify existing entity, to add or remove references to a loan for entity types E02 Item, E03 Patron and E07 Charge
- 05 Delete entity, for entity type E05 Loan

*P02.4 Manage reservations*

In addition to the core functions specified in Profile P00, the following functions must be supported for the specified entity types:

- 03 Create new entity, to create a new reservation, for entity type E06 Reservation
- 04 Modify existing entity, to change reservation details, for entity type E06 Reservation
- 04 Modify existing entity, to change charge details associated with a reservation, for entity type E07 Charge
- 04 Modify existing entity, to add or remove references to a reservation for entity types E02 Item, E03 Patron and E07 Charge
- 05 Delete entity, for entity type E06 Reservation

*P02.5 Manage charges*

In addition to the core functions specified in Profile P00, the following functions must be supported for the specified entity types:

- 03 Create new entity, to create a new reservation, for entity type E07 Charge
- 04 Modify existing entity, to change charge details, for entity type E07 Charge
- 04 Modify existing entity, to add or remove references to a charge for entity types E02 Item, E03 Patron, E05 Loan and E06 Reservation
- 05 Delete entity, for entity type E07 Charge
Loading

0 comments on commit 7f22c42

Please sign in to comment.