concaténer le resultat de valeur
Bonjour
voici mon xml d'origine
Code:
1 2 3 4
|
<?xml version="1.0" encoding="UTF-8"?>
-<REF date_parution="24082013"><PAGE FOLIO="1" CAHIER="1" EDITION="ECL" NOM="ECLJ101" LAY="S"/><PAGE FOLIO="2" CAHIER="1" EDITION="ECL" NOM="ECLJ102" LAY="S"/><PAGE FOLIO="3" CAHIER="1" EDITION="ECL" NOM="ECLJ103" LAY="S"/><PAGE FOLIO="4" CAHIER="1" EDITION="ECL" NOM="ECLJ104" LAY="S"/><PAGE FOLIO="5" CAHIER="1" EDITION="ECL" NOM="ECLJ105" LAY="S"/><PAGE FOLIO="6" CAHIER="1" EDITION="ECL" NOM="ECLJ106" LAY="S"/><PAGE FOLIO="7" CAHIER="1" EDITION="ECL" NOM="ECLJ107" LAY="S"/><PAGE FOLIO="8" CAHIER="1" EDITION="ECL" NOM="ECLJ108" LAY="S"/><PAGE FOLIO="9" CAHIER="1" EDITION="ECL" NOM="ECLJ109" LAY="S"/><PAGE FOLIO="10" CAHIER="1" EDITION="ECL" NOM="ECLJ110" LAY="S"/><PAGE FOLIO="11" CAHIER="1" EDITION="ECL" NOM="ECLJ111" LAY="S"/><PAGE FOLIO="12" CAHIER="1" EDITION="ECL" NOM="ECLJ112" LAY="S"/><PAGE FOLIO="13" CAHIER="1" EDITION="ECL" NOM="ECLJ113" LAY="S"/><PAGE FOLIO="14" CAHIER="1" EDITION="ECL" NOM="ECLJ114" LAY="S"/><PAGE FOLIO="15" CAHIER="1" EDITION="ECL" NOM="ECLJ115" LAY="S"/><PAGE FOLIO="16" CAHIER="1" EDITION="ECL" NOM="ECLJ116" LAY="S"/><PAGE FOLIO="17" CAHIER="1" EDITION="ECL" NOM="ECLJ117" LAY="S"/><PAGE FOLIO="18" CAHIER="1" EDITION="ECL" NOM="ECLJ118" LAY="S"/><PAGE FOLIO="1" CAHIER="2" EDITION="ECL" NOM="ECLC101" LAY="S"/><PAGE FOLIO="2" CAHIER="2" EDITION="ECL" NOM="ECLC102" LAY="S"/><PAGE FOLIO="3" CAHIER="2" EDITION="ECL" NOM="ECLC103" LAY="S"/><PAGE FOLIO="4" CAHIER="2" EDITION="ECL" NOM="ECLC104" LAY="S"/><PAGE FOLIO="5" CAHIER="2" EDITION="ECL" NOM="ECLC105" LAY="S"/><PAGE FOLIO="6" CAHIER="2" EDITION="ECL" NOM="ECLC106" LAY="S"/><PAGE FOLIO="7" CAHIER="2" EDITION="ECL" NOM="ECLC107" LAY="S"/><PAGE FOLIO="8" CAHIER="2" EDITION="ECL" NOM="ECLC108" LAY="S"/><PAGE FOLIO="19" CAHIER="1" EDITION="ECL" NOM="ECLJ119" LAY="S"/><PAGE FOLIO="20" CAHIER="1" EDITION="ECL" NOM="ECLJ120" LAY="S"/><PAGE FOLIO="21" CAHIER="1" EDITION="ECL" NOM="ECLJ121" LAY="S"/><PAGE FOLIO="22" CAHIER="1" EDITION="ECL" NOM="ECLJ122" LAY="S"/><PAGE FOLIO="23" CAHIER="1" EDITION="ECL" NOM="ECLJ123" LAY="S"/><PAGE FOLIO="24" CAHIER="1" EDITION="ECL" NOM="ECLJ124" LAY="S"/><PAGE FOLIO="25" CAHIER="1" EDITION="ECL" NOM="ECLJ125" LAY="S"/><PAGE FOLIO="26" CAHIER="1" EDITION="ECL" NOM="ECLJ126" LAY="S"/><PAGE FOLIO="27" CAHIER="1" EDITION="ECL" NOM="ECLJ127" LAY="S"/><PAGE FOLIO="28" CAHIER="1" EDITION="ECL" NOM="ECLJ128" LAY="S"/><PAGE FOLIO="29" CAHIER="1" EDITION="ECL" NOM="ECLJ129" LAY="S"/><PAGE FOLIO="30" CAHIER="1" EDITION="ECL" NOM="ECLJ130" LAY="S"/><PAGE FOLIO="31" CAHIER="1" EDITION="ECL" NOM="ECLJ131" LAY="S"/><PAGE FOLIO="32" CAHIER="1" EDITION="ECL" NOM="ECLJ132" LAY="S"/><PAGE FOLIO="33" CAHIER="1" EDITION="ECL" NOM="ECLJ133" LAY="S"/><PAGE FOLIO="34" CAHIER="1" EDITION="ECL" NOM="ECLJ134" LAY="S"/><PAGE FOLIO="35" CAHIER="1" EDITION="ECL" NOM="ECLJ135" LAY="S"/><PAGE FOLIO="36" CAHIER="1" EDITION="ECL" NOM="ECLJ136" LAY="S"/><PAGE FOLIO="1" CAHIER="1" EDITION="REP" NOM="REPJ101" LAY="S"/><PAGE FOLIO="2" CAHIER="1" EDITION="REP" NOM="REPJ102" LAY="S"/><PAGE FOLIO="27" CAHIER="1" EDITION="REP" NOM="REPJ127" LAY="S"/><PAGE FOLIO="36" CAHIER="1" EDITION="REP" NOM="REPJ136" LAY="S"/></REF> |
ma feuille xsl
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
|
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt" xmlns:xchngr="image-etc.com/Exchanger" version="1.0">
<xsl:output method="xml" version="1.0" encoding="UTF-8"/>
<xsl:template match="/">
<!-- <xsl:for-each select="//pages/page[substring(@PageID,1,4)='PECL']">
<xsl:variable name="pos" select="position()"></xsl:variable>
</xsl:for-each>
<xsl:element name="TOTO">
<xsl:value-of select="$pos"/>
</xsl:element>-->
<xsl:element name="REF">
<xsl:attribute name="date_parution"><xsl:value-of select="/REF/@date_parution"/></xsl:attribute>
<xsl:attribute name="ECL"><xsl:value-of select="count(/REF/PAGE[@CAHIER[.='1'] and @EDITION[.='ECL']])"/></xsl:attribute>
<xsl:attribute name="REP"><xsl:value-of select="count(/REF/PAGE[@CAHIER[.='1'] and @EDITION[.='REP']])"/></xsl:attribute>
<xsl:attribute name="CAHIER1"><xsl:value-of select="count(/REF/PAGE[@CAHIER[.='2'] and @EDITION[.='ECL']])"/></xsl:attribute>
<xsl:attribute name="CAHIER2"><xsl:value-of select="count(/REF/PAGE[@CAHIER[.='3'] and @EDITION[.='ECL']])"/></xsl:attribute>
<xsl:attribute name="CAHIER3"><xsl:value-of select="count(/REF/PAGE[@CAHIER[.='4'] and @EDITION[.='ECL']])"/></xsl:attribute>
<xsl:attribute name="CAHIER_REP1"><xsl:value-of select="count(/REF/PAGE[@CAHIER[.='2'] and @EDITION[.='REP']])"/></xsl:attribute>
<xsl:attribute name="CAHIER_REP2"><xsl:value-of select="count(/REF/PAGE[@CAHIER[.='3'] and @EDITION[.='REP']])"/></xsl:attribute>
<xsl:attribute name="CAHIER_REP3"><xsl:value-of select="count(/REF/PAGE[@CAHIER[.='4'] and @EDITION[.='REP']])"/></xsl:attribute>
<xsl:for-each select="/REF/PAGE[@CAHIER[.='1'] and @EDITION[.='REP']]">
<xsl:value-of select="concat(substring(@NOM,6,2),';')"/>
</xsl:for-each>
</xsl:element>
</xsl:template>
</xsl:stylesheet> |
mon resultat souhaite
Code:
1 2 3 4
|
<?xml version="1.0" encoding="UTF-8"?>
<REF CAHIER_REP3="0" CAHIER_REP2="0" CAHIER_REP1="0" CAHIER3="0" CAHIER2="0" CAHIER1="8" REP="4" ECL="36" date_parution="24082013" pages="01;02;27;36"></REF> |
comment arriver à isoler l'attribut pages ? sans le dernier ";"
merci