1
Fork 0
mirror of https://github.com/Steffo99/alexandria.git synced 2024-11-24 06:24:20 +00:00
bdd-2020-alexandria/3-3-autoassociazioni.md

11 lines
1 KiB
Markdown

# Classificazione delle autoassociazioni
Alexandria prevede la possibilità di marcare come correlate due opere in modo tale da far apparire sulla pagina di una un collegamento all'altra.
Si è deciso di sviluppare questa funzionalità utilizzando delle **autoassociazioni**: ogni `Libro`, `Film` o `Videogioco` sarà correlato ad altre entità del suo stesso tipo tramite la relazione `è correlato a`.
![](img/3-3-autoassociazioni/autoassociazione.png)
> Inizialmente, si è considerato di aggiungere una unica autoassociazione alla entità `Elemento`, ma si è poi giunti alla conclusione che questo approccio sarebbe stato sbagliato: si sarebbero dovuti associare tutti i singoli `Elementi` creati da ciascun `Utente`, creando una quantità di correlazioni a crescita esponenziale!
> Una possibile estensione a funzionalità si potrebbe ottenere aggiungendo un attributo _Tipo_ alla relazione `è correlato a`: esso permetterebbe agli `Utenti` di descrivere come due opere sono correlate tra loro ("sequel", "prequel", "stesso universo", etc...).