71/72
\begin{frame}
  \frametitle{Recursive Associations}
  
  \begin{center}
  \begin{tikzpicture}
  \umlclass{employee}{ 
    +id \\
    +name \\
    +jobTitle \\
    +payGrade 
    }{ 
    } 
  \umlclass[x=7]{supervision}{ 
    +startDate \\
    +endDate  
    }{ 
    } 
  \umlassoc[arg1=1..1,pos1=0.1,arg2=0..1,pos2=.9,name=assoc,anchors=30 and 160,geometry=-|]{employee}{supervision} 
  \node [bo=assoc-1] {supervised by $\triangleright$};
  \umlassoc[arg1=1..1,pos1=0.1,arg2=0..*,pos2=.9,name=assoc,anchors=-30 and 200,geometry=-|]{employee}{supervision} 
  \node [bo=assoc-1] {supervises $\triangleright$};
  \end{tikzpicture} 
  \end{center}

  \begin{goal}{}
    A \emph{recursive association with attributes} requires a separate table
    with two foreign keys to the parent table. 
  \end{goal}
\end{frame}