48/66
\begin{frame}
  \frametitle{Important Aspects of ORM Toolkits}
  
  \begin{itemize}
    \item Mapping specification: 
      \begin{itemize}
        \item map relational data onto objects
        \item can largely be derived automatically
      \end{itemize}
    \pause\medskip
    \item Query language (e.g. HQL):
      \begin{itemize}
        \item adds object-oriented features to SQL
        \item typically queries as strings (second class citizen)
      \end{itemize}
    \pause\medskip
    \item Persistence:
      \begin{itemize}
        \item transaction semantics
        \item languages offer start of transactions, commit, abort
      \end{itemize}
    \pause\medskip
    \item Fetch strategies
      \begin{itemize}
        \item danger of implementing queries in Java \error
        \item object caching
      \end{itemize}
  \end{itemize}
\end{frame}