Générateur d’expression
Le Générateur d’expression vous permet de générer des expressions XPath correctes concernant le nœud contextuel actuel. Il vous permet de saisir des chemins de localisateur de nœud, de sélectionner des nœuds dans l’arborescence de schéma, et de saisir des opérateurs et des fonctions qui sont syntactiquement correctes. Passer au Génerateur d’expression en cliquant sur la touche Générateur (voir capture d’écran ci-dessous). Lorsque la touche Générateur a été cliquée, des volets de l’assistant de saisie apparaissent qui vous aident à générer une expression XPath. Double-cliquer sur une entrée dans l'assistant à la saisie pour la saisir à l’endroit actuel du curseur dans le volet Expression. Cliquer sur OK, l’expression est saisie dans l’emplacement actuel dans le design.
Il existe trois volets d'assistants à la saisie :
•Une arborescence de schéma pour sélectionner et saisir les nœuds d’éléments et d’attribut. Si la case Xpath Relatif est cochée (comme dans la capture d’écran ci-dessus), le chemin vers le nœud sélectionné est saisi relativement au nœud contextuel qui est le nœud dans le design dans le cadre duquel l’expression XPath est construite. Le nœud contextuel est affiché sous le volet d'arborescence du schéma. Vous pouvez voir dans la capture d’écran ci-dessus que le nœud contextuel est l’élément Customer. Vous pouvez également constater, depuis la barre de titre de la fenêtre, que cette expression XPath est générée pour la propriété Text de la commande Label3. Si la case à cocher XPath relatif est décochée, une expressions Xpath absolue sera saisie pour localiser le nœud sélectionné ; une telle expression commencera à la racine du document, par exemple : $CUSTOMERS/Customers/Customer/Name.
•Un volet d’assistant à la saisie pour les opérateurs et les expressions. Ceux-ci contiennent : (i) axes (ancestor::, parent::, etc), (ii) opérateurs (par exemple eq et div), et (iii) expressions (for # in # return #, etc). Les items du volet peuvent groupés soit alphabétiquement soit par catégorie fonctionnelle. Choisir Hierarchical (pour l’option groupée) ou Flat (pour un classement alphabétique) depuis le menu déroulant dans la barre de titre du volet.
•Un assistant à la saisie avec des fonctions XPath classé soit par ordre alphabétique soit groupé par catégorie fonctionnelle. Choisir Hierarchical (pour l’option groupée) ou Flat (pour un classement alphabétique) depuis le menu déroulant dans la barre de titre du volet. L’option Names/Types vous permet de choisir si les arguments de la fonction sont affichés en tant que noms ou types de données. Veuillez noter que la liste des fonctions disponibles contient des fonctions d'extension MobileTogether et des fonctions d'extension Altova.
Fonctions du générateur
•Pour consulter une description de texte d’un item dans le volet Opérateurs et le volet Fonctions, planer sur l’item avec la souris.
•Chaque fonction est regroupée avec sa signature (c’est à dire avec ses arguments, les types de données des arguments, et le type de données de la sortie de la fonction).
•Les signatures des fonctions sont données soit avec les noms ou les types de données des arguments et de la sortie de la fonction. Choisir Names ou Types depuis le menu déroulant dans la barre de titre du volet pour l’option respective.
•Double-cliquer un item dans un des trois volets de l’assistant de saisie (opérateur, expression ou fonction) pour insérer cet item à l’emplacement du curseur dans l’expression. Les fonctions sont insérées avec leurs arguments indiqués par des espaces réservés (le symbole #).
•Si (i) du texte est sélectionné dans le champ d’édition de l’expression XPath (par exemple Name dans la capture d’écran ci-dessus), et (ii) une expression ou une fonction qui contient un espace réservé est double-cliquée pour l’insérer, alors le texte qui a été sélectionné est inséré au lieu du premier espace réservé.
•Une fois que vous avez saisi une fonction dans l’expression, planer au-dessus du nom de la fonction pour afficher une infobulle contenant la signature de la fonction et un descriptif de la fonction. Si des signatures supplémentaires existent pour une fonction, cela est indiqué par un facteur de surcharge en bas de l’infobulle. (Note: Si plusieurs fonctions ont le même nom mais que chacune prend un différent ensemble d’arguments, alors cet ensemble de fonctions est considéré, plus correctement, être une seule fonction avec plusieurs signatures.)
•Si, dans le volet Expression, vous placez le curseur entre les parenthèses d’une fonction et que vous appuyez sur Ctrl+Shift+Barre espace, vous pouvez consulter les différentes signatures de cette fonction.
Générer des expressions XPath
Le dialogue Éditer Expression XPath vous aide à générer des expressions XPath de la manière suivante.
•La barre de titre de la fenêtre
La barre de titre de la fenêtre XPath/XQuery affiche des informations concernant le contexte (comme le composant de design (projet, page, commande, etc) et la propriété) pour laquelle l’expression est générée. Par exemple, dans la capture d’écran ci-dessus, l’expression est générée pour la propriété Text de la commande Label3 dans une page nommée Customers.
•Nœud contextuel et arborescence de schéma
Le champ de saisie Context juste en-dessous du volet Arborescence de schéma vous montre le nœud contextuel de l’expression. Dans l’arborescence de schéma elle-même, vous pouvez voir où le nœud contextuel se produit et vous pouvez donc générer rapidement l’expression XPath en vous référant à l’arborescence de schéma.
•Insérer un nœud depuis l’arborescence de schéma
Double-cliquer un nœud dans l’arborescence de schéma pour l’insérer dans l’expression XPath. Si la case XPath relatif est coché, le nœud est inséré avec un chemin de localisation qui est relatif au nœud contextuel. Par exemple, dans la capture d’écran ci-dessus, l’élément Name, qui est un enfant de l’élément Customer (le nœud contextuel), a été inséré avec un chemin qui est relatif à l’élément Customer. Si la case XPath relatif est décochée, le nœud Name serait inséré en tant que $CUSTOMERS/Customers/Customer/Name.
•Insérer des axes, opérateurs et expressions XPath
Le volet Select Operator/Expression recense les axes (ancestor::, parent::, etc), opérateurs (par exemple, eq et div) et expressions (for # in # return #, etc) XPath. L’affichage peut passer entre une liste alphabétique et une liste hiérarchique (qui regroupe les items selon leur fonctionnalité). Pour insérer un axe ou un opérateur dans l’expression XPath, double-cliquer sur l’item requis. Placer le curseur de la souris sur un axe/opérateur/expression pour afficher une description de cet item.
•Insérer des fonctions XPath
Le volet Choisir fonction classe les fonctions XPath alphabétiquement ou selon leur fonctionnalité (choisir Hierarchique ou Plat en haut du volet pour changer d’arrangement). Chaque fonction est montrée avec sa signature. Si une fonction a plus d’une signature, cette fonction est affichée autant de fois qu’elle a de signatures. Les arguments dans une signature sont séparés par des virgules, et chaque argument peut avoir un indicateur d’occurrence. Le symbole ? indique une séquence de zéro ou d’un item du type spécifié ; * indique une séquence de zéro ou de plusieurs items du type spécifié ; + indique une séquence d’un ou de plusieurs items du type spécifié . Les arguments peuvent être affichés en tant que noms ou types de données. Choisir l’option appropriée (Noms ou Types) en haut du volet pour basculer entre les deux options d’affichage. Chaque fonction spécifie aussi le type de retour de cette fonction. Par exemple : => date ? Indique que le type de données de retour est une séquence de zéro ou d’un item date. Placer le curseur de la souris au-dessus d’une fonction pour faire apparaître une description de la fonction.
Édition intelligente directement pendant la saisie de texte
Si vous saisissez une expression directement dans le champ de saisie Expression, une liste d’options disponible à ce moment s’affiche dans une infobulle (voir capture d’écran ci-dessous).
Les composants suivants y sont contenus :
•éléments (comme presswatch dans la capture d’écran ci-dessus)
•nœuds descendants (presswatch/selection dans la capture d’écran ci-dessus), et le nœud parent du nœud contextuel
•fonctions XPath (fn:upper-case ci-dessus) et axes XPath (ancestor-or-self ci-dessus)
•une liste des variables globales définies pour le projet (affiché lorsqu’un caractère $ est saisi dans l’expression)
•une liste des strings personnalisés définis dans le dialogue Localisation (affiché lorsque la fonction mt-load-string est saisie dans l’expression ; voir la description de mt-load-string)
Faire défiler la liste des options en utilisant les touches Haut et Bas, et appuyer sur Entrée si vous souhaitez sélectionner une option et la saisir dans l’expression.