Expression Xpath

Apprenez à parcourir les éléments d’un document XML dans Adobe FrameMaker à l’aide des expressions XPath.

Dans ce sujet

Introduction

Un document XML se compose d’une hiérarchie d’éléments. Une expression XPath permet de parcourir les éléments et les attributs d’un document XML.

Exemples XPath

Prenons le fichier XML suivant :

<topic id="abc">
  <title>Using XPATH</title>
  <body>
    <p>Using XPATH is easy.</p>
    <fig>
      <image href="images/xpath.png"/>
    </fig>
    <section>
      <title>Examples</title>
      <p audience="novice">A simple example.</p>
      <p audience="expert">An advanced example.</p>
      <p audience="expert">Another advanced example.</p>
      <fig>
        <image href="images/xpath-axes.png">
          <alt>This screenshot shows the XPATH axes</alt>
        </image>
      </fig>
    </section>
    <p>The End.</p>
  </body>
</topic>

Le tableau suivant contient une liste d’expressions XPath pour l’exemple XML donné ci-dessus.

Requête XPath

Recherche

/topic

Renvoir l’élément racine <topic>.

//title

Renvoie n’importe quel élément <title>.

//section/title

Ne renvoie que l'élément <title> qui est un enfant d’un élément <section>.

//p

Renvoie n’importe quel élément <p>.

//p[@audience='expert']

Renvoie n’importe quel élément <p> pour lequel l’attribut @audience est défini sur expert.

//p[not(@audience)]

Renvoie n’importe quel élément <p> pour lequel l’attribut @audience est manquant.

//p[not(@audience='admin')]

Renvoie n’importe quel élément <p> pour lequel l’attribut @audience n’a pas la valeur admin OU est manquant.

//p[text()='Pour commencer ce processus']

Renvoie n’importe quel élément <p> qui commence par la chaîne de texte Pour commencer ce processus.

//p[contains(.,'bouton')]

Renvoie n’importe quel élément <p> dont le texte contient la chaîne de texte bouton.

//image[not(alt)]

Renvoie n’importe quel élément <image> pour lequel l’élément enfant <alt> est manquant.

Pour plus d’informations sur XPath, consultez http://www.w3.org/TR/xpath/

Barre d’outils XPath

  1. Sélectionnez Affichage > Barres d’outils > XPath pour ouvrir la barre d’outils XPatch.

    Figure 1. Barre d’outils XPath
    Barre d’outils XPath dans FrameMaker

  2. Dans le champ XPath, saisissez l’expression XPath, puis cliquez sur Exécuter.

Les résultats de la requête s’affichent dans le panneau XPath Builder.

Panneau XPath Builder

Figure 2. Panneau XPath Builder
Panneau XPath Builder dans FrameMaker

L’interface conviviale Query Builder permet aussi de créer des expressions XPath. Dans Query Builder, vous pouvez créer une requête XPath (à l’aide de la fonctionnalité de suggestion automatique), puis l’exécuter.

Vous pouvez également spécifier l’Etendue de la recherche :

Fonction de suggestion automatique XPath

La fonction de suggestion automatique fournit les composants suggérés que vous pouvez ajouter à l’expression XPath lors de sa création.

Par exemple, dans le XML suivant :

<body> 
<p>The quick brown fox.</p> 
<p audience="admin">Jumped over the lazy dogs.</p> 
</body>
  1. Dans le champ Query Builder, commencez par entrer une barre oblique (/).

    Dès que vous entrez la barre oblique, les suggestions suivantes s’affichent :

    Suggestions automatiques
    Suggestions automatiques dans le panneau XPath Builder

  2. A l’aide des touches haut et bas, sélectionnez l’option, puis appuyez sur Entrée pour insérer le composant dans la requête.

  3. Pour ajouter un autre élément à la requête, entrez une barre oblique.

    Pour ajouter un attribut, vous pouvez également saisir un crochet d’ouverture ([).

La liste de suggestions automatiques contient les composants suivants d’une requête XPath :

Élément (indicateur orange)

Éléments à la position actuelle dans le document actif.

Attribut (indicateur bleu)

Attributs à la position actuelle dans le document actif.

Axes (indicateur vert)

Un axe est une définition de nœud par rapport au nœud actif. Par exemple, parent, enfant, ancêtre.

Cliquez sur la liste déroulante à droite de l’option Activer les suggestions automatiques, puis désélectionnez l’option Axes pour masquer les axes disponibles dans la liste de suggestions automatiques.

Note: Vous pouvez choisir de désactiver la fonction de suggestions automatiques dans Query Builder.

Cliquez sur l’icône Enregistrer pour enregistrer les résultats actuels de la requête XPath.