Diese Vorlage dient zur Darstellung von Stammbäumen als Text anstelle von Grafiken.
Falls die Vorlage in der Breite nicht ausreichen sollte, kann alternativ {{Stammbaum (komplex)}}
verwendet werden.
Dies ist eine Vorlage für die zeilenweise Übertragung einfacher Stammbäume, die auf auf einer ASCII-Syntax beruhen, und aus Boxen und Verbindungslinien bestehen. Die Stammbäume werden als Tabellen angezeigt, die auf HTML mit CSS-Parametern beruhen, und willkürliche Wiki-Syntax innerhalb der Boxen enthalten können. Die mögliche Anzahl von Spalten ist 40.
Aus folgendem ASCII-Stammbaum
Helios --- Klymene
|
-----------------------------
| | | |
Aigle Phaetusa Lampetia Phaeton
wird mithilfe der Stammbaum-Vorlage diese Darstellung erzeugt:
Für die Funktion der Vorlage müssen im Quelltext vorher {{Stammbaum/start}}
und nachher {{Stammbaum/end}}
eingefügt werden.
Zunächst wird dann die Lage und Größe der Boxen und Linien zeilenweise eingegeben. Eine beliebige Buchstabenfolge wird als Platzhalter für eine Box benutzt. Ist dagegen zwischen zwei vertikalen Strichen einer der unten aufgeführten Codes gesetzt, enthält diese Stelle in der Tabelle ein leeres oder ein Linien-Element. Im Anschluss wird die Beschriftung durch einen mit derselben Buchstabenfolge benannten Parameter definiert.
Nachstehender siebenzeiliger Code erzeugt die darunter folgende Ausgabe als fünfzeilige Tabelle. In der zweiten Zeile des Quellcodes ist das erste „GRM“ der Platzhalter für die Großmutter-Box, deren Beschriftung in der selben Zeile bei GRM=Großmutter definiert ist. Die Zeichen ~ y ~ stehen für die Verbindungslinien zwischen den Boxen. Die leeren Stellen sorgen für die richtige Lage in Bezug auf die nachfolgenden Zeilen des Stammbaums.
Eingabe
|
{{Stammbaum/start}}
{{Stammbaum | | | | GRM |~|y|~| GRP | | GRM=Großmutter|GRP=Großvater}}
{{Stammbaum | | | | | | | |)|-|-|-|.| | }}
{{Stammbaum | | | MOM |y| DAD | | DAI | MOM=Mutti|DAD=Papa|DAI=Tante Wilma}}
{{Stammbaum | |,|-|-|-|+|-|-|-|.| | | | }}
{{Stammbaum | JOE | | ME | | SIS | | | JOE=Mein Bruder Tim|ME='''Ich!'''|SIS=Meine kleine Schwester}}
{{Stammbaum/end}}
|
Ergebnis
|
| | | Großmutter | | | | Großvater | |
| | | |
| | | | | | | | | | | | | | | |
| | | | |
| | Mutti | | Papa | | Tante Wilma |
| |
| | | | | | | | | | | | | | | | |
| | | | | | | | | | |
Mein Bruder Tim | | Ich! | | Meine kleine Schwester | | |
|
Linie
, |
|
|
. |
|
|
` |
|
|
' |
|
|
^ |
|
|
v |
|
|
( |
|
|
) |
|
|
- |
|
|
! |
|
|
+ |
|
|
|
|
|
Gestrichelt
F |
|
|
7 |
|
|
L |
|
|
J |
|
|
A |
|
|
V |
|
|
C |
|
|
D |
|
|
~ |
|
|
: |
|
|
% |
|
|
Die Boxen können willkürlichen Wiki-Code enthalten. Der Inhalt der Boxen wird mit den zusätzlichen benannten Parametern spezifiziert, die zum Vorlagenaufruf hinzugefügt werden. Jede Box ist drei Tabellenspalten weit und hat normalerweise einen zwei Pixel breiten schwarzen Rand. Boxen können jeden beliebigen Namen haben, der ein gültiger Parametername ist, abgesehen von einzelnen Buchstaben, die für bestimmte Muster stehen, siehe oben.
Das Aussehen der Boxen kann wahlweise durch die Parameter border
und boxstyle
gesteuert werden. Das vorangestellte border=0
setzt die Breite der Umrandung auf null Pixel, während boxstyle
verwendet werden kann, um willkürliche CSS-Formatangaben direkt als Attribute hinzuzufügen.
Die Startvorlage {{Stammbaum/start}}
akzeptiert CSS als Wert für ihren Parameter style
. Diese Werte gelten dann für die gesamte Tabelle; beispielsweise generiert der folgende Code das nachstehende Ergebnis
Eingabe
|
{{Stammbaum/start|style=font-size:200%;line-height:100%;margin:1em}}
{{Stammbaum|border=0|boxstyle=background:#dfd;| | FOO |y| BAR | | FOO=Box 1|BAR=Box 2}}
{{Stammbaum|border=0|boxstyle=background:#dfd;| | |,|-|^|-|.| | | }}
{{Stammbaum|border=0|boxstyle=background:#dfd;| | FOO | | BAR | | FOO=Box 3|BAR=Box 4}}
{{Stammbaum/end}}
|
Ergebnis
|
|
Stattdessen kann um die gesamte Tabelle auch eine Blockbox (<div>) mit entsprechenden Style-Attributen gesetzt werden, um eine gewisse Übersicht im Quelltext zu bewahren.
Die Abkürzungen von Namen dürfen beliebig viele Zeichen lang sein. Jedoch leidet die Übersichtlichkeit bei Verwendung von Abkürzungen, die länger als drei Zeichen sind.
Es muss zwischen zwei Namen mindestens ein vertikaler Strich „|“ gesetzt werden, wobei zwei dieser Striche deutlicher zu erkennen sind und Platz für Linien dazwischen lassen. Auch vor dem Anfang der Erklärung muss ein | stehen!
Beispiel 1 – fehlerhafte Darstellung durch fehlendes „|“
Eingabe |
Ergebnis
|
{{Stammbaum | |,|-|.| | | }}
{{Stammbaum | |G R | | G=Oma|R=Opa}}
|
|
{{Stammbaum | | |,|-|-|.| }}
{{Stammbaum | | Go | Rop Go=Oma|Rop=Opa}}
|
|
Beispiel 2 – Unterschied zwischen einfachen oder doppelten Linien als Trennung zweier Boxen
Eingabe |
Ergebnis
|
{{Stammbaum | | |,|-|-|.| | }}
{{Stammbaum | | Go | Rop | Go=Oma|Rop=Opa}}
|
|
{{Stammbaum | | |,|-|-|-|.| | }}
{{Stammbaum | | Grm | | Grv | Grm=Oma|Grv=Opa}}
|
|
Bei Stammbäumen von Personen gibt es die Konvention, die Abstammungslinien von Mutter und Vater bis zur Vereinigung gestrichelt darzustellen. Man hat dabei acht verschiedene Möglichkeiten, Linien an eine Box zu führen.
Der Text in den Boxen kann verlinkt werden.
Beispiel 3 – gestrichelte Abstammungslinien
Eingabe |
Ergebnis
|
{{Stammbaum | | Grm | | Grv | Grm=Oma|Grv=Opa}}
{{Stammbaum | | |L|~|y|~|J| | }}
{{Stammbaum | | | | Pap | | | Pap=Papa}}
|
|
Beispiel 4 – verlinkter Text
Eingabe |
Ergebnis
|
{{Stammbaum | | | |.|!|,| | | }}
{{Stammbaum | | |-| Pap |-| | Pap=[[w:Papa|Papa]]}}
{{Stammbaum | | | |'|!|`| | | }}
|
|