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] utilisation de la fonction ends-with()


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 17
    Points : 13
    Points
    13
    Par défaut [XPATH] utilisation de la fonction ends-with()
    Bonjour à tous,

    J'ai un document COLLADA (XML) à parser et pour celà, je recherche des balises ayant une certaine forme.

    Par exemple, je recherche une balise donc l'attribut 'source' finit par 'Position'. Pour cela j'ai écrit cette requete XPATH :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    //*/@source[ends-with(., 'Postion')]
    Cette requête est imbriquée dans une fonction de la libxml2 pour le C. Avec cette syntaxe, l'exécution me retourne :
    xmlXPathCompOpEval: function ends-with not found
    XPath error : Unregistered function
    XPath error : Invalid expression
    Ayant trouvé un exemple d'utilisation de ends-with, j'ai ajouté le préfixe fn: et là, l'exécution me renvoie un résultat mais me précise :
    xmlXPathCompOpEval: function ends-with bound to undefined prefix fn
    xmlXPathEvalExpression: 2 object left on the stack
    Faut-il enregistrer des namespaces pour valider l'utilisation de cette fonction ?

    Je vous remercie d'avance,

    TheNikos

  2. #2
    Membre éprouvé Avatar de alain.couthures
    Profil pro
    Gérant
    Inscrit en
    Avril 2007
    Messages
    902
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Gérant

    Informations forums :
    Inscription : Avril 2007
    Messages : 902
    Points : 1 247
    Points
    1 247
    Par défaut
    Quel moteur XSLT utilisez-vous ??
    Formulaires XForms sur tous navigateurs sans extension à installer (architecture XRX) : http://www.agencexml.com/xsltforms/

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 17
    Points : 13
    Points
    13
    Par défaut
    J'utilise la libxml2. Je ne sais pas quelle version XSLT est utilisée, mais ceci étant, je n'ai pas de XSLT en l'état. En effet, je souhaite juste récupérer certaines balises pour pouvoir en extraire des infos derrière et non pas mettre en forme ces infos.

    Je développe un programme en C et non en XML/XSL vers HTML. Je parse un fichier XML afin de récupérer des coordonnées de points. C'est tout ce que j'ai à faire avec

  4. #4
    Rédacteur

    Avatar de Erwy
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2003
    Messages
    4 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 967
    Points : 10 927
    Points
    10 927
    Par défaut
    ends-with est une fonction xpath 2.0, à ma connaissance vous ne pourrez pas l'utilisez avec votre bibliotheque

    Il vous faudra sans doute jouer avec les fonction substring et string-length

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 17
    Points : 13
    Points
    13
    Par défaut
    Merci de ta réponse, je vais tester cela

  6. #6
    Rédacteur

    Avatar de Erwy
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2003
    Messages
    4 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 967
    Points : 10 927
    Points
    10 927
    Par défaut
    Pardon , j'avais mal compris votre question
    L'idéal serait plutot d'utiliser substring-before et substring-after en passsant 'position' en paramètre.
    Si subtring-before renvoie un résultat et substring-after renvoi vide vous avez votre resultat.

  7. #7
    Membre émérite
    Avatar de polymorphisme
    Homme Profil pro
    Publishing
    Inscrit en
    Octobre 2009
    Messages
    1 460
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Publishing
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2009
    Messages : 1 460
    Points : 2 371
    Points
    2 371
    Par défaut
    Bonjour,

    autrement, dans la librairie EXSLT, il existe une template remplacant cette fonction.
    Article : Installation de Cocoon
    Je ne réponds pas aux MP à caractère technique.

Discussions similaires

  1. [lxml] [Xpath] Utiliser fonction Javascript
    Par kierbano dans le forum Général Python
    Réponses: 2
    Dernier message: 04/12/2010, 18h07
  2. [XPATH] Prédicat + ends-with
    Par oodini dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 17/12/2009, 17h21
  3. [LG]librairies : utiliser seulement quelques fonctions
    Par wwwroom dans le forum Langage
    Réponses: 13
    Dernier message: 14/05/2004, 22h50
  4. [Débutant] Utilisation de FOP - Register Fonts with FOP
    Par Johnbob dans le forum XML/XSL et SOAP
    Réponses: 4
    Dernier message: 31/01/2004, 00h27

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