classDiagram class citizen_service { +any id +any name +any maxQuantity? +citizen_combinable combinable? +any public? } class citizen_thinnedContact { +any city +any country +any name +any postalCode +any region +any street +any streetNumber } class citizen_appointmentReserve { +string message } class citizen_appointmentPreconfirm { +string message } class citizen_appointmentUpdate { +string message } class citizen_thinnedScope { +any id? +citizen_thinnedProvider provider? +any shortName? +string emailFrom? +boolean emailRequired? +boolean telephoneActivated? +boolean telephoneRequired? +boolean customTextfieldActivated? +boolean customTextfieldRequired? +any customTextfieldLabel? +boolean captchaActivatedRequired? +any displayInfo? } class citizen_availableAppointmentsByOffice { +any offices? } class citizen_thinnedProcess { +any processId +any authKey +any timestamp? +any familyName? +any customTextfield? +any email? +any telephone? +any officeName? +any officeId? +citizen_thinnedScope scope? +any status? +any subRequestCounts? +any serviceId? +any serviceCount? } class citizen_officeServiceRelation { +any officeId +any serviceId +any slots } class citizen_appointmentCancel { +string message } class citizen_office { +integer id +any name? +any showAlternativeLocations? +any address? +any displayNameAlternatives? +any organization? +any organizationUnit? +any slotTimeInMinutes? +any geo? +citizen_thinnedScope scope? } class citizen_availableAppointments { +integer[] appointmentTimestamps } class citizen_thinnedProvider { +string id? +any name? +any lat? +any lon? +string source? +citizen_thinnedContact contact? } class citizen_availableDays { +any availableDays } class citizen_combinable { +any _empty } class citizen_appointmentConfirm { +string message } citizen_service --> citizen_combinable citizen_thinnedScope --> citizen_thinnedProvider citizen_thinnedProcess --> citizen_thinnedScope citizen_office --> citizen_thinnedScope citizen_thinnedProvider --> citizen_thinnedContact