% !TEX root = ../main.tex

\textbf{Schema logico relazionale in formato testuale}
\begin{verbatim}
Giornali(\underline{IdEdizione*}, ComuneStampa)
SitiWeb(\underline{IdEdizione*}, Url)
Edizioni(\underline{IdEdizione}, Titolo, Direttore, AnnoFondazione)
Articoli(\underline{IdArticolo}, IdEdizione*, Titolo, Sottotitolo,
    DataPubblicazione, Premium)
Visite(\underline{IdVisita}, IdArticolo*, TempoLettura, IdUtente*)
Utenti(\underline{IdUtente}, Nome, Cognome, Indirizzo)
Abbonamenti(\underline{IdUtente*, IdEdizione*, DataSottoscrizione}, DataScadenza)
ArticoliGiornalisti(\underline{IdArticolo*, IdGiornalista*})
Giornalisti(\underline{IdGiornalista}, NumeroAlbo, Cognome, Nome)
GiornalistiDipendenti(\underline{IdGiornalista*}, CodiceInps)
GiornalistiFreeLance(\underline{IdGiornalista*}, PartitaIva)
\end{verbatim}

%\textbf{Dipendenze funzionali}
%\begin{itemize}
%\item Per ogni tabella la chiave primaria (sottolineata) determina ciascuno degli attributi della tabella ($\{IdEdizione \to Titolo, IdEdizione \to Direttore, \textellipsis\}$)
%\item Nella tabella Giornalisti, vale inoltre che $\{NumeroAlbo \to Nome;$ $NumeroAlbo \to Cognome;$ $NumeroAlbo \to IdGiornalista\}$: NumeroAlbo è una chiave naturale (l’Ordine dei Giornalisti si cura di non attribuire lo stesso numero di iscrizione all’albo a due giornalisti diversi), ho scelto di aggiungere la chiave artificiale IdGiornalista prevedendo possibili errori di inserimento da parte della segreteria della catena editoriale: in queto modo, il NumeroAlbo può essere modificato senza problemi in caso di errori. Discorso analogo per CodiceInps e PartitaIva.
%\end{itemize}