Comment exécuter les transformations XSL côté serveur sous Dreamweaver. Création de pages XSLT et conversion de pages HTML en pages XSLT.

Remarque :

L’interface utilisateur a été simplifiée sous Dreamweaver CC et versions ultérieures. Par conséquent, il se peut que vous ne trouviez pas certaines options décrites dans cet article sous Dreamweaver CC et versions ultérieures. Pour plus d’informations, consultez cet article.

Processus d’exécution des transformations XSL côté serveur

Vous pouvez exécuter des transformations XLS côté serveur sur le serveur. Informez-vous sur les transformations XSL côté client et côté serveur et sur l’utilisation de XML et de XSL avec les pages web avant de créer des pages affichant des données XML.

Remarque :

Pour exécuter des transformations côté serveur, votre serveur doit être correctement configuré. Pour plus d’informations, contactez l’administrateur de votre serveur.

Le déroulement général des transformations XSL côté serveur est le suivant (chaque étape individuelle est décrite dans d’autres rubriques) :

1. Créez un site Dreamweaver.

2. Choisissez une technologie de serveur et configurez un serveur d’application.

3. Testez le serveur d’application.

Vous pouvez par exemple créer une page à traiter et vous assurer que le serveur d’application effectue l’opération requise.

4. Créez un fragment ou une page XSLT, ou convertissez une page HTML en page XSLT.

  • Sur votre site Dreamweaver, créez un fragment XSLT ou une page XSLT entière.

  • Convertissez une page HTML existante en une page XSLT entière.

5. Associez une source de données XML à la page.

6. Affichez les données XML en les liant au fragment XSLT ou à la page XSLT entière.

7. Le cas échéant, ajoutez un objet XSLT Région répétée au tableau ou à la ligne de tableau contenant les espaces réservés pour données XML.

8. Insérez des références.

  • Pour insérer une référence au fragment XSLT dans votre page dynamique, utilisez le comportement de serveur Transformation XSL.

  • Pour insérer une référence à la page XSLT dans la page dynamique, supprimez tout le code HTML de la page dynamique, puis utilisez le comportement de serveur Transformation XSL.

9. Envoyez la page et le fragment.

Envoyez la page dynamique et le fragment XSLT (ou la page XSLT entière) à votre serveur d’application. Si vous utilisez un fichier XML local, envoyez-le également.

10. Affichez la page dynamique dans un navigateur.

Le serveur d’application transforme alors les données XML, les insère dans la page dynamique et les affiche dans le navigateur.

Création d’une page XSLT

Les pages XSLT permettent d’afficher des données XML sur des pages web. Vous pouvez créer soit une page XSLT entière (une page XSLT contenant une balise <body> et une balise <head>), soit un fragment XSLT. Lorsque vous créez un fragment XSLT, vous créez en fait un fichier indépendant qui ne contient pas de balise body ni head, mais simplement du code qui sera ensuite inséré dans une page dynamique.

Remarque :

Si vous utilisez une page XSLT existante et devez lui associer une source de données XML.

  1. Choisissez Fichier > Nouveau.
  2. Dans la catégorie Page vierge de la boîte de dialogue Nouveau document, sélectionnez l’une des options suivantes dans la colonne Type de page :
    • Sélectionnez XSLT (page entière) pour créer une page XSLT entière.

    • Sélectionnez XSLT (Fragment) pour créer un fragment XSLT.

  3. Cliquez sur Créer et effectuez l’une des opérations suivantes dans la boîte de dialogue Localiser source XML :
    • Choisissez Associer un fichier local, cliquez sur le bouton Parcourir, recherchez le fichier XML local sur votre ordinateur, puis cliquez sur OK.
    • Choisissez Associer un fichier distant, indiquez l’adresse URL d’un fichier XML sur Internet (par exemple un fil RSS), puis cliquez sur OK.

    Remarque :

    Un clic sur le bouton Annuler entraîne la génération d’une nouvelle page XSLT à laquelle aucune source de données XML n’est associée.

    Le schéma de votre source de données XML s’affiche dans le panneau Liaisons

    Panneau Liaisons
    Panneau Liaisons

    Le tableau suivant décrit les différents éléments que le schéma est susceptible de contenir.

    Elément

    Représente

    Détails

    <>

    Elément XML non répété obligatoire

    Elément qui apparaît une fois seulement au sein de son nœud parent

    <>+

    Elément XML répété

    Elément qui apparaît une ou plusieurs fois au sein de son nœud parent

    <>+

    Elément XML facultatif

    Elément qui apparaît zéro ou plusieurs fois au sein de son nœud parent

    Nœud d’élément en gras

    Elément contextuel en cours

    En règle générale, l’élément répété lorsque le point d’insertion se trouve au sein d’une région répétée

    @

    Attribut XML

     

     

  4. Enregistrez la nouvelle page (Fichier > Enregistrer) en lui attribuant l’extension .xsl ou .xslt (l’extension par défaut est .xsl).

Conversion des pages HTML en pages XSLT

Vous pouvez aussi convertir des pages HTML existantes en pages XSLT. Si, par exemple, vous disposez d’une page statique prédéfinie à laquelle vous souhaitez ajouter des données XML, vous pouvez la convertir en page XSLT, plutôt que de créer une page XSLT et de la redéfinir entièrement.

  1. Ouvrez la page HTML à convertir.
  2. Sélectionnez Fichier > Convertir > XSLT 1.0.

    Une copie de la page s’ouvre dans la fenêtre de document. La nouvelle page est une feuille de style XSL, enregistrée avec l’extension .xsl.

Association de sources de données XML

Si vous utilisez une page XSLT existante ou si vous en créez une sous Dreamweaver sans lui associer de source de données XML, vous devez utiliser le panneau Liaisons pour associer une source de données XML.

  1. Dans le panneau Liaisons (Fenêtre > Liaisons), cliquez sur la liaison XML.
    Cliquez sur XML dans le panneau Liaisons.
    Cliquez sur XML dans le panneau Liaisons

    Remarque :

    Pour ajouter une source de données XML, vous pouvez aussi cliquer sur le lien Source, dans le coin supérieur droit du panneau Liaisons.

  2. Effectuez l’une des opérations suivantes :
    • Choisissez Associer un fichier local, cliquez sur le bouton Parcourir, recherchez le fichier XML local sur votre ordinateur, puis cliquez sur OK.

    • Choisissez Associer un fichier distant, puis indiquez l’adresse URL d’un fichier XML sur Internet (par exemple un fil RSS).

  3. Cliquez sur OK pour fermer la boîte de dialogue Localiser source XML.

    Le schéma de votre source de données XML s’affiche dans le panneau Liaisons.

Affichage des données XML dans des pages XSLT

Après avoir créé une page XSLT et lui avoir associé une source de données XML, vous pouvez lier des données à la page. Pour ce faire, vous ajoutez un emplacement réservé pour données XML dans votre page, puis vous utilisez le Créateur d’expression XPATH ou l’inspecteur Propriétés pour mettre en forme les données sélectionnées qui vont s’afficher dans la page.

  1. Ouvrez une page XSLT à laquelle est associée une source de données XML.
  2. (Facultatif) Choisissez Insertion > Tableau pour ajouter un tableau à la page. Un tableau permet d’organiser plus aisément les données XML.

    Remarque :

    En règle générale, il est conseillé d’utiliser l’objet XSLT Région répétée pour afficher des éléments XML répétés sur une page. Dans ce cas, vous pouvez créer un tableau d’une seule ligne avec une ou plusieurs colonnes, ou un tableau de deux lignes si vous avez l’intention d’insérer un en-tête.

  3. Dans le panneau Liaisons, sélectionnez un élément XML et faites-le glisser jusqu’à l’emplacement où vous souhaitez insérer des données sur la page.
    Sélectionnez un élément XML dans le panneau Liaisons
    Sélectionnez un élément XML dans le panneau Liaisons

    Un espace réservé pour données XML est créé sur la page. Cet espace réservé est en surbrillance et encadré d’accolades. Il utilise la syntaxe XPath (langage XML Path) pour décrire la structure hiérarchique du schéma XML. Par exemple, si vous faites glisser l’élément enfant title sur la page, et si ses éléments parents sont rss, channel et item, la syntaxe de l’espace réservé dynamique sera \{rss/channel/item/title\}.

    Double-cliquez sur l’emplacement réservé des données XML dans la page pour ouvrir le Créateur d’expression XPATH. Le Créateur d’expression XPATH permet de mettre les données sélectionnées en forme ou de sélectionner d’autres éléments dans le schéma XML.

  4. (Facultatif) Pour affecter des styles à vos données XML, sélectionnez un espace réservé pour données XML et appliquez-lui des styles, comme s’il s’agissait d’un autre segment de contenu, à l’aide de l’inspecteur Propriétés ou du panneau Styles CSS. Pour appliquer des styles aux fragments XSLT, vous pouvez aussi utiliser des feuilles de style au moment de la création. Chacune de ces méthodes présente des avantages et des inconvénients.
  5. Vérifiez le résultat dans un navigateur (Fichier > Aperçu dans le navigateur).

    Remarque :

    Lorsque vous utilisez la fonction Aperçu dans le navigateur, Dreamweaver effectue une transformation XSL en interne, sans faire appel à un serveur d’application.

Affichage des éléments répétés XML

L’objet XSLT Région répétée permet d’afficher sur une page web des éléments répétés provenant d’une source de données XML. Par exemple, si vous affichez des titres et descriptions d’articles à partir d’un fil d’informations contenant entre 10 et 20 articles, chaque titre et chaque description du fichier XML est probablement un élément enfant d’un élément répété.

En mode Création, toute région contenant un emplacement réservé pour données XML peut être convertie en région répétée. Toutefois, les zones les plus fréquentes sont les tableaux, les lignes de tableau ou une série de lignes de tableau.

  1. En mode Création, sélectionnez une région comportant un ou plusieurs espaces réservés pour données XML.

    La sélection peut être de tout type, notamment tableau, ligne de tableau ou même paragraphe de texte.

    Mode Création
    Mode Création

    Remarque :

    Pour sélectionner précisément une région sur une page, vous pouvez utiliser le sélecteur de balises dans le coin inférieur gauche de la fenêtre de document. Par exemple, si la région correspond à un tableau, cliquez dans ce tableau, puis cliquez sur la balise dans le sélecteur de balises.

  2. Effectuez l’une des opérations suivantes :
    • Choisissez Insertion > Objets XSLT > Région répétée.

    • Dans la catégorie XSLT du panneau Insertion, cliquez sur le bouton Région répétée.

  3. Dans le Créateur d’expression XPATH, sélectionnez l’élément répété (il est indiqué par un signe plus de petite taille).
    Créateur d’expressions Xpath
    Créateur d’expressions Xpath

  4. Cliquez sur OK.

    Dans la fenêtre de document, un contour fin de couleur grise délimite la région répétée. Lors de l’affichage de l’aperçu dans un navigateur (Fichier > Aperçu dans le navigateur), le cadre gris disparaît et la sélection est développée pour afficher les éléments répétés spécifiés dans le fichier XML.

    Lorsque vous ajoutez l’objet XSLT Région répétée à la page, l’emplacement réservé pour données XML dans la fenêtre de document est tronqué. En effet, Dreamweaver met à jour le chemin XPath de l’espace réservé pour données XML afin qu’il se réfère au chemin de l’élément répété.

Définition des propriétés des régions répétées (XSL)

L’inspecteur Propriétés permet de sélectionner un autre nœud XML à répéter pour créer la région répétée.

  1. Dans la zone Sélection, tapez un nouveau nœud, puis appuyez sur l’icône en forme d’éclair et sélectionnez le nœud dans l’arborescence de schéma XML qui apparaît.

Modification d’un objet XSLT Région répétée

Après avoir inséré un objet XSLT Région répétée dans une région, vous pouvez le modifier à l’aide de l’inspecteur Propriétés.

  1. Sélectionnez l’objet voulu en cliquant dans le cadre gris qui entoure la région répétée.
  2. Dans l’inspecteur Propriétés (Fenêtre > Propriétés), cliquez sur l’icône dynamique située en regard de la zone de texte Sélection.
  3. Dans le Créateur d’expression XPATH, effectuez les modifications nécessaires, puis cliquez sur OK.

Insertion de fragments XSLT dans des pages dynamiques

Après avoir créé un fragment XSLT, vous pouvez l’insérer dans une page web dynamique à l’aide du comportement de serveur Transformation XSL. Lorsque vous insérez ce comportement de serveur dans une page et affichez celle-ci dans un navigateur, un serveur d’application effectue une transformation qui affiche les données XML du fragment XSLT sélectionné. Dreamweaver prend en charge les transformations XSL pour les pages ColdFusion, ASP ou PHP.

Remarque :

La procédure d’insertion du contenu d’une page XSLT entière dans une page dynamique est identique. Avant d’utiliser le comportement de serveur Transformation XSL pour insérer la page XSLT entière, supprimez tout le code HTML de la page dynamique.

  1. Ouvrez une page ColdFusion, ASP ou PHP.
  2. En mode Création, placez le curseur là où vous voulez insérer le fragment XSLT.

    Remarque :

    Lors de l’insertion de fragments XSLT, vous devez toujours cliquer sur le bouton Afficher les modes Code et Création après avoir placé le point d’insertion sur la page, de façon à s’assurer que le point d’insertion est à l’emplacement voulu. S’il n’y est pas, cliquez de nouveau dans l’écran Code pour placer le point d’insertion à l’endroit voulu.

  3. Dans le panneau Comportements de serveur (Fenêtre > Comportements de serveur), cliquez sur le bouton Plus (+), puis choisissez Transformation XSL.
    Panneau Comportements de serveur
    Panneau Comportements de serveur

  4. Dans la boîte de dialogue Transformation XSL, cliquez sur le bouton Parcourir et recherchez un fragment XSLT ou une page XSLT entière.

    Dreamweaver renseigne le champ de texte suivant avec le chemin d’accès ou l’adresse URL du fichier XML associé à ce fragment. Pour modifier le contenu de ce champ, cliquez sur le bouton Parcourir et sélectionnez un autre fichier.

  5. (Facultatif) Cliquez sur le bouton Plus (+) pour ajouter un paramètre XSLT.
  6. Cliquez sur OK pour insérer une référence au fragment XSLT dans la page. Il n’est pas possible de modifier ce fragment. Si nécessaire, double-cliquez sur le fragment pour ouvrir son fichier source et le modifier.

    Un sous-dossier includes/MM_XSLTransform/ contenant un fichier contenant une bibliothèque d’exécution est également créé dans le dossier racine du site. Le serveur d’application utilise les fonctions définies dans ce fichier lors de la transformation.

  7. Transférez la page dynamique à votre serveur (Site > Placer), puis cliquez sur Oui pour inclure les fichiers dépendants. Pour que la page puisse être affichée correctement, les fichiers contenant respectivement le fragment XSLT, vos données XML et la bibliothèque d’exécution doivent tous les trois se trouver sur le serveur. (Si vous sélectionnez un fichier XML distant comme source de données, celui-ci doit bien entendu résider ailleurs sur Internet.)

Suppression de fragments XSLT de pages dynamiques

Pour supprimer un fragment XSLT d’une page, supprimez le comportement de serveur Transformation XSL qui a permis d’insérer le fragment. La suppression de ce comportement de serveur supprime uniquement le fragment XSLT ; les fichiers associés (XML, XSLT ou bibliothèque d’exécution) ne sont pas affectés.

  1. Dans le panneau Comportements de serveur (Fenêtre > Comportements de serveur), sélectionnez le comportement de serveur Transformation XSL à supprimer.
  2. Cliquez sur le bouton Moins (-).

    Remarque :

    Vous devez toujours utiliser cette méthode pour supprimer un comportement de serveur. En effet, la suppression manuelle du code correspondant ne supprime que partiellement le comportement de serveur, même si celui-ci disparaît bien du panneau Comportements de serveur.

Modification des comportements de serveur Transformation XLS

Après avoir ajouté un fragment XSLT à une page web dynamique, vous pouvez à tout moment modifier le comportement de serveur Transformation XSL.

  1. Dans le panneau Comportements de serveur (Fenêtre > Comportements de serveur), double-cliquez sur le comportement de serveur Transformation XLS à modifier.
  2. Effectuez les modifications requises, puis cliquez sur OK.

Vous pouvez créer un lien dynamique dans votre page XSLT qui établit un lien vers une URL spécifique lorsque l’utilisateur clique sur un mot ou un groupe de mots spécifié dans vos données XML. Pour obtenir des instructions complètes, voir l’errata Dreamweaver à l’adresse www.adobe.com/go/dw_documentation_fr.

Application de styles aux fragments XSLT

Lorsque vous créez une page XSLT entière (autrement dit, une page XSLT qui contient des balises <body> et <head>), vous pouvez afficher les données XML sur la page, puis les mettre en forme comme tout autre contenu à l’aide de l’inspecteur Propriétés ou du panneau Styles CSS. Lorsque vous créez un fragment XSLT pour l’insertion dans une page dynamique, tel qu’un fragment à insérer dans une page ASP, PHP ou Cold Fusion), le rendu des styles du fragment et de la page dynamique devient plus compliqué. Bien que le fragment XSLT soit traité de façon indépendante par rapport à la page dynamique, il est important de conserver à l’esprit que le fragment est conçu pour cette page dynamique et que le code renvoyé par le fragment XSLT sera placé quelque part entre les balises <body> de la page dynamique. Etant donné ce processus, il est important de s’assurer qu’aucun élément <head> (tel que des définitions de style ou des liens vers des feuilles de style externes) n’est inclus dans des fragments XSLT. Sinon, le serveur d’application place ces éléments dans la section <body> de la page dynamique, ce qui débouche sur un marquage non valide.

Vous pouvez, par exemple, décider de créer un fragment XSLT à insérer dans une page dynamique et le mettre en forme au moyen de la même feuille de style externe que la page dynamique. Si vous attachez la même feuille de style au fragment, la page HTML résultante contient un lien en double à la feuille de style (un dans la section <head> de la page dynamique et un autre dans la section <body> de la page, là où le contenu du fragment XSLT apparaît). Une meilleure façon de procéder consiste à utiliser des feuilles de style à la conception pour référencer la feuille de style externe.

Lors du formatage du contenu des fragments XSLT, utilisez la procédure suivante :

  • Tout d’abord, attachez une feuille de style externe à la page dynamique. (Cette procédure reprend les meilleures pratiques d’application des styles au contenu d’une page web.)

  • Ensuite, attachez la même feuille de style externe au fragment XSLT en tant que feuille de style à la conception. Tel que leur nom l’indique, les feuilles de style à la conception fonctionnent uniquement en mode Création sous Dreamweaver.

    Une fois les deux étapes précédentes terminées, vous pouvez créer de nouveaux styles dans votre fragment XSLT à l’aide de la feuille de style qui a été associée à votre page dynamique. Vous obtiendrez un code HTML mieux structuré (dans la mesure où la référence à la feuille de style n’est valide que sous Dreamweaver) et le fragment affichera toujours les styles requis en mode Création. De plus, tous vos styles sont appliqués au fragment et à la page dynamique lorsque vous affichez cette dernière en mode Création ou en affichez un aperçu dans un navigateur.

Remarque :

Si vous demandez un aperçu du fragment XSLT dans un navigateur, ce dernier n’affiche pas les styles. Par contre, vous devez afficher un aperçu de la page dynamique dans le navigateur afin de consulter le fragment XSLT dans le contexte de la page dynamique.

Utilisation des paramètres avec des transformations XSL

Lorsque vous ajoutez le comportement de serveur Transformation XLS à une page web, vous pouvez définir des paramètres de transformation XSL. Un paramètre contrôle la façon dont les données XML sont traitées et affichées. Par exemple, vous pouvez utiliser un paramètre pour identifier et afficher un article spécifique d’un fil d’informations. Lorsque la page est chargée dans un navigateur, seul l’article spécifié par le paramètre est affiché.

Ajout d’un paramètre XSLT à une transformation XSL

  1. Ouvrez la boîte de dialogue Transformation XSL. Pour ce faire, double-cliquez sur un comportement de serveur Transformation XLS dans le panneau Comportements de serveur (Fenêtre > Comportements de serveur), ou ajoutez un nouveau comportement de serveur Transformation XLS.
  2. Dans la boîte de dialogue Transformation XSL, cliquez sur le bouton Plus (+) à côté du libellé Paramètres XSLT.
    Boîte de dialogue Transformation XSL
    Boîte de dialogue Transformation XSL

  3. Dans la boîte de dialogue Ajouter un paramètre, tapez un nom pour le paramètre dans la zone Nom. Ce nom ne peut comporter que des caractères alphanumériques, et il ne doit pas contenir d’espace.
  4. Effectuez l’une des opérations suivantes :
    • Pour utiliser une valeur statique, saisissez-la dans la zone Valeur.

    • Pour utiliser une valeur dynamique, cliquez sur l’icône Dynamique à côté de la zone Valeur, renseignez la boîte de dialogue Données dynamiques, puis cliquez sur le bouton OK. Pour plus d’informations, cliquez sur le bouton Aide de la boîte de dialogue Données dynamiques.

  5. Dans la zone Valeur par défaut, indiquez la valeur que le paramètre doit utiliser si la page ne reçoit aucune valeur lors de son exécution, puis cliquez sur OK.

Modification d’un paramètre XSLT

  1. Ouvrez la boîte de dialogue Transformation XSL. Pour ce faire, double-cliquez sur un comportement de serveur Transformation XLS dans le panneau Comportements de serveur (Fenêtre > Comportements de serveur), ou ajoutez un nouveau comportement de serveur Transformation XLS.
  2. Sélectionnez un paramètre dans la liste des paramètres XSLT.
  3. Cliquez sur le bouton Modifier.
  4. Effectuez les modifications requises, puis cliquez sur OK.

Suppression d’un paramètre XSLT

  1. Ouvrez la boîte de dialogue Transformation XSL. Pour ce faire, double-cliquez sur un comportement de serveur Transformation XLS dans le panneau Comportements de serveur (Fenêtre > Comportements de serveur), ou ajoutez un nouveau comportement de serveur Transformation XLS.
  2. Sélectionnez un paramètre dans la liste des paramètres XSLT.
  3. Cliquez sur le bouton Moins (-).

Création et modification des régions XSLT conditionnelles

Vous pouvez créer des régions conditionnelles simples ou multiples sur une page XSLT. Vous pouvez soit sélectionner un élément en mode Création, puis appliquer une région conditionnelle à la sélection, soit insérer une région conditionnelle à l’emplacement du point d’insertion dans le document.

Supposons que vous souhaitiez afficher l’expression « Non disponible » en regard du prix d’un article lorsque celui-ci est en rupture de stock. Pour ce faire, vous tapez l’expression « Non disponible » sur la page, la sélectionnez et lui appliquez une région conditionnelle. Dreamweaver entoure l’expression des balises <xsl:if> et affiche uniquement le mot « Non disponible » sur la page lorsque les données répondent aux conditions définies par l’expression conditionnelle.

Application d’une région XSLT conditionnelle

Vous pouvez rédiger une expression conditionnelle simple à insérer dans votre page XSLT. Tout contenu sélectionné à l’ouverture de la boîte de dialogue Région conditionnelle est entouré d’un bloc <xsl:if>. Si aucun contenu n’est sélectionné, le bloc <xsl:if> est entré au point d’insertion. Il est judicieux d’utiliser cette boîte de dialogue pour démarrer, puis de personnaliser l’expression en mode Code.

L’élément <xsl:if> est similaire à l’instruction if d’autres langages. Il a pour fonction de tester une condition et de déclencher une action en fonction du résultat. L’élément <xsl:if> vous permet de tester si une expression est vraie ou fausse.

  1. Choisissez Insertion > Objets XSLT > Région conditionnelle, ou cliquez sur l’icône Région conditionnelle de la catégorie XSLT du panneau Insertion.
  2. Dans la boîte de dialogue Région conditionnelle, entrez l’expression conditionnelle à utiliser pour la région.

    L’exemple suivant vérifie si la valeur de l’attribut @available du nœud contextuel correspond à true (vrai).

    Boîte de dialogue Zone conditionnelle
    Boîte de dialogue Zone conditionnelle

  3. Cliquez sur OK.

    Le code suivant est inséré dans votre page XSLT :

    <xsl:if test="@available=&apos;true&apos;"> 
        Content goes here 
    </xsl:if>

    Remarque :

    Vous devez placer les valeurs de chaîne telles que true entre guillemets. Dreamweaver code les guillemets (&apos;) à votre intention, afin qu’elles apparaissent dans un format XHTML valide.

    Outre tester des nœuds pour des valeurs, vous pouvez utiliser toute fonction XSLT prise en charge dans votre instruction conditionnelle. La condition est testée pour le nœud en cours de votre fichier XML. L’exemple suivant teste le dernier nœud des résultats :

    Test du dernier nœud du jeu de résultats
    Test du dernier nœud dans le jeu de résultats

    Pour plus d’informations et des exemples concernant l’écriture d’expressions conditionnelles, consultez la section <xsl:if> du panneau Références (Aide > Référence).

Application de régions XSLT conditionnelles multiples

Vous pouvez rédiger une expression conditionnelle simple à insérer dans votre page XSLT. Tout contenu sélectionné à l’ouverture de la boîte de dialogue Région conditionnelle est entouré d’un bloc <xsl:choose>. Si vous ne sélectionnez pas de contenu, le bloc <xsl:choose> est entré au point d’insertion. Il est judicieux d’utiliser cette boîte de dialogue pour démarrer, puis de personnaliser l’expression en mode Code.

L’élément <xsl:choose> est similaire à l’instruction case d’autres langages. Il a pour fonction de tester une condition et de déclencher une action en fonction du résultat. L’élément <xsl:choose> vous permet de tester plusieurs conditions.

  1. Choisissez Insertion > Objets XSLT > Région conditionnelle multiple, ou cliquez sur l’icône Région conditionnelle multiple de la catégorie XSLT du panneau Insertion.
  2. Entrez la première condition dans la boîte de dialogue Région conditionnelle multiple.

    L’exemple suivant vérifie si la valeur du sous-élément price du nœud contextuel est inférieure à 5.

    Boîte de dialogue Région conditionnelle multiple
    Boîte de dialogue Région conditionnelle multiple

  3. Cliquez sur OK.

    Le code suivant est inséré dans votre page XSLT :

    <xsl:choose> 
        <xsl:when test="price&lt;5"> 
            Content goes here 
        </xsl:when> 
        <xsl:otherwise> 
            Content goes here 
        </xsl:otherwise> 
    </xsl:choose>
  4. Pour insérer une autre condition, placez le point d’insertion en mode Code entre les paires de balises <xsl:when> ou juste avant la balise <xsl:otherwise>, puis insérez une région conditionnelle (Insertion > Objets XSLT > Région conditionnelle).

    Une fois que vous avez spécifié la condition et cliqué sur OK, une autre balise <xsl:when> est insérée dans le bloc <xsl:choose>.

    Pour plus d’informations et des exemples concernant l’écriture d’expressions conditionnelles, consultez les sections <xsl:choose> du panneau Références (Aide > Référence).

Définition des propriétés des régions conditionnelles (If)

L’inspecteur de définition des propriétés des régions conditionnelles permet de modifier la condition utilisée dans une région conditionnelle dans votre page XSL. La région conditionnelle teste la condition et déclenche une action en fonction du résultat.

  1. Dans la zone Test, tapez une nouvelle condition et appuyez sur Entrée.

Définition des propriétés conditionnelles (When)

L’inspecteur de définition des propriétés des régions conditionnelles permet de modifier la condition utilisée dans une région conditionnelle multiple dans votre page XSL. La région conditionnelle multiple teste la condition et déclenche une action en fonction du résultat.

  1. Dans la zone Test, tapez une nouvelle condition et appuyez sur Entrée.

Insertion de commentaires XSL

Vous pouvez ajouter des balises de commentaires XSL à un document ou vous pouvez entourer une sélection de balises de commentaires XSL.

Ajout de balises de commentaires XSL à un document

  1. Effectuez l’une des opérations suivantes :
    • En mode Création, sélectionnez Insertion > Objets XSLT > Commentaires XSL, tapez les commentaires (ou ne remplissez pas la zone), puis cliquez sur OK.

    • En mode Code, sélectionnez Insertion > Objets XSLT > Commentaires XSL.

    Remarque :

    Vous pouvez également cliquer sur l’icône Commentaire XSL de la catégorie XSLT du panneau Insertion.

Placement d’une sélection entre balises de commentaires XSLT

  1. Basculez en mode Code (Affichage > Code).
  2. Sélectionnez le code auquel vous souhaitez ajouter des commentaires.
  3. Dans la barre d’outils de codage, cliquez sur le bouton Appliquer commentaire et sélectionnez Appliquer commentaire <xsl:comment></xsl:comment>.

Utilisation du Créateur d’expressions XPath pour ajouter des expressions pour les données XML

XPath (langage XML Path) 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 nœuds 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

  1. Double-cliquez sur l’emplacement réservé des données XML dans la page pour ouvrir le Créateur d’expression XPATH.
  2. 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 nœud 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 nœud item :

    Boîte de dialogue Créateur d’expressions Xpath (Texte dynamique)
    Boîte de dialogue Créateur d’expressions Xpath (Texte dynamique)

    Une telle sélection insère le code suivant dans votre page XSLT :

    <xsl:value-of select="price"/>
  3. (Facultatif) Sélectionnez une option de formatage dans le menu déroulant Format.

    Le formatage d’une sélection est utile lorsque la valeur du nœud 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 :

    Définissez le format du sous-élément price sous la forme d’une devise à deux décimales.
    Définissez le format du sous-élément price sous la forme d’une devise à deux décimales.

    Ces options devraient insérer le code suivant dans votre page XSLT :&lt ; xsl-de select="format-number(provider/store/items/item/price,’$#.00’)" / >

    <xsl:value-of select="format-number(provider/store/items/item/price,'$#.00')"/>
  4. Cliquez sur OK.
  5. 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 nœuds pour renvoyer une valeur, consultez la section <xsl:value-of/> du panneau Références.

Sélection d’un nœud à répéter

Vous 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.

  1. Double-cliquez sur l’emplacement réservé des données XML dans la page pour ouvrir le Créateur d’expression XPATH.
  2. 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.

    Boîte de dialogue Créateur d’expressions Xpath (zone répétée)
    Boîte de dialogue Créateur d’expressions Xpath (zone répétée)

    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 nœuds 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éter

Utilisez un filtre pour identifier les nœuds répétés possédant des valeurs d’attribut spécifiques.

  1. Dans l’arborescence du schéma XML, sélectionnez un nœud à répéter.
  2. Cliquez sur le bouton d’extension Créer un filtre.
  3. Cliquez sur le bouton Plus (+) pour créer un filtre vide.
  4. 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.

    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.

  5. 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).

    Résultat restreint aux nœuds d’éléments pour lesquels la valeur de l’attribut @disponible est égale à "vrai"
    Résultat restreint aux nœuds d’éléments pour lesquels la valeur de l’attribut @disponible est égale à "vrai"

    Lorsque vous cliquez sur OK, le code de suivant est inséré dans votre page XSLT :<xsl:for-each select="provider/store/items/item[@available = &apos;true&apos;]"> Insérer le contenu ici </xsl:for-each>

    <xsl:for-each select="provider/store/items/item[@available = &apos;true&apos;]"> 
          Content goes here 
    </xsl:for-each>

    Remarque :

    Vous devez placer les valeurs de chaîne telles que true entre guillemets. Dreamweaver code les guillemets (&apos;) à 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 nœuds item pour lesquels l’attribut @id de store est égal à 1 et le nœud price correspondant à item est supérieur à 5.

    Le résultat est limité aux nœuds d’élément pour lesquels l’attribut @id de store est égal à&nbsp;1 et le nœud de price supérieur à 5.
    L’exemple suivant affiche uniquement les nœuds item pour lesquels l’attribut @id de store est égal à 1 et le nœud price correspondant à item est supérieur à 5.

    Lorsque vous cliquez sur OK, le code de suivant est inséré dans votre page XSLT :<xsl:for-each select="provider/store/items/item[@available = &apos;true&apos;]"> Insérer le contenu ici </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.

    <xsl:for-each select="provider/store[@id = 1]/items/item[price &gt; 5]"> 
        Content goes here 
    </xsl:for-each>

Ce produit est distribué sous licence Creative Commons Attribution - Pas d’utilisation commerciale - Partage à l’identique 3.0 non transposé  Les publications Twitter™ et Facebook ne sont pas couvertes par les dispositions Creative Commons.

Mentions légales   |   Politique de confidentialité en ligne