Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem XSLT - jméno uzlu z parametru

Pěkný den, s XSLT moc kamarád nejsem.
Zadám-li si do xsl souboru

<xsl:for-each select="automaticka-opticka-kontrola/produkt">

načtou se obsahy uzlů v pořádku.
Pokud se do onoho selectu pokoušíme zadat předem definovanou proměnnou nebo parametr, chápe ji jako řetězec a nenačte nic.
Googlením jsme zjistili, že neexistuje triviální řešení. Hledali jsme správně?
Děkuji.

Předmět Autor Datum
mohol by si uviest priklad ako tam davas tu premennu?
wam_Spider007 08.07.2015 12:27
wam_Spider007
Nefunguje ani, když ji nadefinuji jako <xsl:param name="los" /> a poté dám <xsl:for-each select=…
hynajs 08.07.2015 13:15
hynajs
ono ked volas xlst pomocou nejakeho processora (odporucam Saxon EE 9.*), tak vies udat, ze dany para…
wam_Spider007 08.07.2015 14:41
wam_Spider007
Ok, děkuji. Už jsme to samozřejmě udělali jinak - stačilo změnit nepodstatně strukturu XML souboru.… poslední
hynajs 08.07.2015 14:48
hynajs

Nefunguje ani, když ji nadefinuji jako

<xsl:param name="los" />

a poté dám

<xsl:for-each select="$los">

A to bychom tam ještě chtěli mít concat :-) .
Myslím, že narážíme neustále na to, že v té proměnné je řetězec a neumíme z ní udělat xpath.

ono ked volas xlst pomocou nejakeho processora (odporucam Saxon EE 9.*), tak vies udat, ze dany parameter ma brat ako xpath. Tusim sa pred nazov parametra pri volani dava otaznik.

Ale obavam sa, ze ti to aj tak v tomto pripade nepomoze. Skusal som rozne varianty dokonca aj v XSLT verzii 3.0 a takto to nepojde.
Radsej daj vediet co potrebujes urobit. Mozno by to slo urobit inak, pripadne pomocou XQuery, ktory ma ovela vacsie moznosti.

Btw pouzitie for-each je v 99% pripadoch mozne nahradit template-om.

Ok, děkuji.
Už jsme to samozřejmě udělali jinak - stačilo změnit nepodstatně strukturu XML souboru.
Prostě jsme chtěli mít XML soubor rozdělený do více naduzlů a jednou by se vybíral ten nebo onen v závislosti na proměnné. Pokud se zavede ke každé položce nějaký tag kategorie, výběr požadované kategorie je pak jednoduchý a umíme jej :-).
Ještě jednou děkuji za Tvůj čas.

Zpět do poradny Odpovědět na původní otázku Nahoru