%% 
%%  A DANTE-Edition example
%% 
%%  Example 32-02-10 on page 657.
%% 
%%  Copyright (C) 2010 Herbert Voss
%% 
%%  It may be distributed and/or modified under the conditions
%%  of the LaTeX Project Public License, either version 1.3
%%  of this license or (at your option) any later version.
%% 
%%  See http://www.latex-project.org/lppl.txt for details.
%% 
%% 
%% ==== 
% Show page(s) 1
%% 
\documentclass[]{article}
\pagestyle{empty}
\setlength\textwidth{375.57637pt}
\setlength\parindent{0pt}
\def\Larg#1{{\normalfont\itshape#1\/}}
\def\Largb#1{\lcb\Larg{#1}\rcb}          % curly brace
\def\Largs#1{{\ttfamily[\Larg{#1}]}}          % curly brace
\def\bs{{\normalfont\ttfamily\textbackslash}}  % \let\bslash=\bs
\def\lcb{{\normalfont\ttfamily\textbraceleft}}
\def\rcb{{\normalfont\ttfamily\textbraceright}}
\def\Lcs#1{\mbox{\normalfont\ttfamily\bs#1}}
\def\OptArgs{\Largs{options}}
\def\arraystretch{1.5}

\usepackage{uml}

\begin{document}
\begin{tabular}{@{}p{2.5cm}l@{}}
\pnode(0,0){SubclassA}\pnode(2cm,0){SubclassB} \umlSubclass{SubclassA}{SubclassB} &
    \Lcs{umlSubclass}\OptArgs\Largb{SubclassA}\Largb{SubclassB}\\
\pnode(0,0){InnerA}\pnode(2cm,0){InnerB} \umlInner{InnerA}{InnerB} &
    \Lcs{umlInner}\OptArgs\Largb{InnerA}\Largb{InnerB}\\
\pnode(0,0){InstanceA}\pnode(2cm,0){InstanceB} \umlInstance{InstanceA}{InstanceB} &
    \Lcs{umlInstance}\OptArgs\Largb{InstanceA}\Largb{InstanceB}\\
\pnode(0,0){AggregationA}\pnode(2cm,0){AggregationB} \umlAggregation{AggregationA}{AggregationB} &
    \Lcs{umlAggregation}\OptArgs\Largb{AggregationA}\Largb{AggregationB}\\
\pnode(0,0){CompositionA}\pnode(2cm,0){CompositionB} \umlComposition{CompositionA}{CompositionB} &
    \Lcs{umlComposition}\OptArgs\Largb{CompositionA}\Largb{CompositionB}\\
\pnode(0,0){ApplicationA}\pnode(2cm,0){ApplicationB} \umlApplication{ApplicationA}{ApplicationB} &
    \Lcs{umlApplication}\OptArgs\Largb{ApplicationA}\Largb{ApplicationB}\\
\end{tabular}
\end{document}
