MudGuard: IDREFS aufdröseln in einzelne Ids...

Beitrag lesen

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/