2008 4 aprile 2008

Lavorare con gli attributi dei nodi XML in XSLT

Se si utilizza XML e XSL, allora si potrebbe sono imbattuto in un tempo, quando si deve giocare con gli attributi ei valori di nodi XML in voi XSL. Essi sono un sacco di siti con informazioni fiato lungo su questo, ma non ho trovato erano brevi e precise ... Questo non è un XML / XSL TUTORIAL, ma il mio tentativo di mettere insieme-una sorta di trucco lista ...

L'XML di esempio che ci lavoro con simile a questa ...

<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="food.xsl"?>
<food>
<fruits type="tropical">
<item name="mango" moreinfo="http://www.mango.com">Mango is the king of fruits</item>
<item name="banana" moreinfo="http://www.banana.com">Banana once a day , keeps the doctor away</item>
<item name="orange" moreinfo="http://www.orange.com">Orange is the color and rich in vitamin C</item>
<item name="Papaya" moreinfo="http://www.papaya.com">Papaya - Hot when raw, cold when ripe</item>
</fruits>
</food>

Quindi, consente di iniziare a trasformare la nostra in precedenza XML utilizzando XSL

Esempio 1: visualizzazione valore di un attributo scelto

<xsl:value-of select="/food/fruits/item[@name='orange']" /><br />
to get more information about <a href="{/food/fruits/item[@name='orange']/@moreinfo}" target="new" ><xsl:value-of select="/food/fruits/item[@name='orange']/@name" /> </a>

Risultato HTML sarà simile a

Orange is the color and rich in vitamin C,
to get more information about <a href="http://www.orange.com" target="new">


Esempio 2: la ripetizione ciclica di e la visualizzazione di tutti i nomi degli attributi XML ei loro valori

<xsl:for-each select="/food/fruits/item/@*">
attribute name : <xsl:value-of select="name()"/>,
attribute value : <xsl:value-of select="."/> <br />
</xsl:for-each>

Risultato HTML sarà simile a


attribute name : name, attribute value : mango
attribute name : moreinfo, attribute value : http://www.mango.com
attribute name : name, attribute value : banana
attribute name : moreinfo, attribute value : http://www.banana.com
attribute name : name, attribute value : orange
attribute name : moreinfo, attribute value : http://www.orange.com
attribute name : name, attribute value : Papaya
attribute name : moreinfo, attribute value : http://www.papaya.com


Scarica tutti i file qui sopra (245 downloads)



Tieni d'occhio questo spazio, terrò questo aggiornamento con nuove scoperte ...


NDK casa | Esprimendo IT | Gusto Esprimendo | Penmenship Esprimendo | Awe Esprimendo | esprimermi