|
|
|
|
|
- Syntaxe 2 : Exécuter une requête XPATH sur un document XML : Lecture du résultat de la requête
- Limitations
- Fonctions XML et threads
XMLExécuteXPath (Fonction) En anglais : XMLExecuteXPath Exécute une requête XPATH : - dans une variable de type xmlDocument.
- dans un document XML.
clDoc est un xmlDocument = XMLOuvre(n, depuisChaîne) c est un xpathRésultat = XMLExécuteXPath(clDoc, "/root/text()") SI c.EstValeur ALORS Trace(c.Valeur) SINON POUR TOUT UnNoeud DE c.Noeud Trace("Noeud : " + UnNoeud..Texte) FIN POUR TOUT attrib DE c.Attribut Trace("Noeud : " + attrib.Nom) FIN FIN // Chargement du fichier XML MonDoc est une chaîne MonDoc = fChargeTexte("exemple.xml") // Texte de la requête : Recherche de la balise Index RequêteXPATH est une chaîne = "Aide/Fonction/Index" // Création du document XMLDocument("Exemple", MonDoc) SI ErreurDétectée = Vrai ALORS Erreur("Le fichier n'est pas au format XML.") RETOUR FIN b est un booléen b = XMLExécuteXPath("Exemple", RequêteXPATH) // Est-ce une requête de calcul ? SI b = Vrai ET XMLEnDehors("Exemple") = Vrai ALORS  // Voilà le résultat du calcul  Trace("XMLRésultat=" + XMLRésultat("Exemple")) FIN // Est-ce une requête XPath de sélection ? SI XMLTrouve("Exemple") = Vrai ALORS // Parcours de la sélection résultat TANTQUE XMLTrouve("Exemple") = Vrai Trace(XMLPosition("Exemple")) XMLSuivant("Exemple") FIN // Parcours terminé, on termine la requête XMLAnnuleRecherche("Exemple") FIN Syntaxe
Exécuter une requête XPATH sur une variable de type xmlDocument Masquer les détails
<Résultat> = XMLExécuteXPath(<Document XML> , <Texte de la requête XPath>)
<Résultat> : Variable de type xpathRésultat Variable de type xpathRésultat contenant le résultat de la requête XPATH. Lecture du résultat : - La propriété EstValeur permet de savoir si le résultat est une valeur.
- Pour une requête de sélection (le résultat n'est pas une valeur), il est nécessaire de parcourir la variable xpathRésultat.
- Pour une requête de calcul (le résultat est une valeur), la propriété Valeur permet de lire le résultat.
<Document XML> : Variable de type xmlDocument Nom de la variable de type xmlDocument contenant le code XML à analyser. <Texte de la requête XPath> : Chaîne de caractères Texte de la requête XPath à exécuter.
Exécuter une requête XPATH sur un document XML (syntaxe conservée par compatibilité) Masquer les détails
<Résultat> = XMLExécuteXPath(<Nom du Document XML> , <Texte de la requête XPath>)
<Résultat> : Booléen - Vrai si la requête a été exécutée,
- Faux dans le cas contraire ou si aucun élément ne correspond à la requête.
Lecture du résultat : - Pour une requête de sélection, si la requête XPATH a été exécutée, les fonctions de parcours XML permettent de parcourir le résultat de la requête XPATH.
- Pour une requête de calcul, la fonction XMLRésultat permet de lire le résultat.
<Nom du Document XML> : Chaîne de caractères Nom du document XML manipulé. Ce document contient le code XML à analyser et a été créé avec la fonction XMLDocument. <Texte de la requête XPath> : Chaîne de caractères Texte de la requête XPath à exécuter. Remarques Limitations - Il n'est pas possible d'imbriquer plusieurs requêtes XPath de parcours.
- Syntaxe 1 : Exécuter une requête XPATH sur une variable de type xmlDocument :
- La liste des noeuds renvoyée n'est pas triée.
- La norme utilisée pour la requête XPath est XPath 1.0.
- Syntaxe 2 : Exécuter une requête XPATH sur un document XML :
Les fonctions XMLSauvePosition et XMLRetourPosition ne permettent pas de sauver / restaurer une position lors du parcours du résultat d'une requête XPath de sélection.
Fonctions XML et threads Si votre application utilise des threads, le document XML est partagé entre tous ces threads. Pour plus de détails sur la gestion des threads, consultez Gestion des threads. Si la position courante dans un document XML est modifiée dans un thread, la position courante dans ce document XML est modifiée pour tous les threads. Classification Métier / UI : Code métier Composante : wd300xml.dll
Documentation également disponible pour…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|