English | Français | >> Deutsch << | Magyar | 中文 | Polski ZVON > Tutorials > XSLT Tutorial
>> Seite 35 << | Zurück | Vor | Inhalt | Element-Index

Eine Variable kann einen Teil des Ergebniss-Baum enthalten. Die Operationen welche für einen Teilbaum erlaubt sind eine Teilmenge derer, die für den gesamten Knoten gilt. Ein Operation auf einen Teilbaum ist nur dann zul?ssig, wenn die Operation auf eine Zeichenkette angewendet werden k?nnte. Unter Umst?nden muss die Zeichenkette zuerst in eine Zahl oder einen Boolschen-Wert konvertiert werden. Zum Beispiel ist es nicht m?glich die XPATH-Kürzel /, // oder []-Opertoren auf einen Ergebniss-Baum anzuwenden. Wenn aber eine erlaubte Operation auf ein Ergebniss-Baum angwendet wird, wird es genauso ausgeführt wie in der vergleichbaren Knoten-Auswahl. Vergleichen Sie XSLT Stylesheet 1 mit XSLT Stylesheet 2 .

XSLT Stylesheet 1

XML Quelltext
<source>

<TABLE border="1">
     <TR>
          <TD>AAA</TD>
          <TD>BBB</TD>
     </TR>
     <TR>
          <TD>aaa</TD>
          <TD>bbb</TD>
     </TR>
</TABLE>
<TABLE border="1">
     <TR>
          <TD>1111111</TD>
     </TR>
     <TR>
          <TD>22222222</TD>
     </TR>
</TABLE>

</source>

Ausgabe
<TABLE border="1">

  <TR>

     <TD>1111111</TD>

  </TR>

  <TR>

     <TD>22222222</TD>

  </TR>

</TABLE>
<TABLE border="1">

  <TR>

     <TD>AAA</TD>

     <TD>BBB</TD>

  </TR>

  <TR>

     <TD>aaa</TD>

     <TD>bbb</TD>

  </TR>

</TABLE>
<TABLE border="1">

  <TR>

     <TD>1111111</TD>

  </TR>

  <TR>

     <TD>22222222</TD>

  </TR>

</TABLE>

HTML-Ansicht
1111111
22222222
AAA BBB
aaa bbb
1111111
22222222
XSLT Stylesheet
<xsl:stylesheet version = '1.0'
     xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>

<xsl:variable name="A1">
     <xsl:copy-of select="//TABLE[1]"/>
</xsl:variable>
<xsl:variable name="A2">
     <xsl:copy-of select="//TABLE[2]"/>
</xsl:variable>
<xsl:template match="/">
     <xsl:copy-of select="$A2"/>
     <xsl:copy-of select="$A1"/>
     <xsl:copy-of select="$A2"/>
</xsl:template>


</xsl:stylesheet>


XSLT Stylesheet 2

XML Quelltext
<source>

<TABLE border="1">
     <TR>
          <TD>AAA</TD>
          <TD>BBB</TD>
     </TR>
     <TR>
          <TD>aaa</TD>
          <TD>bbb</TD>
     </TR>
</TABLE>
<TABLE border="1">
     <TR>
          <TD>1111111</TD>
     </TR>
     <TR>
          <TD>22222222</TD>
     </TR>
</TABLE>

</source>

Ausgabe
<P>

1111111


22222222

</P>
<P>

AAA
BBB


aaa
bbb

</P>
<P>

1111111


22222222

</P>

HTML-Ansicht

1111111 22222222

AAA BBB aaa bbb

1111111 22222222

XSLT Stylesheet
<xsl:stylesheet version = '1.0'
     xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>

<xsl:variable name="A1">
     <xsl:copy-of select="//TABLE[1]"/>
</xsl:variable>
<xsl:variable name="A2">
     <xsl:copy-of select="//TABLE[2]"/>
</xsl:variable>
<xsl:template match="/">
     <P>
          <xsl:value-of select="$A2"/>
     </P>
     <P>
          <xsl:value-of select="$A1"/>
     </P>
     <P>
          <xsl:value-of select="$A2"/>
     </P>
</xsl:template>


</xsl:stylesheet>