xsl:import

Syntax

<xsl:import/>


Postition

Top-Level Element


Attribute
Bezeichnung Wert Bedeutung
href uri URI des Stylesheets, das importiert werden soll

<xsl:import>

sorgt für den Import eines weiteren Stylesheets in das ursprüngliche. Das importierte Modul besitzt allerdings eine geringere Importpriorität als das ursprüngliche Stylesheet.

Elementtyp Prioritätsregeln
<xsl:attribute-set> Attribut-Sets, die den gleichen Namen besitzen, werden zusammengeführt; existiert ein Attribut doppelt, wird das mit der höchsten Importpriorität übernommen
<xsl:decimal-format> Importprioritäten dieses Elements sind irrelvant, allerdings dürfen keine Dezimalformate mit gleichen Namen mehrmals definiert werden
<xsl:import> und <xsl:include> keine Konflikte
<xsl:key> alle Key-Definitionen werden übernommen; Importprioritäten sind irrelevant
<xsl:namespace-alias> falls mehrer Alias für den gleichen Stylesheet-Prefix definiert worden sind, wird der mit der höchsten Importpriorität übernommen
<xsl:output> Attribute des Elements werden zusammengeführt; exisitiert ein Attribut doppelt, wird das mit der höchsten Importpriorität übernommen
<xsl:strip-space> und <xsl:preserve-space> falls mehrere <xsl:strip-space> oder <xsl:preserve-space> Elemente existieren, die das gleiche Element betreffen, wird dasjenige verwendet, welches die höchste Importpriorität besitzt
<xsl:template> siehe <xsl:template>
<xsl:variable> und <xsl:param> falls mehrer globale Parameter oder Varibalen mit gleichem Namen exisitieren, wird dasjenige verwendet, welches die höchste Importpriorität besitzt

Definition

XSLT Kapitel 2.6.2


Beispiel

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:output method="html"/>
    
<xsl:import href="table-properties.xsl"/>

<xsl:attribute-set name="aqua-table" use-attribute-sets="default-table">
     <xsl:attribute name="BGCOLOR">AQUA</xsl:attribute>
     <xsl:attribute name="BORDER">0</xsl:attribute>
     <xsl:attribute name="CELLPADDING">5</xsl:attribute>
</xsl:attribute-set>    

<xsl:template match="/">
     <HTML>
          <HEAD>
               <TITLE>Element: &lt;xsl:import&gt; / Beispiel 01</TITLE>
          </HEAD>
          <BODY>
               <xsl:apply-templates select="shop"/>
          </BODY>
     </HTML>
</xsl:template>

<xsl:template match="shop">
     <xsl:element name="TABLE" use-attribute-sets="aqua-table">
          <TR>
               <TH WIDTH="150">Abteilung:</TH>
               <TH WIDTH="100">Artikel:</TH>
               <TH WIDTH="100">Preis:</TH>
          </TR>
          <xsl:apply-templates select="order/product"/>
     </xsl:element>
</xsl:template>

<xsl:template match="product">
     <TR>
          <TD><xsl:value-of select="@department"/></TD>
          <TD><xsl:value-of select="name"/></TD>
          <TD ALIGN="RIGHT">
               <xsl:value-of select="price"/>
               <xsl:text> </xsl:text>
               <xsl:value-of select="currency"/>
          </TD>
     </TR>
</xsl:template>

</xsl:stylesheet>


<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<!-- table-properties.xsl -->

<xsl:attribute-set name="default-table">
     <xsl:attribute name="BORDER">0</xsl:attribute>
     <xsl:attribute name="CELLSPACING">0</xsl:attribute>
     <xsl:attribute name="CELLPADDING">0</xsl:attribute>
</xsl:attribute-set>

<xsl:attribute-set name="aqua-table" use-attribute-sets="default-table">
     <xsl:attribute name="BGCOLOR">AQUA</xsl:attribute>
     <xsl:attribute name="BORDER">1</xsl:attribute>
</xsl:attribute-set>    

</xsl:stylesheet>


© 2001 by Timo Schäfer