Also folgendes:
Das xsl-Script wird von einem php-script aus aufgerufen. Es stellt soll eine Menü-Datei in ein Aufklappbares Menü verwandeln.
Die Menü-XML ist folgendermaßenm aufgebaut:
<menu>
<item name="start" text="Startseite" link="internal://start" />
<item name="ich" text="Ich">
<item name="steckbrief" text="Steckbrief" link="internal://ich/steckbrief" />
<item name="lebenslauf" text="Lebenslauf" link="internal://ich/lebenslauf" />
<item name="kontakt" text="Kontakt" link="internal://ich/kontakt" />
</item>
<item name="projekte" text="Projekte">
<item name="php" text="PHP">
<item name="pxml" text="PXML" link="internal://projekte/php/pxml" />
<item name="xmldoc" text="XMLDoc" link="internal://projekte/php/xmldoc" />
<item name="xmlmenu" text="XMLMenu" link="internal://projekte/php/xmlmenu" />
</item>
<item name="vb" text="VB">
<item name="sbiii" text="SB III" link="internal://projekte/vb/sbiii" />
</item>
<item name="bbs4u" text="BackBone-Systems 4u">
<item name="forum" text="Das Forum" link="http://forum.backbone-systems4u.de" extern="true" />
<item name="chat" text="Der Chat" link="http://chat.backbone-systems4u.de" extern="true" />
</item>
</item>
<item name="impressum" text="Impressum" link="internal://impressum" />
</menu>
Das xsl-Script reagiert nun auf den menu-Eintrag und ruft dann per xsl:call-template ein Template auf, dass sich dannentsprechend den Sub-Items selbst wieder aufruft. (Rekursion). Das funktioniert auch wunderbar. Als ergebnis erhalte ich in etwa folgendes:
Start
Ich
Steckbrief
Lebenslauf
Kontakt
Projekte
PHP
PXML
XMLDoc
XMLMenu
VB
SB III
BackBone-Systems 4u
Das Forum
Der Chat
Impressum
Nun soll aber über eine Get-Variable, die ich dem Php-Script übergeben die Ausgabe geregelt werden. Der Wert der GET-Variable wird dem XSLT-Prozessor als Parameter übergeben. Also wenn die Variable "ich" enthält, dann soll die ausgabe
Start
Ich
Steckbrief
Lebenslauf
Kontakt
Projekte
Impressum
lauten. Wenn die Variable "projekte.vb" lauten, dann wird dass ausgegebn:
Start
Ich
Projekte
PHP
VB
SB III
Impressum
Um das zu erreichen muss ich den Pfad, also den Inhalt der Variable an den punkten trennen und dazu benötige ich eine Split-Funktion.
Was MudGuard gesagt hat, mit den Mehreren Variablen, geht nciht, da der Pfad ja eine Beliebeige Tiefe haben kann, ich also nicht weiß wieviele Parameter ich brauche...
Hoff ich konnte dass jetzt etwas verständlicher machen.
Peter