Bonjour,
Le samedi 14 janvier 2006 à 09:14 +0000, Jarod Delaware a écrit :
> Je sèche littéralement, je crois que c'est que code XSLT que je dois
> implémenter dans mon code XSLT, mais je n'y arrive pas. Est ce que quelqu'un
> pourrait m'aider s'il vous plait. Merci pour vos réponses.
> LE CODE XSLT SUM OF PROUCTS:
> <xsl:template name="prod-sum">
> <xsl:param name="sum">0</xsl:param>
> <xsl:param name="nodes" />
> <xsl:choose>
> <xsl:when test="$nodes">
> <xsl:call-template name="prod-sum">
> <xsl:with-param name="sum"
> select="$sum + number($nodes[1]/a) * number($nodes[1]/b)" />
Ici, il faut personnaliser le "a" et le "b" pour l'adapter à votre
document.
Dans votre cas, ce sera :
select="$sum + number($nodes[1]/SCORE) *
number(/TEACHING/COEFFICIENT[@note=$nodes[1]/@ident]/VALEUR)" />
(si je comprend bien la structure de voter document).
> <xsl:with-param name="nodes" select="$nodes[position()!=1]" />
> </xsl:call-template>
> </xsl:when>
> <xsl:otherwise>
> <xsl:value-of select="$sum" />
> </xsl:otherwise>
> </xsl:choose>
> </xsl:template>
>
> MON CODE XSLT:
>
> <?xml version="1.0" encoding="ISO-8859-1"?>
> <xsl:stylesheet version="1.0"
> xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
> <xsl:template match="/">
> <xsl:for-each select="TEACHING/ETUDIANT">
A ce niveau, pour appeler le template "prod-sum", il faut utiliser :
<xsl:call-template name="prod-sum">
<xsl:with-param name="nodes" select="/TEACHING/NOTE[@etudiant=current()/@ident]"/>
</xsl:call-template>
Cordialement,
Eric van der Vlist
> <xsl:variable name="student3" select="@ident"/>
> <xsl:variable name="course3" select="@note"/>
> <xsl:if test="$student3=1 and $course3=1">
> <xsl:variable name="sumnote" select="../NOTE[@etudiant=$student3]/SCORE"/>
> <xsl:variable name="sumcoef" select="../COEFFICIENT[@note]/VALEUR"/>
> <xsl:variable name="result" select="sum($sumnote*$sumcoef) div
> sum($sumcoef)"/>
> <xsl:value-of select="$result" />
> </xsl:if>
> </xsl:for-each>
> </xsl:template>
> </xsl:stylesheet>
>
>
>
>
> >From: "Jarod Delaware" <delaware_jarod@hotmail.com>
> >Reply-To: xml-tech@xmlfr.org
> >To: xml-tech@xmlfr.org
> >Subject: [xml-tech] Re: moyenne des notes: sum($x*$y)
> >Date: Fri, 13 Jan 2006 13:07:27 +0000
> >
> >Bonjour,
> >Merci beaucoup pour votre aide. Par contre, j'ai regardé sur le lien que
> >vous m'avez marqué mais j'ai pas très bien compris comment adapter
> >l'exemple
> >donné à mon problème, étant débutant en xml.
> >Est ce que vous pouvez m'éclairer, s'il vous plaît. Encore merci pour vos
> >réponses.
> >
> >
> > >From: Jean-Christophe Kermagoret <jck@bluexml.org>
> > >Reply-To: xml-tech@xmlfr.org
> > >To: xml-tech@xmlfr.org
> > >Subject: [xml-tech] Re: moyenne des notes: sum($x*$y)
> > >Date: Thu, 12 Jan 2006 22:52:58 +0100
> > >
> > >Bonjour,
> > >la fonction number ne permet pas de faire la somme d'un ensemble de
> > >noeud, mais de considérer le noeud comme un entier, un cast en quelque
> > >sorte.
> > >
> > >Pour faire une somme, il faut faire la somme des éléments deux à deux...
> > >comme cela est expliqué ici, où vous trouverez beaucoup d'information :
> > >
> > >http://www.dpawson.co.uk/xsl/sect2/N5121.html#d6085e562
> > >
> > >Jean-Christophe
> > >
> > >Jarod Delaware a écrit :
> > > > Bonjour,
> > > > j'ai essayé vos deux solutions, ie:
> > > > select="number(../NOTE[@etudiant=1]/SCORE)) et également:
> > > > select="number(string(...))"
> > > > mais ça me donne rien, toujours la même erreur the value is not a node
> > >set.
> > > >
> > > >
> > > >
> > > >>From: hufflen@lifc.univ-fcomte.fr (hufflen jean-michel)
> > > >>Reply-To: xml-tech@xmlfr.org
> > > >>To: xml-tech@xmlfr.org
> > > >>Subject: [xml-tech] Re: moyenne des notes: sum($x*$y)
> > > >>Date: Thu, 12 Jan 2006 19:33:52 +0100 (CET)
> > > >>
> > > >>>From xml-tech-bounce@xmlfr.org Thu Jan 12 19:21:22 2006
> > > >>
> > > >>>(...)
> > > >>
> > > >>>Bonjour,
> > > >>>J'aimerais savoir comment calculer la moyenne d'un étudiant sachant
> >que
> > > >>>chaque note à un coefficient. J'ai essayé d'écrire quelques choses en
> > > >>
> > > >>XSLT
> > > >>
> > > >>>mais ça me donne rien, si ce n'est une erreur du type :the value is
> >not
> > >a
> > > >>>node-set.
> > > >>>Je met ci-dessous mon code XML et mon code XSLT:
> > > >>
> > > >>>(...)
> > > >>
> > > >> A premiere vue...
> > > >>
> > > >>
> > > >>><xsl:variable name="sumnote"
> > > >>
> > > >>select="../NOTE[@etudiant=$student3]/SCORE"/>
> > > >>
> > > >>><xsl:variable name="sumcoef" select="../COEFFICIENT[@note]/VALEUR"/>
> > > >>
> > > >> je n'ai pas essaye mais je pense qu'il faut utiliser ici
> > > >>
> > > >>select="number(../NOTE...)"
> > > >>
> > > >> et meme chose a la ligne suivante. Peut-etre faut-il meme preciser
> > > >>"number(string(...))".
> > > >>
> > > >>
> > > >> Hope this helps,
> > > >>
> > > >> J.-M. H.
> > > >>
> > > >>--
> > > >>Devenez redacteur <XML>fr et contribuez au developpement du
> > > >>xml francophone (http://xmlfr.org/infos/redacteurs/) !
> > > >>
> > > >>Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
> > > >>
> > > >>Cette liste est a votre disposition pour discuter en francais de
> > > >>tout sujet technique lie a XML.
> > > >>
> > > >>Pour resilier votre abonnement, envoyez un message contenant
> > > >>la commande "unsubscribe" a xml-tech-request@xmlfr.org
> > > >>(mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
> > > >>
> > > >
> > > >
> > > > _________________________________________________________________
> > > > MSN Hotmail : créez votre adresse e-mail gratuite & à vie !
> > > > http://www.msn.fr/newhotmail/Default.asp?Ath=f
> > > >
> > > >
> > > > --
> > > > Devenez redacteur <XML>fr et contribuez au developpement du
> > > > xml francophone (http://xmlfr.org/infos/redacteurs/) !
> > > >
> > > > Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
> > > >
> > > > Cette liste est a votre disposition pour discuter en francais de
> > > > tout sujet technique lie a XML.
> > > >
> > > > Pour resilier votre abonnement, envoyez un message contenant
> > > > la commande "unsubscribe" a xml-tech-request@xmlfr.org
> > > > (mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
> > > >
> > >
> > >
> > >--
> > >
> > >BlueXML
> > >Jean-Christophe Kermagoret
> > >Directeur associé
> > >jck@bluexml.org
> > >
> > >
> > >--
> > >Devenez redacteur <XML>fr et contribuez au developpement du
> > >xml francophone (http://xmlfr.org/infos/redacteurs/) !
> > >
> > >Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
> > >
> > >Cette liste est a votre disposition pour discuter en francais de
> > >tout sujet technique lie a XML.
> > >
> > >Pour resilier votre abonnement, envoyez un message contenant
> > >la commande "unsubscribe" a xml-tech-request@xmlfr.org
> > >(mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
> > >
> >
> >_________________________________________________________________
> >MSN Hotmail : créez votre adresse e-mail gratuite & à vie !
> >http://www.msn.fr/newhotmail/Default.asp?Ath=f
> >
> >
> >--
> >Devenez redacteur <XML>fr et contribuez au developpement du
> >xml francophone (http://xmlfr.org/infos/redacteurs/) !
> >
> >Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
> >
> >Cette liste est a votre disposition pour discuter en francais de
> >tout sujet technique lie a XML.
> >
> >Pour resilier votre abonnement, envoyez un message contenant
> >la commande "unsubscribe" a xml-tech-request@xmlfr.org
> >(mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
> >
>
> _________________________________________________________________
> MSN Messenger : discutez en direct avec vos amis !
> http://www.msn.fr/msger/default.asp
>
>
> --
> Devenez redacteur <XML>fr et contribuez au developpement du
> xml francophone (http://xmlfr.org/infos/redacteurs/) !
>
> Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
>
> Cette liste est a votre disposition pour discuter en francais de
> tout sujet technique lie a XML.
>
> Pour resilier votre abonnement, envoyez un message contenant
> la commande "unsubscribe" a xml-tech-request@xmlfr.org
> (mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
>
>
--
Le premier annuaire des apiculteurs 100% XML!
http://apiculteurs.info/
------------------------------------------------------------------------
Eric van der Vlist http://xmlfr.org http://dyomedea.com
(ISO) RELAX NG ISBN:0-596-00421-4 http://oreilly.com/catalog/relax
(W3C) XML Schema ISBN:0-596-00252-1 http://oreilly.com/catalog/xmlschema
------------------------------------------------------------------------
--
Devenez redacteur <XML>fr et contribuez au developpement du
xml francophone (http://xmlfr.org/infos/redacteurs/) !
Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
Cette liste est a votre disposition pour discuter en francais de
tout sujet technique lie a XML.
Pour resilier votre abonnement, envoyez un message contenant
la commande "unsubscribe" a xml-tech-request@xmlfr.org
(mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
Received on Mon Jan 16 16:08:41 2006