@startuml !define IMPLEMENTED_COLOR cornsilk !define OUT_OF_SCOPE_COLOR lightsteelblue skinparam legendBackgroundColor black !define GROUP_PACKAGE class Category #OUT_OF_SCOPE_COLOR { -uid: Int -name: String -description: String +getUid(): String +setUid(uid: String): void +getName(): String +setName(name: String): void +getDescription(): String +setDescription(description: String): void } class Grape #IMPLEMENTED_COLOR { -uid: Int -name: String -description: String +getUid(): Int +setUid(uid: Int): void +getName(): String +setName(name: String): void +getDescription(): String +setDescription(description: String): void } class Taste #IMPLEMENTED_COLOR { -uid: Int -name: String -description: String +getUid(): Int +setUid(uid: Int): void +getName(): String +setName(name: String): void +getDescription(): String +setDescription(description: String): void } class Quality #IMPLEMENTED_COLOR { -uid: Int -name: String -description: String +getUid(): Int +setUid(uid: Int): void +getName(): String +setName(name: String): void +getDescription(): String +setDescription(description: String): void } class Vinesite #OUT_OF_SCOPE_COLOR { -uid: Int -name: String -description: String +getUid(): Int +setUid(uid: Int): void +getName(): String +setName(name: String): void +getDescription(): String +setDescription(description: String): void } class Participant #IMPLEMENTED_COLOR { -uid: Int -masterRecord: MasterRecord +getUid(): Int +setUid(uid: Int): void +getMasterRecord(): MasterRecord +setMasterRecord(masterRecord: MasterRecord): void } class WineKind #IMPLEMENTED_COLOR { -uid: Int -name: String -description: String +getUid(): Int +setUid(uid: Int): void +getName(): String +setName(name: String): void +getDescription(): String +setDescription(description: String): void } class Wine #IMPLEMENTED_COLOR { -uid: Int -name: String -participant: Participant -jahresauswahlprobe Jahresauswahlprobe -grapeVariety: Grape -vinesite: Vinesite -category: Category -vintage: int -quality: Quality -taste: Taste -winekinds: List -ap_nr: String -acidity: float -sugar: float -alc: float -volume: float -price: float -status: String +getUid(): Int +setUid(uid: Int): void +getName(): String +setName(name: String): void +getParticipant(): Participant +setParticipant(participant: Participant): void +getJahresauswahlprobe(): Jahresauswahlprobe +setJahresauswahlprobe(participant: Jahresauswahlprobe): void +getGrapeVariety(): Grape +setGrapeVariety(grapeVariety: Grape): void +getVinesite(): Vinesite +setVinesite(vinesite: Vinesite): void +getCategory(): Category +setCategory(category: Category): void +getVintage(): int +setVintage(vintage: int): void +getQuality(): Quality +setQuality(quality: Quality): void +getTaste(): Taste +setTaste(taste: Taste): void +getWinekinds(): List +setWinekinds(winekinds: List): void +getApNr(): String +setApNr(ap_nr: String): void +getAcidity(): float +setAcidity(acidity: float): void +getSugar(): float +setSugar(sugar: float): void +getAlc(): float +setAlc(alc: float): void +getVolume(): float +setVolume(volume: float): void +getPrice(): float +setPrice(price: float): void +getStatus(): String +setStatus(status: String): void } class Jahresauswahlprobe #IMPLEMENTED_COLOR { -uid: Int -allowedVinesites: List -allowedCategories: List -allowedGrapes: List -name: String -description: String -dateAllowRegistration_start: Date -dateAllowRegistration_end: Date -dateAllowShow_start: Date -dateAllowShow_end: Date +getAllowedCategories(): List +setAllowedCategories(allowedCategories: List): void +getName(): String +setName(name: String): void +getDescription(): String +setDescription(description: String): void +getDateAllowRegistrationStart(): Date +setDateAllowRegistrationStart(dateAllowRegistrationStart: Date): void +getDateAllowRegistrationEnd(): Date +setDateAllowRegistrationEnd(dateAllowRegistrationEnd: Date): void +getDateAllowShowStart(): Date +setDateAllowShowStart(dateAllowShowStart: Date): void +getDateAllowShowEnd(): Date +setDateAllowShowEnd(dateAllowShowEnd: Date): void +getUid(): Int +setUid(uid: Int): void } Category "1" <-- "*" Wine Grape "1" <-- "*" Wine Vinesite "1" <-- "*" Wine Participant "1" <-- "*" Wine Taste "1" <-- "*" Wine Quality "1" <-- "*" Wine WineKind "1" <-- "*" Wine Jahresauswahlprobe "*" <-- "*" Wine legend right Legend: To implement Part of existing system end legend @enduml