josef stebegg: xpath und attribute

Beitrag lesen

hallo josef,

der wesentliche Teil der xsl:

<xsl:for-each select="ehe/kinder">
<div><xsl:value-of select="ehe/kinder" /></div>
</xsl:for-each>

und das funktioniert für die ausgabe?
du bist (durch for-each) bereits in ehe/kinder dann gehst du nochmal weiter "hinunter" ehe/kinder
also jetzt hast du einen pfad der so geht: ehe/kinder/ehe/kinder .

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.

dazu müsste man deinen xsl sheet sehen.
sonst könntest du es ähnlich wie schon gemacht: select="../../@farbe"/ machen

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

ich wüsste nichts was dich daran hindern sollte. was du in einem atributwert schreibst ist deine sache (bzw. der von der DTD)

grüße
thomas

....................................................

Hallo Thomas!

Danke fuer Deine Antwort.

Ich habe jetzt die drei notwendigen Dateien ins Netz gestellt.
http://www.innonet.at/~jstebegg/xml/kuk93a.xml (gekuerzt) sowie /kuk93a.xsl und /reg93a.css.

Die fast fertige (nachbearbeitete) html:
http://www.innonet.at/~jstebegg/jt2/kuk92.html

jetzt hast du einen pfad der so geht: ehe/kinder/ehe/kinder

Solche Fehler habe ich leider oefter. Da es funktioniert faellt es mir auch schwer auf.
Im speciellen Fall kann ich sogar ausser "." alles moegliche hineinschreiben !?

Die senkrechte Verbindungslinie von der kleinen Zahl zum Anfang einer darunter liegenden Linie bekomme ich bis jetzt nur wenn ich in der xml das "farbe" attribut in das <ehe> element schreibe und in der xsl
 <xsl:value-of select="../@farbe"/>.

bei ../../ komme ich doch in das <paar> element und wie ein Versuch bestaetigt hat wuerde ../../@farbe"/ ein attribut auswaehlen das sich im <paar> element befindet.

Ihr habt in Eurem Buch ein paar schoene Achsenbilder und Knotentestbeispiele (leider nicht im praktischen Einsatz). Wenn
<xsl:value-of select="preceding-sibling::mann/@farbe"/> nicht stimmt dann habe ich es trotzdem noch nicht verstanden.
Vielleicht liegt mein Fehler aber auch ganz wo anders.

------

ich wüsste nichts was dich daran hindern sollte. was du in einem atributwert schreibst ist deine sache (bzw. der von der DTD)

---wenn man weis wie man dem Browser mitteilt das dann z.B. farbe="spanisch-habsburg" die farbe #666 ist.
 Wenn das nur ueber eine DTD geht die ich mir bis jetzt geschenkt habe, dann muß ich mich doch einmal damit genauer beschaeftigen.

gruesse
josef