Salve a tutti. Ho delle semplici specifiche e vorrei trovare il modo migliore per tradurle in schema E-R per poi realizzare il database
Le regole sono queste:
- In una casa (id pk,address) posso avere più utenti (id)
- In una casa possono essere svolti più ruoli (nome)
- Nella stessa casa , il medesimo ruolo non può essere svolto da due utenti diversi (immaginate il ruolo come "madre", "padre"..)
- Il ruolo di un utente in una casa potrebbe cambiare (da madre a nonna (?)).. è un po una forzatura ma assumiamo sia possibile. (cioè di fatto dovrei introdurre dei nuovi attributi, tipo da quando a quando ho svolto un ruolo).
I ruoli sono predefiniti e li ficco tutti in una tabella. Devo inoltre poter inserire utenti e spazi e questi dati devono poter "vivere" singolarmente. (Quindi tabella utenti con un solo campo identificativo e case con id + spazio, e non altri attributi).
Avevo creato una relazione tripla tra ruolo, casa e utente (più una relazione tra casa e ruolo). Tutto molto semplice e bello, se non fosse che non mi consente di avere che una persona possa aver svolto più ruoli nella stessa casa. Credo che in questi casi si utilizzi la reificazione. Ma come di preciso?
Grazie dell'aiuto
Cioè di fatto come faccio a dire che devo avere una relazione utente|casa|ruolo, che un utente non può fare due ruoli diversi nello stesso istante nella stessa casa ma che può cambiare in futuro?