As part of implementing this, I've encountered a question. As the server checks for whether the item exists, in order to get the title and barcode to store, should it refuse the request if the item does not exist, or ignore it and just not store any item information?
Usually we don't check whether a record reference refers to a record that exists. And for aggregation, if the referenced record doesn't exist it generally gets ignored.
I'm going to implement it to not store the any item information, and not refuse the request, for the time being as this is the most conservative behaviour and does not break compatibility (although we haven't yet released the requests API for mod-circulation).
Marc Johnson September 4, 2017 at 1:51 PM
Edited
Below is my initial thought for what the readonly copy of item information could look like for requests.
We might want to make it even more explicit by changing the name of the property to readOnlyItem (or something similar).
If we wanted to continue to share schema, we could instead move request down a level (like for aggregation) and have the read only item at the same level.
I think we need to consider what this looks like with relation to including the full item, as I believe we want to do that in the future () in order to aid display of further properties (that we don't need for searching or sorting)?
In order to be able to search for/sort requests by item title or barcode, these properties need storing with the request