Hi,
In etwa:
<xsl:template match="person">
<xsl:variable name="eventids" select="@events" />
<dt><xsl:value-of select="@names"/></dt>
<dd><xsl:apply-templates select="//event[@id[contains($eventids, .)]]" /></dd>
</xsl:template>
Genial, das funktioniert!
Dankeschön!
Also wenn ich das jetzt richtig verstehe
selektiert
//event[@id[contains($eventids, .)]]
alle event-Elemente, die ein id-Attribut haben
das wäre //event[@id]
, welches wiederum die Bedingung
contains($eventids,.)
erfüllen muß, sprich, der id-Attribut-Wert muß in der Variablen stringmäßig enthalten sein.
Wenn ich das richtig verstehe, funktioniert das in meinem Fall, weil die Ids alle mit e beginnen und danach nur Ziffern kommen.
Wäre es aber so, daß es auch ids der Form e1e2 gäbe, hätte ich wieder ein Problem, da z.B: "e3,e4,e1e2,e5" eben auch die Zeichenkette "e2" enthält, obwohl es nicht die id "e2" enthält...
Ok, zumindest für meinen Fall funktioniert es.
Nochmals Danke für die Hilfe!
cu,
Andreas
Der Optimist: Das Glas ist halbvoll. - Der Pessimist: Das Glas ist halbleer. - Der Ingenieur: Das Glas ist doppelt so groß wie nötig.
http://mud-guard.de/? http://www.andreas-waechter.de/ http://www.helpers.de/