\documentclass{standalone}
\usepackage{schule}
\usepackage[utf8]{inputenc}
\usepackage{schulinf}

\usetikzlibrary{arrows,arrows.meta,positioning,decorations.markings}

\begin{document}

\begin{tikzpicture}[font=\sffamily]


%stil für aggregation
\tikzstyle{aggregation} = [,shorten >=17pt,
	decoration={
	      markings,
	      mark=at position 1 with {\arrow[scale=2.5,black]{open diamond}};}
]

%Stil für Vererbung
\tikzstyle{vererbung} = [shorten >=15pt,
	decoration={
	      markings,
	      mark=at position 1 with {\arrow[scale=2.5,black]{open triangle 45}};}
]



%Farben setzen
\renewcommand{\umltextcolor}{black}
\renewcommand{\umldrawcolor}{black}
\renewcommand{\umlfillcolor}{white}



%Dokument
	\begin{class}[text width=7.5cm]{DOKUMENT}{0,-10}
		\operation{+erzeugeAbschnitt(): ABSCHNITT}
		\operation{+erzeugeAbsatz(text:ZEICHENKETTE): ABSATZ}
		\operation{+erzeugeSeitenvorlage(): SEITENVORLAGE}
		\operation{+gibAbsatz(index:GANZEZAHL): ABSATZ}
		\operation{+gibSeite(nr:GANZEZAHL): SEITE}
		\operation{+gibCursor(): CURSOR}
		\operation{+gibAbschnitt(index:GANZEZAHL): ABSCHNITT}
		\operation{+speichern(dateiname: Sring)}
	\end{class}

%Cursor
	\begin{class}{CURSOR}{-1,-16}
		\operation{+vor(): WAHRHEITSWERT}
		\operation{+zurueck(): WAHRHEITSWERT}
		\operation{+gibZeichen():ZEICHEN}
	\end{class}



	

%Abschnitt
	\begin{class}[text width=8 cm]{ABSCHNITT}{10,-12}
		\operation{+erzeugeAbsatz(text:ZEICHENKETTE)}
		\operation{+setzeSeitenvorlage(vorlage: SEITENVORLAGE)}
		\operation{+gibDokument(): DOKUMENT}
		\operation{+gibAbsaetze(): Liste m. ABSEATZEN}
		\operation{+gibSeitenvorlage(): SEITENVORLAGE}
		\operation{+gibSeiten(): Liste m. SEITEN}
	\end{class}



%Seitenvorlage	
	\begin{class}[text width=6 cm]{SEITENVORLAGE}{13,-17}
		\operation{+gibName(): ZEICHENKETTE}
		\operation{+gibSeitenrandOben(): GANZEZAHL}
		\operation{+gibSeitenrandUnten(): GANZEZAHL}
		\operation{+gibSeitenrandLinks(): GANZEZAHL}
		\operation{+gibSeitenrandRechts(): GANZEZAHL}
		\operation{+gibBreite(): GANZEZAHL}
		\operation{+gibHoehe(): GANZEZAHL}
		\operation{+gibSpaltenzahl(): GANZEZAHL}
	\end{class}
	

%Seite	
	\begin{class}[text width=6cm]{SEITE}{5,-17}
		\operation{+gibAbschnitt(): ABSCHNITT} %original war Abschnitt!
		\operation{+gibSeitenvorlage(): SEITENVORLAGE}
		\operation{+gibSeitenzahl(): GANZEZAHL}
		%\inherit{SEITENVORLAGE}
	\end{class}
	

	
%Absatz	
	\begin{class}[text width=7cm]{ABSATZ}{10,0}
		\operation{+setzeAusrichtung(Linksbuendig $\mid$ Zentriert $\mid$ Rechtsbuending $\mid$ Blocksatz)}
		\operation{+setzeEinzugLinks (tmm:GANZEZAHL)}
		\operation{+setzeEinzugRechts (tmm:GANZEZAHL}
		\operation{+setzeEinzugErstzeile (tmm:GANZEZAHL)}
		\operation{+setzeEinzugRestzeilen (tmm:GANZEZAHL)}
		\operation{+setzeAbstandOben (tmm:GANZEZAHL)}
		\operation{+setzeAbstandUnten (tmm:GANZEZAHL)}
		\operation{+gibDokument(): DOKUMENT}
		\operation{+gibAbschnitt(): ABSCHNITT}
		\operation{+gibTextinhalt(): ZEICHENKETTE}
		\operation{+gibZeichenanzahl(): GANZEZAHL}
		\operation{+gibEinzugLinks(): GANZEZAHL}
		\operation{+gibEinzugRechts(): GANZEZAHL}
		\operation{+gibEinzugErstzeile(): GANZEZAHL}
		\operation{+gibEinzugRestzeilen(): GANZEZAHL}
		\operation{+gibAbstandOben(): GANZEZAHL}
		\operation{+gibAbstandUnten(): GANZEZAHL}
		\operation{+gibZeichen8index:GANZEZAHL): ZEICHEN}
		\operation{+gibAusrichtung(): Linksbuendig $\mid$ Zentriert $\mid$ Rechtsbuending $\mid$ Blocksatz}	
	\end{class}
	

	
%Zeichen	
	\begin{class}[text width=8.9cm]{ZEICHEN}{0,0}
		\operation{+setzeFett(fett:WAHRHEITSWERT)}
		\operation{+setzeKursiv(kursiv:WAHRHEITSWERT)}
		\operation{+setzeUnterstrichen(unterschrichen:WAHRHEITSWERT)}
		\operation{+setzeDuchgestrichen(durchgestrichen:WAHRHEITSWERT)}
		\operation{+setzeSchriftfarbe(farbe:(Farbauswahl))}
		\operation{+setzeHintergrundfarbe(farbe:(Farbauswahl))}
		\operation{+setzeSchriftgroesse(groesse:GANZEZAHL/Float)}
		\operation{+setzeSchriftart(schriftart:ZEICHENKETTE)}
		\operation{+setzeSymbol(symbol:ZEICHENKETTE (1 Zeichen))}
		\operation{+gibFett(): WAHRHEITSWERT}
		\operation{+gibKursiv(): WAHRHEITSWERT}
		\operation{+gibUnterstrichen(): WAHRHEITSWERT}
		\operation{+gibDurchgestrichen(): WAHRHEITSWERT}
		\operation{+gibSchriftfarbe(): (Farbauswahl)}
		\operation{+gibHintergrundfarbe(): (Farbauswahl)}
		\operation{+gibSchriftgroesse(): Float}
		\operation{+gibSchriftart(): ZEICHENKETTE}
		\operation{+gibSymbol(): ZEICHENKETTE}
	\end{class}
	
	

		\draw (DOKUMENT.22) -- ++ (1,0) |- (ABSATZ.220);
		
		\draw[postaction={decorate},vererbung] (SEITE.0) |- (SEITENVORLAGE.165);
					
		\draw[postaction={decorate},aggregation] (ZEICHEN.east) |- (ABSATZ);
		
		\draw[postaction={decorate},aggregation] (SEITE.north) -| (DOKUMENT.324);
		
		\draw[postaction={decorate},aggregation] (SEITE.90) |- (ABSCHNITT.180);
		
		\draw[postaction={decorate},aggregation] (SEITENVORLAGE.90) -| (ABSCHNITT.320);
			
		\draw[postaction={decorate},aggregation] (CURSOR.north) -| (DOKUMENT.south);
		
		\draw[postaction={decorate},aggregation] (ABSCHNITT.north) |- (DOKUMENT.10);

		%bsp.	
	%	\draw[,-open diamond] (DOKUMENT.south) ++ 		(1,0)  -- ++(0,-1)  -- node[above , sloped , 		black]{$<<$instantiate$>>$} ++(20,0)  -| (ZEICHEN);
	
\end{tikzpicture}


\end{document}