DCB States
See also State Changes WIP sheet
Tracking Sequence
Tracking v3 incorporates polling at intervals based on current state, to reflect that some states should move quickly and others (such as LOANED) are unlikley to move for significant elapsed time.
This allows DCB to spread the load of circulation polling to improve system performance when dealing with several thousand in-flight requests.
See reference matrix at Tracking v3 matrix .
State Model Diagrams
The state model is generated using GraphViz
The raw dot file can be found at https://dcb-dev.sph.k-int.com/statemodel/diagram/dot
Images can be found at
Prior State Model Iterations
Content below is considered obsolete. Please use dynamic state diagrams per above.
Patron Request States
SUBMITTED_TO_DCB - the patron has requested an item, it has been submitted to DCB
PATRON_VERIFIED - the request has passed the validation phase
RESOLVED - We’ve located an item
NO_ITEMS_AVAILABLE_AT_ANY_AGENCY
REQUEST_PLACED_AT_SUPPLYING_AGENCY - a request has been placed at the supplying agency
REQUEST_PLACED_AT_BORROWING_AGENCY - a request has been placed for tracking at the patrons home system
ERROR - There was an error
Supplier Request States
PENDING - Hold placed, waiting for confirmation
PLACED - Hold placed - we know the ID of the hold and the item
Fallback States
Context - see Slack
Broadly speaking, that will likely be something like:
Available
->AVAILABLE
Checked out
->CHECKED_OUT
Unknown
->UNKNOWN
Everything else to
UNAVAILABLE
No status (which shouldn’t happen) to
Unknown
There are some quirky statuses that folks might want different mappings for:
On order
In process
(because of the presence ofIn process (non-requestable)
which implies the other kind of in process allows requests)In transit
(which is ambiguous because we don’t know why it’s in transit)Intellectual item
(because I don’t know what that means)
The full list of statuses can be found here
State Models in DCB
Operated as a Community Resource by the Open Library Foundation