Attribut-Bündelungen

Es werden mehrere Attribute zusammengefasst, sodass diese gemeinsam einem Element zugewiesen werden und mehrfach wiederverwendet werden können.

Das Element <xsl:attribute-set> dient zur Bündelung von Attributen, die an späterer Stelle aufgerufen werden. Der Einsatz hat mehrere Vorteile, zum einen können diese, wenn sie am Anfang eines Stylesheets stehen, den Überblick erleichtern, zum anderen lassen sich Eigenschaften zentral bearbeiten.

Quellcode

<xsl:attribute-set name="Ueberschrift-Titel1">              ❶
   <xsl:attribute name="font-family">Arial Unicode MS</xsl:attribute>
   <xsl:attribute name="font-size">18pt</xsl:attribute>
   <xsl:attribute name="font-weight">bold</xsl:attribute>
   <xsl:attribute name="space-after">99pt</xsl:attribute>
   <xsl:attribute name="space-before.conditionality">discard</xsl:attribute>
   <xsl:attribute name="keep-with-next">always</xsl:attribute>
</xsl:attribute-set>

❶ Um einem Element mehrere Attribute zusammen zuzuweisen, wird das Element <xsl:attribute-set> verwendet: Zunächst wird dem <attribute-set>-Element mit dem Attribut name ein Name zugewiesen. Danach folgen die im Element enthaltenen Attribute und deren Werte. Der erste Attribut-Satz zeigt ein Beispiel für eine mögliche Formatierung einer Überschrift.

<xsl:attribute-set name="table.data">                ❶
   <xsl:attribute name="table-layout">fixed</xsl:attribute>
   <xsl:attribute name="start-indent">2mm</xsl:attribute>
   <xsl:attribute name="end-indent">2mm</xsl:attribute>
   <xsl:attribute name="space-before">10pt</xsl:attribute> 
   <xsl:attribute name="space-after">10pt</xsl:attribute>
   <xsl:attribute name="keep-with-next.within-page">always</xsl:attribute>
</xsl:attribute-set>

❶ Der zweite Attribut-Satz demonstriert beispielhaft zusammengefasste Eigenschaften einer Tabelle.

<fo:block xsl:use-attribute-sets="Ueberschrift-Titel1"            ❶
axf:outline-level="2" axf:outline-expand="false" keep-with-next="always">
   <fo:table width="110mm">
      <fo:table-column column-number="1" column-width="15mm"/> 

❶ Um auf die im <attribute-set>-Element enthaltenen Attribute gesammelt zuzugreifen, wird das Attribut use-attribute-sets verwendet. Der Wert dieses Elements muss mit dem Wert des name-Attributs eines der <attribute-set>-Elemente übereinstimmen.

vor >>

 

Tipp der data2type-Redaktion:
Zum Thema XSL-FO bieten wir auch folgende Schulungen zur Vertiefung und professionellen Fortbildung an:

Copyright © dpunkt.verlag GmbH 2004
Für Ihren privaten Gebrauch dürfen Sie die Online-Version ausdrucken.
Ansonsten unterliegt dieses Kapitel aus dem Buch "XSL-FO in der Praxis" denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.

dpunkt.verlag GmbH, Ringstraße 19B, 69115 Heidelberg, fon 06221-14830, fax 06221-148399, hallo(at)dpunkt.de