classDiagram class Boat { +int id +string name +int amount_seats +int location_id +int owner +int year_built +string boatbuilder +bool default_shipmaster_only_steering +bool convert_handoperated_possible +string default_destination +bool skull +bool external +bool deleted } class Location { +int id +string name } class Boathouse { +int id +int boat_id +string aisle +string side +int level } class BoatDamage { +int id +int boat_id +string desc +int user_id_created +datetime created_at +int user_id_fixed +datetime fixed_at +int user_id_verified +datetime verified_at +bool lock_boat } class BoatReservation { +int id +int boat_id +date start_date +date end_date +string time_desc +string usage +int user_id_applicant +int user_id_confirmation +datetime created_at } class User { ... } Boat "*" -- "1" User : owner Boat "*" -- "1" Location Boathouse "*" -- "1" Boat BoatDamage "*" -- "1" Boat BoatDamage "*" -- "1" User : created_by BoatDamage "*" -- "0..1" User : fixed_by BoatDamage "*" -- "0..1" User : verified_by BoatReservation "*" -- "1" Boat BoatReservation "*" -- "1" User : applicant BoatReservation "*" -- "0..1" User : confirmed_by