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] Extraction donnée


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 67
    Points : 37
    Points
    37
    Par défaut [Xpath] Extraction donnée
    Bonjour à Tous,

    Je suis sous pl sql, j'interroge un web service via la package : utl_http

    Je récupère la réponse sous forme d'un XMLType, dont le contenu est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <?xml version="1.0" encoding="utf-8"?>
    <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    	<soap:Body>
    		<CheckDebLimOverResp xmlns="http://tempuri.org/">
    			<CheckDebLimOverRes>KO : Operation not possible
    			</CheckDebLimOverRes>
    		</CheckDebLimOverResp>
    	</soap:Body>
    </soap:Envelope>
    Je teste que le soap réponse a bien un corp :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    resp.existsNode('/soap:Envelope/soap:Body/child::node()','xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"');
    en suite je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    resp:= resp.extract('/soap:Envelope/soap:Body/child::node()','xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"');
    Je souhaite extraire la chaine :"KO : Operation not possible" via XPATH
    est ce que quelqu'un peut m'aider ?

    d'avance merci

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 67
    Points : 37
    Points
    37
    Par défaut
    Hello,
    je vais reformuler ma question

    en partant du xml en dessou, quel est le bon XPATH pour extraire la chaine : KO : Operation not possible ??

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <?xml version="1.0" encoding="utf-8"?>
    <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    	<soap:Body>
    		<CheckDebLimOverResp xmlns="http://tempuri.org/">
    			<CheckDebLimOverRes>KO : Operation not possible
    			</CheckDebLimOverRes>
    		</CheckDebLimOverResp>
    	</soap:Body>
    </soap:Envelope>
    Merci d'avance

  3. #3
    Membre expérimenté
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    1 466
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 1 466
    Points : 1 610
    Points
    1 610
    Par défaut
    Faut définir un prefixe aussi pour http://tempuri.org/ par exemple "tem"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /soap:Envelope/soap:Body/tem:CheckDebLimOverResp/tem:CheckDebLimOverRes[contains(text(), 'KO')]

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 67
    Points : 37
    Points
    37
    Par défaut
    Merci pour ta réponse.

    il m'est impossible de modifier le xml, je dois l'interpréter à la volée !
    il n'y a pas une méthode sans préfixer ni déplacer le namespace "http://tempuri.org/"

    Merci encore

  5. #5
    Membre expérimenté
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    1 466
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 1 466
    Points : 1 610
    Points
    1 610
    Par défaut
    Je ne te demande pas de modifier le xml, mais à l'interrogation, tu peux définir les préfixe que tu veux.
    Je ne connais pas la syntaxe de ce module pl-sql, mais il en définit déjà un.
    Tu peux peut être faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    resp.existsNode('/soap:Envelope/soap:Body/tem:CheckDebLimOverResp/tem:CheckDebLimOverRes[contains(text(), 'KO')]','xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"','xmlns:tem="http://tempuri.org/"');
    ou peut être même :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    resp.existsNode('/soap:Envelope/soap:Body/CheckDebLimOverResp/CheckDebLimOverRes[contains(text(), 'KO')]','xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"','xmlns="http://tempuri.org/"');

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 67
    Points : 37
    Points
    37
    Par défaut
    C'est exactement ca !

    Merci infiniment

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

Discussions similaires

  1. [XPath] Afficher données en colonnes avec bris
    Par iDaaX dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 05/12/2006, 20h54
  2. Réponses: 1
    Dernier message: 03/08/2006, 12h34
  3. Extraction données
    Par francois78 dans le forum Access
    Réponses: 5
    Dernier message: 19/05/2006, 12h56
  4. [XSLT] php xml xslt extraction données
    Par Cyrille1969 dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 26/04/2006, 23h23
  5. Extraction données d'une ArrayList
    Par Teb dans le forum Collection et Stream
    Réponses: 4
    Dernier message: 10/04/2006, 17h42

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