Frederik: Elemente in zwei "Ästen" des Ergebnisbaums erzeugen

Beitrag lesen

Hallo!

In einem XSLT-Skript muss ich an einer Stelle Elemente in zwei "Ästen" des Ergebnisbaums erzeugen. Leider habe ich bis jetzt gar keine Ahnung, wie ich das anstellen soll.

Ich habe diese Ausgangsdatei:

<root>  
<image href="test.png" saturation="40"/>  
</root>

Diese soll in eine SVG-Datei umgewandelt werden, wobei ich für die saturation einen Filter anlegen muss:

<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">  
  <defs>  
    <filter id="xyz">  
    ...  
    </filter>  
  </defs>  
  <image xlink:href="test.png" filter="url(#xyz)"/>  
</svg>

Dabei können eben beliebig viele image-Elemente auftreten, es soll aber nur ein defs-Element geben. Wenn ich jetzt ein template auf image anwende, kann ich das filter-Element nicht in ein bestehendes defs-Element schreiben. Oder doch?

Für Hinweise auf einen Lösungsansatz wäre ich sehr dankbar!

Liebe Grüße
Frederik