Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
952 connectés 

  FORUM HardWare.fr
  Programmation
  XML/XSL

  Tri de valeur [resolu. solution inside]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Tri de valeur [resolu. solution inside]

n°445416
da_s_monk
Awwwww! Good Job!
Posté le 01-07-2003 à 17:51:55  profilanswer
 

Salut a tous.
 
Comment fait on un count, un max ou un order by en xpath a partir d'un selectSingleNode() ou d'un selectNodes() en XMLDOM?
 
Merci d'avance
 
PS: si vous avez un bon site la dessus je suis preneur


Message édité par da_s_monk le 09-07-2003 à 18:53:41
mood
Publicité
Posté le 01-07-2003 à 17:51:55  profilanswer
 

n°445535
Toucouch
Posté le 01-07-2003 à 19:41:54  profilanswer
 

Tu pourrais détailler ton problème plus précisément STP? (Bout de XML + but exact)

n°445552
da_s_monk
Awwwww! Good Job!
Posté le 01-07-2003 à 19:51:56  profilanswer
 

Voilà un exemple de xml :
 

Code :
  1. <TREE>
  2.   <M ID="1"/>
  3.   <T ID="2">
  4.     <A ID="3"/>
  5.     <A ID="5"/>
  6.   </T>
  7.   <M ID="4"/>
  8. </TREE>


 
ici, "ID" est un attribut à la con.
 
J'ai besoin de faire un select max(ID) quelque soit le niveau du node. Le résultat sera ici 5.
 
Et si au passage, je pouvais faire un petit order by des familles, ça serait pas mal non plus. ;)

n°447679
avander
Posté le 03-07-2003 à 15:45:44  profilanswer
 

Les données XML:  


<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
  <tree>
    <m id="1"/>
    <t id="2">
      <a id="3"/>
      <a id="5"/>
    </t>
    <m id="4"/>
  </tree>
<!-- eof -->


 
Le stylesheet XSLT :


<?xml version="1.0" encoding="ISO-8859-1"?>
 
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
 
<!-- general settings -->
  <xsl:output method="text" omit-xml-declaration="no" encoding="ISO-8859-1"/>
 
<!-- parameters -->
 
<!-- global variables -->
 
<!-- transformations -->
 
  <xsl:template match="/">
    <xsl:apply-templates/>
  </xsl:template>
 
  <xsl:template match="tree">
    <xsl:for-each select="//*[@id]">
      <xsl:sort select="@id" data-type="number"/>
 
      <xsl:value-of select="@id"/>
      <xsl:choose>
        <xsl:when test="position() = 1">
          <xsl:text> = Minimum()</xsl:text>
        </xsl:when>
        <xsl:when test="position() = last()">
          <xsl:text> = Maximum()</xsl:text>
        </xsl:when>
      </xsl:choose>
      <xsl:text>
</xsl:text>
    </xsl:for-each>
  </xsl:template>
 
</xsl:stylesheet>
<!-- eof -->


 
et le résultat ( MSXML 3.0) :


1 = Minimum()
2
3
4
5 = Maximum()


 
Tu trouveras un article à ce sujet à l'adresse  
http://www.xml.com/pub/a/2002/08/07/ducharme.html
 
A+


---------------
A thing of beauty is a joy forever (John Keats)

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  XML/XSL

  Tri de valeur [resolu. solution inside]

 

Sujets relatifs
[VB] Déplacer une image à la souris [résolu !][applet]lire un fichier coté serveur [resolu]
[Js] Recuper une valeur d'un pop up dans la page principale [resolu][résolu] Faire une redirection automatique sur la page précédente
[MySQL] Supprimer une contrainte (innodb) [RESOLU][ASP] Bizarrerie sur le test d'égalité dans un if ? [résolu]
[VB]Problème caractères spéciaux [Resolu][EclipseUML] Exporter un diagramme sous un format externe ? [résolu]
Un exe un programme JAVA [résolu... Google j'ai d'la chance...désolé] 
Plus de sujets relatifs à : Tri de valeur [resolu. solution inside]


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR