XSLT: název elementu v XML pomocí proměnné

20. červenec 2012 | 18.25 |
blog › 
XSLT: název elementu v XML pomocí proměnné

Pokud pracujete s XSLT, možná někdy narazili na problém, jak  vypsat data z elementu, jehož název ale přesně nevíte a jeho část máte uloženou v proměnné. Většinou to lze obejít, což jsem často dělával i já. Přitom to lze ale jednoduše vyřešit.

Řešením je použít funkce local-name() a concat(). Pomocí local-name() se můžete odkázat na název elementu a concat() vám umožňuje spojit řetězce a tedy i řetězec s proměnnou.

Vypsání nějakého názvu by tedy mohlo vypadat následovně (jen pro ukázku):

<xsl:value-of select="$produkt/*[local-name()=concat('cena_',$prihlaseny_neprihlaseny)]" />

Místo local-name() by šlo použít i name(), ale to by mohlo někdy dělat - podle tohoto vysvětlení by se ale problémy měly týkat pouze použití s namespace, kde obě funkce vrací něco trochu jiného.

Zdroje:

Zpět na hlavní stranu blogu

Související články

žádné články nebyly nenalezeny

Komentáře

 zatím nebyl vložen žádný komentář