josef stebegg: xpath und attribute

Beitrag lesen

Hallo!

Bei einem Stammbaum habe ich noch (mindestens) zwei Schoenheitsfehler.

Eine Elementgruppe (xml) sieht etwa so aus:

<paar>
 <mann geb="1614" ges="1665" rg1="1621" rg2="1665" farbe="666" zeile="16">
   <name>Philipp IV </name>
   </mann>
 <ehe hochzeit="1640" hz2="1660" farbe="666" zeile="17">
   <kinder geburt="1645" nr="1" t2="40">Karl (II)</kinder>
   </ehe>
 .............
</paar>

der wesentliche Teil der xsl:

<xsl:for-each select="ehe/kinder">
 ...............
 <xsl:variable name="vater">background:#<xsl:value-of select="../@farbe"/></xsl:variable>
 .......................
 <div style="position:absolute; {$kind}; {$ebene1}; {$vert1}; {$vater}; width:1px; " class="hline1" >
 <xsl:value-of select="ehe/kinder" /></div>
 </xsl:for-each>

Da nun aber die Farbe (hier #666) immer auch schon beim mann-element vorkommt, wollte ich sie mir auch dort holen.
 Nach den diversen Lehrbuechern und tutorials (die aber kein passendes Beispiel haben) kann ich mir nur soetwas  vorstellen :
 <xsl:value-of select="preceding-sibling::mann/@farbe"/>
 ...funktioniert aber nicht.

Eine moegliche Frage warum ich nicht gleich die Attribute in das mann-element gelegt habe erklaert sich daraus daß nicht alle "paar" elemente ein ehe bzw kinder element haben und ich nach der Umwandlung mit insant-saxon jede Menge Blindzeilen haben wuerde.

Die zweite Frage betrifft auch die Farbe.
Es waere schoen wenn ich anstelle von farbe="666" gleich farbe="span-habsburg" schreiben koennte.
Wie kann man das bitte realisieren.

Josef