Skip to content

Entities and Relationships

Joshua Essex edited this page Jul 8, 2019 · 1 revision

County Schema

All entities in the system are organized into groups called "record trees". The ingest code, persistence code, and schema all use this organization. A record tree looks essentially like the below:

Record tree diagram

A record tree consists of the following entities:

Person: the root of the record tree, representing a real-world person. Every record tree contains 1 and only 1 person.

A person can have from 1 to many bookings.

Booking: an interaction of a person with the carceral system that is continuous in time.

A booking belongs to 1 and only 1 person.

A booking can have 0 or 1 arrest.

A booking can have from 0 to many holds.

A booking can have from 0 to many charges.

Arrest: information about the arrest associated with a given booking.

An arrest belongs to 1 and only 1 booking.

Hold: information indicating that a person is being held by one jurisdiction for the sake of another jurisdiction.

A hold belongs to 1 and only 1 booking.

Charge: a single charge brought against a person.

A charge belongs to 1 and only 1 booking.

A charge can have 0 or 1 bond.

A charge can have 0 or 1 sentence.

Bond: the bond set for a charge or set of charges.

A bond belongs to from 1 to many charges.

Sentence: the sentence imposed for a charge or set of charges.

A sentence belongs to from 1 to many charges.