josef stebegg: uebergabe von attributwerten

ave forum.

Wie ist es bitte moeglich die Attribut-werte einer xml
 ---
 <?xml version="1.0" encoding="iso-8859-1"?>
 <?xml-stylesheet type="text/xsl" href="literatur.xsl"?>

<literaten>
  <person geb="1791" ges="1872">Grillparzer</person>
  <person geb="1749" ges="1832">J.W. v. Goethe</person>
 </literaten>
 ---
 in die Attribut-werte von Style Sheets zu schreiben?

In der Weise von:
 left:(geb-1000) und width:(ges-geb)

Am naehesten habe ich soetwas bei Variablen gesehen.
 ---
 <xsl:template match="person">
  <xsl:variable name="lage">left:791px;</xsl:variable>
  <xsl:variable name="breite">width:81px;</xsl:variable>
 <div class="person" style="position:relative; {$lage}; {$breite};"><xsl:value-of select="." /></div>
 </xsl:template>
 ---
 geb und ges koennten natuerlich auch Elemente sein.

Ein etwas ausfuehrlicherer Versuch und noch in (x)html:
 http//:www.innonet.at/~jstebegg/jt2/jt2-start.html

josef

  1. hi josef
    attribute spricht man mit @ an:

    <xsl:template match="person">
     <xsl:variable name="lage">left:<xsl:value-of select="@geb - 1000"/>px</xsl:variable>
     <xsl:variable name="breite">width:<xsl:value-of select="@ges - @geb"/>px</xsl:variable>
     <div class="person" style="position:relative; {$lage}; {$breite};"><xsl:value-of select="." /></div>
    </xsl:template>

    lg spiff

    1. hi josef
      attribute spricht man mit @ an:

      <xsl:template match="person">
      <xsl:variable name="lage">left:<xsl:value-of select="@geb - 1000"/>px</xsl:variable>
      <xsl:variable name="breite">width:<xsl:value-of select="@ges - @geb"/>px</xsl:variable>
      <div class="person" style="position:relative; {$lage}; {$breite};"><xsl:value-of select="." /></div>
      </xsl:template>

      lg spiff

    2. hi josef
      attribute spricht man mit @ an:

      <xsl:template match="person">
      <xsl:variable name="lage">left:<xsl:value-of select="@geb - 1000"/>px</xsl:variable>
      <xsl:variable name="breite">width:<xsl:value-of select="@ges - @geb"/>px</xsl:variable>
      <div class="person" style="position:relative; {$lage}; {$breite};"><xsl:value-of select="." /></div>
      </xsl:template>

      lg spiff

      hallo spiff.

      Danke fuer Deine schnelle und praezise Hilfe.

      josef