Ressources de Dreamweaver CS4
|
Utilisation du Créateur d'expressions XPath pour ajouter des expressions pour les données XML
XPath (XML Path Language) est une syntaxe non XML destinée à traiter des parties d'un document XML. Elle est essentiellement utilisée comme langage de requêtes pour des données XML, tout comme le langage SQL est utilisé pour des requêtes de bases de données. Pour plus d'informations sur XPath, consultez les spécifications du langage XPath sur le site Web du W3C, à l'adresse www.w3.org/TR/xpath.
Le Créateur d'expression XPath est une fonction de Dreamweaver qui vous permet de créer des expressions XPath simples pour l'identification de noeuds de données spécifiques et pour les régions répétées. Cette méthode présente un avantage sur le glissement-déplacement de valeurs à partir de l'arborescence du schéma XML car elle vous permet de mettre en forme la valeur qui est affichée. Le contexte en cours est identifié en fonction de la position du point d'insertion dans le fichier XSL lors de l'ouverture de la boîte de dialogue Créateur d'expressions XPath. Le contexte en cours est affiché en gras dans l'arborescence du schéma XML. Au fur et à mesure que vous effectuez des sélections dans cette boîte de dialogue, les instructions XPATH correctes relatives à votre contexte en cours sont générées. Cette fonction simplifie le processus d'écriture d'expressions XPath correctes, tant pour les novices que les utilisateurs expérimentés.
Remarque : Cette fonction a été conçue pour vous aider à créer des expressions XPath simples pour identifier un nœud spécifique ou pour les régions répétées. Elle ne vous permet pas de modifier les expressions manuellement. Si vous devez créer des expressions complexes, utilisez le Créateur d'expressions XPath pour démarrer, puis personnalisez vos expressions en mode Code ou au moyen de l'inspecteur Propriétés.
Création d'une expression XPath pour identifier un nœud spécifique- Double-cliquez sur l'emplacement réservé des données XML dans la page pour ouvrir le Créateur d'expression XPATH.
- Dans la boîte de dialogue Créateur d'expression XPATH (Texte dynamique), sélectionnez un nœud dans l'arborescence du schéma XML.
L'expression XPath appropriée est rédigée dans la zone Expression pour identifier le nœud.
Remarque : Si vous sélectionnez un autre noeud dans l'arborescence du schéma XML, l'expression change en conséquence.
Dans l'exemple suivant, vous souhaitez afficher le sous-élément price du noeud item :
Une telle sélection insère le code suivant dans votre page XSLT :
<xsl:value-of select="price"/>
- (Facultatif) Sélectionnez une option de mise en forme dans le menu déroulant Format.
La mise en forme d'une sélection est utile lorsque la valeur du noeud renvoie un nombre. Dreamweaver propose une liste prédéfinie de fonctions de mise en forme. Vous trouverez la liste complète de ces fonctions, ainsi que des exemples, dans le panneau Références.
Dans l'exemple suivant, vous souhaitez afficher le sous-élément price sous la forme d'une devise à deux décimales :
Ces options insèrent le code suivant dans votre page XSLT : <xsl:value-of select="format-number(provider/store/items/item/price,'$#.00')"/>
- Cliquez sur OK.
- Pour afficher la valeur de chaque nœud dans le fichier XML, appliquez une région répétée à l'élément contenant le texte dynamique (une ligne d'un tableau HTML ou un paragraphe, par exemple).
Pour plus d'informations et des exemples concernant la sélection de noeuds pour renvoyer une valeur, consultez la section <xsl:value-of/> du panneau Références.
Sélection d'un noeud à répéterVous pouvez sélectionner un nœud à répéter et, éventuellement, choisir de filtrer les résultats. Dans la boîte de dialogue Créateur d'expressions XPath, votre contenu sélectionné sera entouré d'un bloc <xsl:for-each>. Si aucun contenu n'est sélectionné, le bloc <xsl:for-each> est entré au point d'insertion.
- Double-cliquez sur l'emplacement réservé des données XML dans la page pour ouvrir le Créateur d'expression XPATH.
- Dans la boîte de dialogue Créateur d'expressions XPATH (Région répétée), sélectionnez l'élément à répéter dans l'arborescence du schéma XML.
L'expression XPath appropriée est rédigée dans la zone Expression pour identifier le nœud.
Remarque : Les éléments répétés sont identifiés par le symbole Plus (+) dans l'arborescence du schéma XML.
Dans l'exemple suivant, vous souhaitez répéter chaque nœud item au sein du fichier XML.
Lorsque vous cliquez sur OK, le code suivant est inséré dans votre page XSLT :
<xsl:for-each select="provider/store/items/item">
Content goes here
</xsl:for-each>
Dans certains cas, vous souhaiterez peut-être utiliser un sous-ensemble des noeuds répétés. Ainsi, vous souhaiterez peut-être utiliser uniquement les articles dotés d'un attribut d'une valeur spécifique. Vous devez alors créer un filtre.
Filtrage des données à répéterUtilisez un filtre pour identifier les nœuds répétés possédant des valeurs d'attribut spécifiques.
- Dans l'arborescence du schéma XML, sélectionnez un noeud à répéter.
- Cliquez sur le bouton d'extension Créer un filtre.
- Cliquez sur le bouton plus (+) pour créer un filtre vide.
- Tapez les critères de filtre dans les champs suivants :
- Filtrer par
- Indique le nœud répété contenant les données sur lesquelles fonder le filtre. Ce menu déroulant propose une liste de nœuds ancêtres relatifs au nœud sélectionné dans l'arborescence du schéma XML.
- Où
- Spécifie l'attribut ou le sous-élément du nœud Filtrer par qui sera utilisé pour filtrer les résultats. Vous pouvez sélectionner un attribut ou un sous-élément dans le menu déroulant, ou vous pouvez entrer votre propre expression XPath dans ce champ pour identifier les enfants présents aux autres niveaux.
- Opérateur
- Spécifie l'opération de comparaison à utiliser dans l'expression de filtre.
- Valeur
- Spécifie la valeur à rechercher dans le nœud Filtrer par. Indiquez une valeur. Si des paramètres dynamiques sont définis pour votre page XSLT, vous pouvez en sélectionner un dans le menu déroulant.
- Pour insérer un autre filtre, cliquez à nouveau sur le bouton Plus (+).
En fonction des valeurs que vous tapez ou sélectionnez dans les menus déroulants, l'expression XPath figurant dans la zone Expression est modifiée.
L'exemple suivant renvoie uniquement les nœuds item dans lesquels la valeur de l'attribut @available correspond à true (vrai).
Lorsque vous cliquez sur OK, le code suivant est inséré dans votre page XSLT : <xsl:for-each select="provider/store/items/item[@available = 'true']">
Content goes here
</xsl:for-each>
Remarque : Vous devez placer les valeurs de chaîne telles que true entre guillemets. Dreamweaver code les guillemets (') à votre intention, afin qu'elles apparaissent dans un format XHTML valide.
Vous pouvez créer des filtres plus complexes qui vous permettent de spécifier des nœuds parents dans vos critères de filtre. L'exemple suivant affiche uniquement les noeuds item pour lesquels l'attribut @id de store est égal à 1 et le noeud price correspondant à item est supérieur à 5.
Lorsque vous cliquez sur OK, le code suivant est inséré dans votre page XSLT : <xsl:for-each select="provider/store[@id = 1]/items/item[price > 5]">
Content goes here
</xsl:for-each>
Pour plus d'informations et des exemples de régions répétées, consultez la section <xsl:for-each> du panneau Références.
|