IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

XSL/XSLT/XPATH XML Discussion :

Xpath pour FxCOP


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre Expert
    Profil pro
    Dév
    Inscrit en
    Juin 2007
    Messages
    1 165
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Dév

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 165
    Par défaut Xpath pour FxCOP
    Bonjour,

    Je dois faire des statistiques sur les builds d'un serveur d'intégration continue. Celui-ci génère un fichier de rapport FxCop sous forme de fichiers xml. J'essaie par conséquent de faire des requêtes xpath dessus. Cependant, je n'arrive pas à trouver les bonnes requêtes alors que tout me semble pourtant logique. Voici le rapport FxCop en question (raccourci pour faire rentrer dans le post) en PJ.

    Je veux donc faire des statistiques avec les éléments "FxCopReport/Targets/Target/Modules/Module/Namespaces/Namespace/Types/Type/Members/Member/Messages/Message/Issue"

    Mes requêtes sont pour l'instant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    Warnings = 
    					<xsl:value-of select="count(//FxCopReport/Targets/Target/Modules/Module/Namespaces/Namespace/Types/Type/Members/Member/Messages/Message/Issue[@Level='Warning'])"/>
     
    Errors = 
    					<xsl:value-of select="count(//FxCopReport/Targets/Target/Modules/Module/Namespaces/Namespace/Types/Type/Members/Member/Messages/Message/Issue[@Level='Error'])"/>
     
    Critical Warnings = 
    					<xsl:value-of select="count(//FxCopReport/Targets/Target/Modules/Module/Namespaces/Namespace/Types/Type/Members/Member/Messages/Message/Issue[@Level='CriticalWarning'])"/>
     
    Critical Errors = 
    					<xsl:value-of select="count(//FxCopReport/Targets/Target/Modules/Module/Namespaces/Namespace/Types/Type/Members/Member/Messages/Message/Issue[@Level='CriticalError'])"/>
    Je trouve Warnings = 4 alors que la bonne valeur doit être 8...
    Je trouve Errors= 8 alors que la bonne valeur doit être 10...
    Je trouve CriticalWarnings = 102 alors que la bonne valeur doit être 120...
    Je trouve CriticalErrors trouve la bonne valeur... coup de chance?

    Merci d'avance.
    Fichiers attachés Fichiers attachés

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    En analysant un peu ce document, je remarque que les éléments <Item> munis d'un attribut @Level ne sont pas tous au même endroit :

    - comme indiqué, il y en a ici :
    /FxCopReport/Targets/Target/Modules/Module/Namespaces/Namespace/Types/Type/Members/Member/Messages/Message/Issue

    - mais aussi :
    /FxCopReport/Targets/Target/Modules/Module/Namespaces/Namespace/Types/Type/Messages/Message/Issue
    -
    /FxCopReport/Targets/Target/Modules/Module/Messages/Message/Issue

    Dans ces cas-là, je recommande de ne pas donner l'accès complet et de simplement compter :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    //Issue[@Level = 'Warning']
    etc.

    Je trouve alors des valeurs plus proches de ce qui est attendu.

    Je trouve CriticalErrors trouve la bonne valeur... coup de chance?
    Oui. Ils sont tous à la position que tu attendais, contrairement aux autres.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre Expert
    Profil pro
    Dév
    Inscrit en
    Juin 2007
    Messages
    1 165
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Dév

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 165
    Par défaut
    Merci je pensais que le rapport généré par FxCop ne contenait pas de Issue autre part. En analysant le fichier en entier j'ai donc constaté qu'il y avait quelques balises Issue à certains endroits en plus. Donc en ne comptant que les //Issue on tombe bien sur le bon résultat. Bref pourquoi faire compliqué quand on peut faire simple...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XPATH] génération d'un xpath pour faire des recherches dans un xml
    Par Spaceman Spiff dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 11/06/2007, 18h18
  2. [DOM4J] XPATH pour recherche DOM4J sur niveaux multiples
    Par cdubet dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 23/05/2007, 15h11
  3. [Xpath] Expression XPath pour une commande
    Par nicolas66 dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 20/04/2007, 18h10
  4. [XML/XSL/XPATH]Requete XPATH pour transformation
    Par Le-Cortex dans le forum XSL/XSLT/XPATH
    Réponses: 6
    Dernier message: 04/01/2006, 17h32
  5. [XSL][XPATH] pour les tueurs (position() generate-id....
    Par luta dans le forum XSL/XSLT/XPATH
    Réponses: 6
    Dernier message: 15/11/2005, 10h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo