...
One approach could be to expose all relevant Information in the response. In other words, the new RTAC -2 should just provide all (non classified) attributes of 'holding', 'item', and 'location'. This will allow a library to use all attributes of this objects to pass hints to a discovery system. (e.g. the public note fields). The current RTAC provides only a selection of all possible information, which leads into with the well documented limitations.
Request
Task | Method | Path | PostParms |
---|---|---|---|
Inquirer information about one instance defined by UUID | GET | /rtac/uuid/{instance_uuid} | |
Inquirer information about one instance defined by HRID | GET | /rtac/hrid/{instance_uuid} | |
Inquirer information about multiple instances defined by UUID | POST | /rtac/uuid | List of UUIDs |
Inquirer information about multiple instances defined by HRID | POST | /rtac/hrid | List of HRIDs |
...
- HRID as query parameter is indispensable for most German libraries.
- Since clients are capable to do asynchronous concurrent requests, it seems be outdated to provide a batch mode (POST endpoints).
Response
According to current design patterns JSON is assumed as transport format for the RTAC response.
Example
Short hypothetical response to http://somehost/rtac/hrid/12345678
Code Block | ||
---|---|---|
| ||
{ "id" : "12345678", "holdings": [ { "id": "28ead097-5e3d-44fe-b647-ec982a1e4433", "hrid": "a", "type": "electronic", "suppressDiscovery": false, "somethingUnknown": "Newly introduced attribute in the holding record", "items": [ { "id": "28ead097-5e3d-44fe-b647-ec982a1e4413", "hrid": "1", "callNumber": "29K 216,2.Aufl.", "status": "available", "permanentLoanType": "lendable", "location": { "id": "Lehrbuchsammlung_3", "displayName": "Main building", "type": "Freihand", "somethingUnknown": "Newly introduced attribute in the location record" }, "somethingUnknown": "Newly introduced attribute in the item record" } ] } ] } |
Schema
Anchor | ||||
---|---|---|---|---|
|
Preliminary definition the response. This version is far from complete. In the final version it should be capable to transport all attributes of 'holding', 'item' and 'location'.
...