%% %% Ein Beispiel der DANTE-Edition %% %% %% 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[]{exaarticle} \pagestyle{empty} \setlength\textwidth{352.81416pt} \setlength\parindent{0pt} \StartShownPreambleCommands \usepackage{uml} \StopShownPreambleCommands \begin{document} \umlSchema[box=]{Stack}{ %Attributes \umlAttribute[visibility=-,type=\emph{type},default=null,]{firstNode} }{% Methods \umlMethod[visibility]{push}{\emph{type} x} \umlMethod[visibility,type=\emph{type}]{pop}{} }{% Arguments \umlArgument[type=Metaclass]{type} }{% Constraints \umlCompartmentline{S:Stack = S.push(x).pop()} }{% Structure \umlDiagram[innerBorder=2mm,sizeX=11em,sizeY=5em,ref=StackDiagram, outerBorder=2mm]{% \umlClass[pos={.5,.5}, ref=stackNode]{Node}{ \umlAttribute[visibility=\#,type=\emph{type}]{data}}{} \umlRelation[angleA=20,angleB=-20,armA=1em,armB=1em]{stackNode}{stackNode}{% \umlLabelA[height=-1ex,fraction=1.5]{stackNode}{1} \umlLabelB[height=-5ex,fraction=1.5]{stackNode}{1}} }% End of diagram }% End of Structure/Stack \end{document}