PDA

View Full Version : [xsl] imposible - for-each


The March
12-07-2005, 15:39
Ola!

sto creando una stringa xsl e mi sono trovato a dover usare il ciclo for-each..
Rispettando la sintassi letta da qualche sito e poi dall'msdn ho visto che le righe vengono riprodotte giustamente... solo che non vengono valorizzate :rolleyes:
in pratica mettendo i for-each i value-of smettono di funzionare :muro:


<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/">
<GanttChartCollection>
<GanttChart GanttChartId="FirstView" Default="true">
<xsl:for-each select="ProductSegmentList/PDefM_PS">
<CustomRow RowPk="1"
ReadOnly="false" SpecialStyleColor="1234567">
<TaskName>
<xsl:value-of select="ProductSegmentList/PDefM_PS/PS"/>
</TaskName>
<Start>25/12/2005 10:00:00</Start>
<Finish>25/12/2005 19:00:00</Finish>
</CustomRow>
</xsl:for-each>
</GanttChart>
</GanttChartCollection>
</xsl:template>
</xsl:stylesheet>

The March
12-07-2005, 15:44
io sto usando oxygen come editor di testo, esiste la possibilità di creare automaticamente un file xsl partendo dal xml sorgente e l'xml finale???

con uale altro programmino sarebbe possibile invece?

thnks

anx721
12-07-2005, 23:45
prova con

<xsl:value-of select="PS"/>

al posto di

<xsl:value-of select="ProductSegmentList/PDefM_PS/PS"/>

The March
13-07-2005, 10:27
prova con

<xsl:value-of select="PS"/>

al posto di

<xsl:value-of select="ProductSegmentList/PDefM_PS/PS"/>


:muro: :muro: :muro: MAPORKKKKKKKKKK

ci stavo tirando facciate da lunedì :muro: :muro: :muro:


ma scusa quindi il percorso a cosa è riferito? in base al ciclo dentro il quale è inserito?


con ./ davanti al percorso "si torna su" di un livello?


Grazie per l'aiuto ;)

anx721
13-07-2005, 14:54
Gli elementi vanno riferiti in base a dove ti trovi; nel ciclo for scrivendo

<xsl:for-each select="ProductSegmentList/PDefM_PS">


significa che per ogni elemento ProductSegmentList/PDefM_PS ti posizioni su di esso e quindi all'interno del ciclo i percorsi vanno scritti tenendo presente che ti trovi su quell'elemento. Per andare su di un elemento devi usare ../ mentre ./ indica "questo" elemento:

../ciao

sale su di uln livello e seleziona l'elemento ciao

./ciao

seleziona il figlio ciao di questo elemento

The March
13-07-2005, 15:02
thanks a lot :p