Table
Auszeichnung einer tabellarischen Struktur. Die Breite der Tabellenspalten wird immer in Prozent (%) angegeben. 100% ist das Maximum. Die Summe der Spaltenbreiten muss immer 100% ergeben. Es sind auch Dezimalzahlen (nur eine Dezimalzahl) erlaubt (z. B. "10.5%").
Die tabellarischen Strukturen deren Beschriftung auch „Tabelle“ lautet, sollten so gut wie möglich immer als Tabelle ausgezeichnet werden.
Tabellenartige Listen mit einem rechts ausgerichtetem Block werden als Tabelle umgesetzt.
- Zellen nur mit Leerzeichen in Tabellen vermeiden.
- Die Tabelleninhalte so gut wie möglich in Zellen unterteilen (z.B. nicht eine Tabelle mit einer Zelle auszeichnen).
- Leere Absätze vermeiden.
- In Word getrennte Absätze wenn möglich nicht übernehmen.
- Auflistungen sollten bei Datenkonvertierung von Word zu XML auch in Auflistungen automatisch sein.
- Das Attribut
@orientwird standardmäßig eingetragen.
Altdaten
- die Tabelle sehr komplex ist und eine Erfassung unverhältnismäßig aufwändig,
- absehbar ist, dass eine Tabelle nur als Ganzes ausgetauscht werden würde, kann eine Tabelle auch als Abbildung erfasst werden.
Wenn in der Beschriftung der Tabelle „Abbildung“ steht, soll diese Tabelle als Abbildung übernommen werden.
<seitenbeginn> wird ausschließlich zwischen die <row>-Elemente gesetzt
und nicht innerhalb von <entry>.Auszeichnung: <table> (CALS-Modell)
Abweichungen vom CALS-Modell
table/@id |
ID der Tabelle |
table/@position |
Bestimmt die Positionierung der Tabelle im Text ('fix' oder 'float'). |
entry/absatz |
Um Zeilenumbrüche und andere Absatzelemente, z. B. <seitenbeginn>, innerhalb von
entry zuzulassen. |
table/beschriftung |
Das Beschriftungselement von Tabellen und Abbildungen. In den meisten Fällen eingeführt von Abb. oder
Abbildung und einer Nummer. Es muss ein Unterelement geben. (kennung,
(absatz|liste|table))+ |
table/quelle |
Quellen einer Tabelle. In den meisten Fällen eingeführt von Quelle
(absatz|liste)+ |
table/notizen |
Notizen zu einer Tabelle (absatz|liste|table)+ |
entry/@hintergrund |
Siehe Hintergrund |
entry/@obensep |
Optionale Rahmendefinition oberhalb der Zelle. Im Footer darf es keine Lineatur für den oberen Bereich der
Tabelle geben. Das Attribut @obensep darf nur in der ersten Zeile der Tabelle verwendet werden (d. h. es
darf keine weiteren Zeilen in der Tabelle davor geben). Achtung: Hat Vorrang vor
@frame. |
entry/@linkssep |
Optionale Rahmendefinition links der Zelle. Das Attribut @linkssep darf nur in der ersten
Spalte der Tabelle verwendet werden.Achtung: Hat Vorrang vor
@frame. |
colspec/@colwidth |
Erlaubt sind nur Prozentwerte (Abweichung!) |
Attribute
Id/Refid
@id/@refid
IDs benennen Instanzen und Elemente eindeutig. Sie sind zwingend erforderlich.
<table id="[Werkkürzel]_[Kennzahl]_e[übergeordnete Ebenen]_tab[vierstellige Tabellennummer]"/>
<table id="b[ISBN]_[Kapitelnummer]_e[übergeordnete Ebenen]_tab[vierstellige Tabellennummer]"/>Beispiel<table id="arbgg_a_21_tab0001">Pgwide
@pgwide
Bestimmt, ob die Tabelle über die gesamte Seitenbreite oder in einer Spalte der Seite positioniert sein soll.
| Wert | Erklärung |
|---|---|
1 |
gesamte Seitenbreite |
0 |
eine Spalte |
@pgwide='0', entspricht das Ergebnis @pgwide='1' - das Attribut wäre also überflüssig.<table frame="all" position="fix" id="rv_2018_b0001_niemeyer_bleiken_schweiz_tab0001" pgwide="0" orient="port">
...
<table frame="all" position="fix" id="rv_2018_b0001_niemeyer_bleiken_schweiz_tab0002" pgwide="1" orient="port">
...
Frame
@frame
äußere Umrandung der Tabelle
Mögliche Werte:
'top'- Rahmen nur oben'bottom'- Rahmen nur unten'topbot'- Rahmen nur oben und unten'all'- kompletter Rahmen'sides'- Rahmen nur an den Seiten'none'- ohne Rahmen
table/@frame="all".Colsep
@colsep
Wert "1" erzeugt eine vertikale Linie rechts der einzelnen Tabellenspalten.
table/@colsep="1".Rowsep
@rowsep
Wert "1" erzeugt eine horizontale Linie unter der einzelnen Tabellenzeilen.
table/@rowsep="1".Position
@position
Bestimmt die Positionierung auf der Ausgabeseite. Die Interpretation und Verwendung kann dabei von Satzsystem zu Satzsystem variieren.
Mögliche Werte:
| Wert | Erklärung |
|---|---|
fix |
Tabellen, die regelbasiert an einer vom Satzsystem fest definierten Stelle stehen, z.B. immer am oberen und unteren Rand einer Seite. |
float |
Defaultwert – Tabellen, die mit dem Text fließen und an einer festen Stelle im Bezug zum Text stehen müssen. |
Orient
@orient
Legt die Ausrichtung fest.
Mögliche Werte:
| Wert | Erklärung |
|---|---|
land |
Default-Wert; gibt Objekt so aus "wie es ist", unabhägig davon, ob es eher hoch oder breit ist. |
port |
Dreht das Objekt um 90° gegen den Uhrzeigersinn. |
Tabstyle
@tabstyle
Das Attribut kann zum Beispiel verwendet werden, um Tabellenhilfsstrukturen im Text abzubilden. Damit kann eine im Satztemplate festgelegte Auszeichnung (eine tabellenspezifische Schrift) umgangen werden, indem einer der folgenden Werte definiert wird:
- "sonderformat-textfont"
- "sonderformat-kleiner"
- "sonderformat-amkleinsten"
Verwendung XML-First:
Projektspezifische Verwendung: Wird die Verwendung unterschiedlicher Schriftformate für Tabellen im Rahmen eines XML-First-Projektes beschlossen, kann diese Auszeichnung entweder manuell gesetzt oder über einen Datendienstleister explizit angefordert werden. Satztemplates müssen diese Auszeichnung implementieren.
Verwendung XML-Last:
Keine Verwendung in XML-Last-Prozessen.
Tocentry
@tocentry
Titel der Tabelle wird ins Tabellenverzeichnis
aufgenommen, wenn tocentry="1" und
<titel> vorhanden ist.
Shortentry
@shortentry
| Wert | Erklärung |
|---|---|
0 |
<shorttitle> oder
<titel> werden nicht genutzt. |
| jede andere Zahl | <shorttitel> wird verwendet oder
<titel>, wenn
<shottitel> nicht vorhanden
ist. |
Kindelemente
Row
<row>
Zur Kennzeichnung einer neuen Tabellenzeile.
Bei Tabellen mit einer geteilten Zelle im Tabellenkopf, muss eine weitere row im thead eingefügt werden.
<thead>
<row>
<entry colname="col1" align="right" valign="top">
<absatz id="b9783503124497_II_03_tab0001_a0001">Pflichten</absatz>
</entry>
<entry colname="col2" morerows="1" align="left" valign="top">
<absatz id="b9783503124497_II_03_tab0001_a0002">§ 31 Abs. 2</absatz>
</entry>
<entry colname="col3" morerows="1" align="left" valign="top">
<absatz id="b9783503124497_II_03_tab0001_a0004">§ 31 Abs. 3</absatz>
</entry>
<entry colname="col4" morerows="1" align="left" valign="top">
<absatz id="b9783503124497_II_03_tab0001_a0006">§ 31 Abs. 8</absatz>
</entry>
</row>
<row>
<entry colname="col1" align="left" valign="bottom">
<absatz id="b9783503124497_II_03_tab0001_a0008">Kunden</absatz>
</entry>
</row>
</thead>Spaltenbeginn
<spaltenbeginn>
Um die Printdarstellung bei Altdaten zu berücksichtigen. Als Info für den Setzer, damit es im Print dann zweispaltige Darstellung wird. (z.B. bei sehr langen einspaltigen Listen oder wie in dem Screenshot)

Entry
<entry>
- Bei textlastigen Zelleninhalten ist die Ausrichtung linksbündig.
- Eine Klammer über mehrere Zeilen wird in eigener Tabellenzelle und als Bild eingebunden.

Attribute von <entry>
@rotate
Um Texte in Tabellen zu rotieren, kann das Attribut @rotate genutzt
werden:
<row>
<entry rotate="1"><absatz>senkrechter Text</absatz></entry>
</row>

@colsep
Zeichnet eine vertikale Linie rechts der Tabellenzelle.
@rowsep
Zeichnet eine horizontale Linie unterhalb der Tabellenzelle.
@linkssep
Zeichnet eine horizontale Linie links der Tabellenzelle.
@obensep
Zeichnet eine horizontale Linie oberhalb der Tabellenzelle.
Zusammenfassen von Zeilen und Spalten
@morerows
entry/@morerows legt die Anzahl der Zeilen fest, die vertikal zu einer Zeile zusammengefasst werden sollen bzw. auf die sich eine Zeile ausdehnen soll. Soll sich beispielsweise 1 Zeile über 3 Zeilen überspannen, so muss der Wert @morerows=“2“ lauten. Der Wert muss also immer die Summe der überspannten Zeilen minus 1 sein. In den überspannten Zeilen müssen die entsprechenden <entry>-Elemente weggelassen werden.
<spanspec>
Im Element <spanspec> lassen sich Regeln definieren, um Spalten horizontal zusammenzufassen. Voraussetzung dafür ist das Definieren der Spaltennamen in tgroup/colspec.
Innerhalb von <spanspec> wird der Name der Regel für das Zusammenfassen der Spalten in @spanname festgelegt. Außerdem werden die Spalten definiert, die zu einer einzigen zusammengefasst werden sollen, indem die Spalte ganz links in @namest und die Spalte ganz rechts in nameend angegeben wird.
Im entsprechenden Element <row> in dem mehrere Spalten zusammengefasst werden sollen, werden dann alle 3 Attribute ebenfalls in <entry> der ersten zusammengefassten Spalte angegeben. Die weiteren <entry>-Elemente der überspannten Spalten werden weggelassen.
Im folgenden Beispiel werden einmal alle 5 Spalten der Tabelle zusammengefasst, einmal nur die vier rechten Spalten:
<table id="tabelle1" frame="all">
<tgroup cols="5" colsep="1" rowsep="1">
<colspec colname="col1" colnum="1"/>
<colspec colname="col2" colnum="2"/>
<colspec colname="col3" colnum="3"/>
<colspec colname="col4" colnum="4"/>
<colspec colname="col5" colnum="5"/>
<spanspec namest="col1" nameend="col5" spanname="col1-5"/>
<spanspec namest="col2" nameend="col5" spanname="col2-5"/>
<thead>
<row>
<entry colname="col1"/>
<entry namest="col2" nameend="col5" spanname="col2-5">
<absatz>Pfändbarer Betrag bei Unterhaltspflicht für … Personen</absatz>
</entry>
</row>
<row>
<entry colname="col1">
<absatz>Nettolohn monatlich</absatz>
</entry>
<entry colname="col2">
<absatz>0</absatz>
</entry>
<entry colname="col3">
<absatz>1</absatz>
</entry>
<entry colname="col4">
<absatz>2</absatz>
</entry>
<entry colname="col5">
<absatz>3</absatz>
</entry>
</row>
<row>
<entry namest="col1" nameend="col5" spanname="col1-5" align="center">
<absatz>in Euro</absatz>
</entry>
</row>
</thead>
<tbody>
<row>
<entry colname="col1">
<absatz>2 670,00 bis 2 679,99</absatz>
</entry>
<entry colname="col2">
<absatz>1 117,28</absatz>
</entry>
<entry colname="col3">
<absatz>595,98</absatz>
</entry>
<entry colname="col4">
<absatz>386,72</absatz>
</entry>
<entry colname="col5">
<absatz>222,49</absatz>
</entry>
</row>
</tbody>
</tgroup>
</table>
Weitere Tabellenstrukturen
<table>
…
<tbody>
<row rowsep="0">
<entry colname="col1" align="left" valign="top" rowsep="1"/>
<entry colname="col2" align="left" valign="top" rowsep="1"/>
</row>
<row rowsep="0">
<entry colname="col1" align="left" valign="top">
<absatz>(Ort, Datum)</absatz>
</entry>
<entry colname="col2" align="left" valign="top">
<absatz>(Unterschrift des Kunden</absatz>
</entry>
</row>
</tbody>
…
</table>

Ausgabe
Abgrenzung: Attribute von <entry> und
<table>
entry/@colsepundentry/@rowsep, genausotable/@colsepundtable/@rowsep, werden in der letzten Spalte einer Zeile immer ignoriert (es gilttable/@frame)entry/@linkssepwird in der ersten Spalte immer berücksichtigt (table/@framegilt dann nicht)entry/@obensepwird in der ersten Zeile immer berücksichtigt (table/@framegilt dann nicht)- Die Standard-Ausgabe von Inhalten in Tabellen-Zellen ist
top left, eine Änderung kann über die Attribute@valignund@aligngesteuert werden.
