View Full Version : xml - xslt help urgente please
IspiCiosa
13-06-2007, 11:01
ragazzi ho un problema sto cercandi di trasormare dei documenti xml con xslt
solo che non capisco come si usa la funzione template
tipo <xsl:template match"/">
help me please
allora.... è semplice ;)
questo
<xsl:template match="/">ss</xsl:template>
significa semplicemente quando trovi la root del file xml metti "ss".
nell'attributo match va messa un'espressione XPATH
per esempio l'espressione "/pippo/pluto" viene soddissfatta da
<pippo><pluto></pluto></pippo>
per maggiori info
http://www.w3schools.com/xsl/
IspiCiosa
13-06-2007, 15:33
si ma allora per fare un esempio l'esercizio 4 qui (www.dsi.unive.it/~xml/esercitazioni.html)
il secondo esercizio
non si dovrebbe fare cosi???:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"/>
<xsl:template match="/">
<html>
<xsl:if test="@listino=pubblico">
<xsl:value-of select="@codice"/>
<xsl:value-of select="descrizione"/>
<xsl:value-of select="@prezzo"/>
</xsl:if>
</html>
</xsl:template>
</xsl:stylesheet>
è sbagliato cosi?
si mi sa che è sbagliato, dovrebbe essere cosi:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"/>
<xsl:template match="/prodotti/prodotto">
<html>
<head>
</head>
<body>
<xsl:if test="@listino=pubblico">
<xsl:value-of select="@codice"/><br>
<xsl:value-of select="descrizione"/><br>
<xsl:value-of select="@prezzo"/><br>
</xsl:if>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
nn so sè ho fatto qualche errore nn ricordo bene come funziona tutto ;)
IspiCiosa
13-06-2007, 15:54
mi da errore sulla chiusura del if perchè??ù
i br non hanno il tag di chiusura
credo siano quelli ma cmq non mi dà niente in output
si scusa quello è errato mi era un'attimo sfuggito l'xml :doh: :doh: :doh:
IspiCiosa
13-06-2007, 16:14
ma cmq mi da un output tutto vuoto
forse c'è qualchè problema che nn vedo ;)
comunque prendi per esempio questo:http://www.w3schools.com/xsl/xsl_for_each.asp
prova a mettere il path completo nel select.
IspiCiosa
13-06-2007, 16:54
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<xsl:for-each select="prodotti/prodotto">
<xsl:value-of select="descrizione"/>
<xsl:value-of select="@codice"/>
</xsl:for-each>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
ho provato cosi ma non funzia
Domanda stupida, ma con cosa lo stai provando ??
IspiCiosa
13-06-2007, 17:07
con xmlspy
in output mi da solo le scritte html praticamente
PS "il programma lo scaricato da un paio di giorni quindi non so se sbaglio io ma non credo"
è questo (http://download.html.it/software/vedi/2653/xmlspy-enterprise-edition/)
Conosco il tool è il meglio ;)
comunque mi sto perdendo pure io, e poi sto andando a casa ;)
ciao fai altre prove la stada è questa !!
IspiCiosa
13-06-2007, 17:24
grazie mille cmq!!!
se intanto qualcun altro sa gli errori che sto facendo sono ben accetti altri suggerimenti
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.