Meer informatie over het uitvoeren van XSL-transformaties op de server in Dreamweaver. XSLT-pagina's maken en HTML omzetten naar XSLT-pagina's.
De gebruikersinterface van nieuwere versies van Dreamweaver is vereenvoudigd. Daarom zijn sommige opties die in dit artikel worden beschreven, niet beschikbaar in nieuwere versies van Dreamweaver. Meer informatie vindt u in dit artikel.
Workflow voor het uitvoeren van server-side XSL-transformaties
Je kunt server-side XSL-transformaties op de server uitvoeren.Lees over XSL-transformaties aan de server-kant en klantzijde en over het gebruik van XML en XSL met webpagina's voordat je pagina's bouwt die XML-gegevens weergeven.
Uw server moet correct zijn geconfigureerd voor het uitvoeren van server-side transformaties. Neem contact op met de serverbeheerder voor meer informatie.
De algemene workflow voor het uitvoeren van XSL-transformaties aan de server-kant is als volgt (elke stap wordt beschreven in andere onderwerpen):
1. Een Dreamweaver-site instellen.
2. Een servertechnologie kiezen en een applicatieserver instellen.
3. Test de applicatieserver.
Maak bijvoorbeeld een pagina die verwerking vereist en controleer of de applicatieserver de pagina verwerkt.
4. Een XSLT-fragment of pagina maken, of een HTML-pagina converteren naar een XSLT-pagina.
In je Dreamweaver-site maak je een XSLT-fragment of een volledige XSLT-pagina.
Zet een bestaande HTML-pagina om in een hele XSLT-pagina.
5. Koppel een XML-databron aan de pagina.
6. Geef XML-gegevens weer door de gegevens te binden aan het XSLT-fragment of aan de volledige XSLT-pagina.
7. Indien van toepassing een Herhalend gebied XSLT-object toevoegen aan de tabel of tabelrij die de XML-gegevensplaatshouders bevat.
8. Referenties invoegen.
Om een referentie naar het XSLT-fragment in je dynamische pagina in te voegen, gebruik je het XSL-transformatie servergedrag.
Om een referentie naar de volledige XSLT-pagina in de dynamische pagina in te voegen, verwijder je alle HTML-code van een dynamische pagina en gebruik je vervolgens het XSL-transformatie servergedrag.
9. Publiceer de pagina en het fragment.
Publiceer zowel de dynamische pagina als het XSLT-fragment (of de volledige XSLT-pagina) naar je applicatieserver.Als je een lokaal XML-bestand gebruikt, moet je dat ook publiceren.
10. Bekijk de dynamische pagina in een browser.
Wanneer je dit doet, transformeert de applicatieserver de XML-gegevens, voegt deze in de dynamische pagina in en toont deze in de browser.
XSLT-pagina maken
Je kunt XSLT-pagina's maken waarmee je XML-gegevens op webpagina's kunt weergeven.Je kunt ofwel een volledige XSLT-pagina maken—een XSLT-pagina die een <body>-tag en een <head>-tag bevat—of je kunt een XSLT-fragment maken.Wanneer je een XSLT-fragment maakt, maak je een onafhankelijk bestand dat geen body- of head-tag bevat—een eenvoudig stuk code dat later wordt ingevoegd in een dynamische pagina.
Als u begint met een bestaande XSLT-pagina, moet u daar een XML-gegevensbron aan koppelen.
Selecteer XSLT (Volledige pagina) om een volledige XSLT-pagina te maken.
Selecteer XSLT (fragment) om een XSLT-fragment te maken.
- Selecteer Lokaal bestand koppelen, klik op Bladeren, ga naar een lokaal XML-bestand op uw computer en klik op OK.
- Kies Extern bestand koppelen, voer de URL in van een XML-bestand op internet (bijvoorbeeld een van een RSS-bron) en klik op OK.
Als u op de knop Annuleren klikt, wordt een nieuwe XSLT-pagina zonder gekoppelde XML-gegevensbron gegenereerd.
Het deelvenster Bindingen wordt gevuld met het schema van uw XML-gegevensbron
De volgende tabel bevat een uitleg van de verschillende elementen in het schema die kunnen worden weergegeven:
Element |
Vertegenwoordigt |
Details |
|---|---|---|
<> |
Verplicht niet-herhalend XML-element |
Een element dat precies één keer voorkomt binnen het bovenliggende knooppunt |
<>+ |
Herhalend XML-element |
Een element dat een of meer keer voorkomt binnen het bovenliggende knooppunt |
<>+ |
Optioneel XML-element |
Een element dat nul of meer keer voorkomt binnen het bovenliggende knooppunt |
Vetgedrukt elementknooppunt |
Huidig contextelement |
Normaal gesproken het herhalende element als de invoegpositie in een herhalende regio staat |
@ |
XML-kenmerk |
|
HTML-pagina's omzetten naar XSLT-pagina's
Je kunt ook bestaande HTML-pagina's converteren naar XSLT-pagina's.Als je bijvoorbeeld een vooraf ontworpen statische pagina hebt waaraan je XML-gegevens wilt toevoegen, kun je de pagina converteren naar een XSLT-pagina, in plaats van een XSLT-pagina maken en de pagina vanaf nul opnieuw ontwerpen.
In het documentvenster wordt een kopie van de pagina geopend. De nieuwe pagina is een XSL-stijlblad, opgeslagen met de .xsl-extensie.
XML-gegevensbronnen koppelen
Als je begint met een bestaande XSLT-pagina of als je geen XML-databron koppelt bij het maken van een nieuwe XSLT-pagina met Dreamweaver, moet je een XML-databron koppelen via het deelvenster Bindingen.
U kunt ook op de koppeling Bron klikken rechtsboven in het paneel Bindingen om een XML-gegevensbron toe te voegen.
Selecteer Een lokaal bestand koppelen, klik op de knop Verkennen, verken naar een lokaal XML-bestand op je computer en klik op OK.
Selecteer Een extern bestand koppelen en voer de URL in van een XML-bestand op internet (zoals een bestand van een RSS-feed).
Het deelvenster Bindingen wordt gevuld met het schema van je XML-databron.
XML-gegevens weergeven op XSLT-pagina's
Nadat je een XSLT-pagina hebt gemaakt en een XML-databron hebt gekoppeld, kun je gegevens aan de pagina binden.Hiervoor voeg je een XML-gegevensplaatshouder toe aan je pagina en gebruik je vervolgens de XPath Expression Builder of de Eigenschappen-inspector om geselecteerde gegevens te formatteren die op de pagina worden weergegeven.
In de meeste gevallen gebruik je het XSLT-object Herhalend gebied om herhalende XML-elementen op een pagina weer te geven.In dit geval wil je misschien een tabel met één rij en een of meer kolommen maken, of een tabel met twee rijen als je een tabelkop wilt opnemen.
Een XML-gegevens- plaatshouder verschijnt op de pagina.De plaatshouder is gemarkeerd en staat tussen accolades.Het gebruikt de XPath (XML Path language) syntaxis om de hiërarchische structuur van het XML-schema te beschrijven.Als je bijvoorbeeld het onderliggende element title naar de pagina sleept en dat element heeft de bovenliggende elementen rss, channel en item, dan wordt de syntaxis voor de dynamische content-placeholder {rss/channel/item/title}.
Dubbelklik op de XML-gegevensplaatshouder op de pagina om de XPath Expression Builder te openen.Met de XPath Expression Builder kun je geselecteerde gegevens formatteren, of andere items uit het XML-schema selecteren.
als u uw werk met Voorvertoning in browser bekijkt, voert Dreamweaver een interne transformatie uit zonder een toepassingsserver te gebruiken.
Herhalende XML-elementen weergeven
Met het XSLT-object Herhalende regio kun je herhalende elementen uit een XML-databron weergeven in een webpagina.Als je bijvoorbeeld artikeltitels en beschrijvingen weergeeft uit een newsfeed, en die newsfeed bevat tussen de tien en twintig artikelen, dan zou elke titel en beschrijving in het XML-bestand waarschijnlijk een onderliggend element zijn van een herhalend element.
Elke regio in Ontwerpweergave die een XML-gegevensplaatshouder bevat, kan worden gewijzigd in een herhaalde regio.De meest voorkomende regio's zijn echter tabellen, tabelrijen of een reeks tabelrijen.
De selectie kan van alles zijn, inclusief een tabel, een tabelrij of zelfs een alinea tekst.
Als u een gebied op de pagina nauwkeurig wilt selecteren, gebruikt u de tagkiezer in de linkerbenedenhoek van het documentvenster. Als het gebied bijvoorbeeld een tabel is, klikt u in de tabel op de pagina en daarna op de tag in de tagkiezer.
Selecteer Invoegen > XSLT-objecten > Herhalende regio.
Klik in de XSLT-categorie van het Invoegen-paneel op de knop Herhalende regio.
In het Documentvenster verschijnt een dunne, getabde, grijze omtrek rondom de herhaalde regio. Wanneer je een voorvertoning van je werk bekijkt in een browser (Bestand > Voorvertoning in browser), verdwijnt de grijze omtrek en breidt de selectie zich uit om de opgegeven herhalende elementen in het XML-bestand weer te geven.
Wanneer je het herhalende regio XSLT-object aanhet pagina toevoegt, wordt de XML-gegevensplaatshouder in het Documentvenster afgekapt. Dit komt omdat Dreamweaver het XPath voor de XML-gegevensplaatshouder afkapt zodat het relatief is ten opzichte van het pad van het herhalende element.
Eigenschappen herhalingsgebied instellen (XSL)
In de Eigenschap-inspector kun je een verschillende XML-node selecteren om de herhalende regio te maken.
Herhalingsgebied XSLT-object bewerken
Nadat je een herhalende regio XSLT-object hebt toegevoegd aan een regio, kun je het bewerken met de Eigenschap-inspector.
XSLT-fragmenten invoegen in dynamische pagina's
Nadat je een XSLT-fragment hebt gemaakt, kun je het invoegen in een dynamische webpagina met het XSL-transformatie-servergedrag.Wanneer je het servergedrag toevoegt aan je pagina en de pagina bekijkt in een browser, voert een applicatieserver een transformatie uit die de XML-gegevens weergeeft van het geselecteerde XSLT-fragment. Dreamweaver ondersteunt XSL-transformaties voor ColdFusion-, ASP- of PHP-pagina's.
Als u de inhoud van een hele XSLT-pagina in een dynamische pagina wilt invoegen, is de procedure hetzelfde. Voordat u servergedrag voor XSL-transformatie gebruikt om de hele XSLT-pagina in te voegen, moet u alle HTML-code verwijderen uit de dynamische pagina.
Bij het invoegen van XSLT-fragmenten dient u altijd op Code- en ontwerpweergaven tonen te klikken nadat u de invoegpositie op de pagina hebt geplaatst, om te zorgen dat de invoegpositie op de juiste plaats staat. Als dat niet het geval is, kunt u elders in codeweergave klikken om de invoegpositie op de gewenste plaats te zetten.
Dreamweaver vult het volgende tekstveld in met het bestandspad of de URL van het XML-bestand dat is gekoppeld aan het opgegeven fragment. Klik op de knop Verkennen en verken naar een ander bestand om dit te wijzigen.
Er wordt ook een map includes/MM_XSLTransform/ aangemaakt in de hoofdmap van de site die een runtime-bibliotheekbestand bevat.De applicatieserver gebruikt de functies die in dit bestand zijn gedefinieerd om de transformatie uit te voeren.
XSLT-fragmenten verwijderen uit dynamische pagina's
Je kunt een XSLT-fragment uit een pagina verwijderen door het servergedrag XSL-transformatie te verwijderen dat werd gebruikt om het fragment in te voegen.Door het servergedrag te verwijderen wordt alleen het XSLT-fragment verwijderd—de gekoppelde XML-, XSLT- of runtime-bibliotheekbestanden worden niet verwijderd.
Servergedrag moet u altijd op deze manier verwijderen. Door de gegenereerde code handmatig te verwijderen wordt het servergedrag slechts gedeeltelijk verwijderd, ook als het servergedrag uit het paneel Servergedrag verdwijnt.
Serverbetekenissen voor XSL-transformatie bewerken
Nadat je een XSLT-fragment aan een dynamische webpagina hebt toegevoegd, kun je de serverbetekenis XSL-transformatie op elk moment bewerken.
Een dynamische koppeling maken
Je kunt een dynamische link maken op je XSLT-pagina die naar een specifieke URL verwijst wanneer de gebruiker klikt op een bepaald woord of groep woorden uit je XML-gegevens.Voor volledige instructies, zie de Dreamweaver erratum op www.adobe.com/go/dw_documentation.
Stijlen toepassen op XSLT-fragmenten
Wanneer je een volledige XSLT-pagina maakt (dat wil zeggen, een XSLT-pagina die <body>- en <head>-tags bevat), kun je XML-gegevens op de pagina weergeven en vervolgens de gegevens opmaken zoals anders content met behulp van de Eigenschappencontrole of het deelvenster CSS-stijlen. Wanneer je echter een XSLT-fragment maakt voor invoeging in een dynamische pagina (bijvoorbeeld een fragment voor invoeging in een ASP-, PHP- of ColdFusion-pagina), wordt de weergave van stijlen in het fragment en in de dynamische pagina ingewikkelder.Hoewel je aan een XSLT-fragment werkt los van de dynamische pagina, is het belangrijk om te onthouden dat het fragment is bedoeld voor gebruik binnen de dynamische pagina en dat de uitvoer van het XSLT-fragment zich uiteindelijk ergens binnen de <body>-tags van de dynamische pagina bevindt.Gezien deze workflow is het belangrijk ervoor te zorgen dat je geen <head>-elementen (zoals stijldefinities of koppelingen naar externe stijlbladen) opneemt in XSLT-fragmenten. Als je dit wel doet, zorgt de applicatieserver ervoor dat deze elementen in de <body> van de dynamische pagina worden geplaatst, waardoor ongeldige opmaak wordt gegenereerd.
Je wilt bijvoorbeeld een XSLT-fragment maken om in te voegen in een dynamische pagina en het fragment opmaken met hetzelfde externe stijlblad als de dynamische pagina. Als je hetzelfde stijlblad aan het fragment koppelt, bevat de resulterende HTML-pagina een dubbele koppeling naar het stijlblad (één in de <head>-sectie van de dynamische pagina en een andere in de <body>-sectie van de pagina, waar de content van het XSLT-fragment verschijnt). In plaats van deze aanpak moet je Design-time stijlbladen gebruiken om naar het externe stijlblad te verwijzen.
Gebruik de volgende workflow bij het opmaken van de content van XSLT-fragmenten:
Koppel eerst een externe stijlpagina aan de dynamische pagina. (Dit is de beste werkwijze voor het toepassen van stijlen op de inhoud van elke webpagina.)
Koppel vervolgens dezelfde externe stijlpagina aan het XSLT-fragment als een Design-Time stijlblad. Zoals de naam aangeeft, werken Design-Time stijlpagina's alleen in de ontwerpweergave van Dreamweaver.
Nadat u de vorige twee stappen hebt uitgevoerd, kunt u nieuwe stijlen maken in uw XSLT-fragment met dezelfde stijlpagina als u aan uw dynamische pagina hebt gekoppeld. De HTML-uitvoer zal schoner zijn (omdat de verwijzing naar de stijlpagina alleen geldig is terwijl u in Dreamweaver werkt) en het fragment zal toch de juiste stijlen weergeven in de ontwerpweergave. Bovendien worden al uw stijlen toegepast op zowel het fragment als de dynamische pagina wanneer u de dynamische pagina in de ontwerpweergave bekijkt of in een browser voorvertoont.
Als u het XSLT-fragment in een browser voorvertoont, geeft deze de stijlen niet weer. In plaats daarvan dient u de dynamische pagina in de browser voor te vertonen om het XSLT-fragment in de context van de dynamische pagina te zien.
Parameters met XSL-transformaties gebruiken
Je kunt parameters definiëren voor je XSL-transformatie wanneer je het XSL Transformation-servergedrag toevoegt aan een webpagina. Een parameter bepaalt hoe XML-gegevens worden verwerkt en weergegeven. Je kunt bijvoorbeeld een parameter gebruiken om een specifiek artikel uit een newsfeed te identificeren en weer te geven. Wanneer de pagina wordt geladen in een browser, verschijnt alleen het artikel dat je hebt opgegeven met de parameter.
Voeg een XSLT-parameter toe aan een XSL-transformatie
Als je een statische waarde wilt gebruiken, voer je deze in het vak Waarde in.
Als je een dynamische waarde wilt gebruiken, klik je op het dynamische pictogram naast het vak Waarde, vul je het dialoogvenster Dynamische gegevens in en klik je op OK.Klik voor meer informatie op de knop Help in het dialoogvenster Dynamische gegevens.
XSLT-parameter bewerken
XSLT-parameter verwijderen
Voorwaardelijke XSLT-regio's maken en bewerken
Je kunt eenvoudige of meerdere voorwaardelijke regio's maken op een XSLT-pagina.Je kunt een element selecteren in de ontwerpweergave en een voorwaardelijke regio toepassen op de selectie, of je kunt een voorwaardelijke regio invoegen waar het invoegpunt zich bevindt in het document.
Als je bijvoorbeeld het woord 'Niet beschikbaar' wilt weergeven naast de prijs van een artikel wanneer het artikel niet beschikbaar is, typ je de tekst 'Niet beschikbaar' op de pagina, selecteer je deze en pas je vervolgens een voorwaardelijke regio toe op de geselecteerde tekst.Dreamweaver omringt de selectie met <xsl:if> tags en toont alleen het woord "Niet beschikbaar" op de pagina wanneer de data overeenkomen met de voorwaarden van de conditionele expressie.
Voorwaardelijk XSLT-gebied toepassen
Je kunt een eenvoudige voorwaardelijke expressie schrijven om toe te voegen aan je XSLT-pagina.Als content is geselecteerd wanneer je het dialoogvenster Conditionele regio opent, wordt het content omhuld in een <xsl:if> blok. Als je content niet is geselecteerd, wordt het <xsl:if> blok toegevoegd op het invoegpunt op de pagina. Het is een goed idee om het dialoogvenster te gebruiken om te beginnen en vervolgens de expressie aan te passen in de Codeweergave.
Het <xsl:if> element is vergelijkbaar met de if instructie in andere talen. Het element biedt een manier om een voorwaarde te testen en een handelswijze te kiezen gebaseerd op het resultaat. Het <xsl:if> element stelt je in staat om een expressie te testen voor een enkele true of false waarde.
In het volgende voorbeeld wil je testen of de kenmerkwaarde @available van de contextnode true is.
De volgende code wordt in de XSLT-pagina ingevoegd.
<xsl:if test="@available='true'">
Plaats hier de inhoud
</xsl:if>
Tekenreekswaarden als “true" moet u tussen aanhalingstekens plaatsen. Dreamweaver codeert de aanhalingstekens voor je (') zodat ze worden ingevoerd als geldige XHTML.
Naast het testen van nodes op waarden, kun je alle ondersteunde XSLT-functies gebruiken in elke conditionele instructie.De voorwaarde wordt getest voor het huidige knooppunt in uw XML-bestand. In het volgende voorbeeld wil je testen op de laatste node in de resultatenset:
Voor meer informatie en voorbeelden over het schrijven van conditionele expressies, zie het <xsl:if> gedeelte in het deelvenster Naslag (Help > Naslag).
Meerdere conditionele XSLT-regio's gebruiken
Je kunt een eenvoudige conditionele expressie schrijven om in te voegen in je XSLT-pagina. Als content is geselecteerd wanneer je het dialoogvenster Conditionele regio opent, wordt het content omhuld in een <xsl:choose> blok. Als je geen content selecteert, wordt het <xsl:choose> blok toegevoegd op het invoegpunt op de pagina. Het is een goed idee om het dialoogvenster te gebruiken om te beginnen en vervolgens de expressie aan te passen in de Codeweergave.
Het <xsl:choose> element is vergelijkbaar met de case instructie in andere talen. Het element biedt een manier om een voorwaarde te testen en een actie te ondernemen op basis van het resultaat.Het <xsl:choose> element stelt je in staat om meerdere voorwaarden te testen.
In het volgende voorbeeld wil je testen of het price-subelement van de contextnode kleiner is dan vijf.
In het voorbeeld wordt de volgende code ingevoegd in je XSLT-pagina:
<xsl:choose>
<xsl:when test="price<5">
Plaats hier de inhoud
</xsl:when>
<xsl:otherwise>
Plaats hier de inhoud
</xsl:otherwise>
</xsl:choose>
Nadat je de voorwaarde hebt opgegeven en op OK klikt, wordt een andere <xsl:when>-tag ingevoegd in het <xsl:choose>-blok.
Voor meer informatie en voorbeelden over het schrijven van voorwaardelijke expressies, zie de <xsl:choose>-secties in het paneel Referentie (Help > Referentie).
Eigenschappen voorwaardelijk gebied (If) instellen
Het doel van de eigenschappencontrole Voorwaardelijke regio instellen is het wijzigen van de voorwaarde die wordt gebruikt in een voorwaardelijke regio in je XSL-pagina.De voorwaardelijke regio test de voorwaarde en onderneemt een actie op basis van het resultaat.
Eigenschappen voorwaarden (When) instellen
Het doel van de eigenschappencontrole Voorwaardelijke regio instellen is het wijzigen van de voorwaarde die wordt gebruikt in een meerdere voorwaardelijke regio in je XSL-pagina.De meerdere voorwaardelijke regio test de voorwaarde en onderneemt een actie op basis van het resultaat.
XSL-commentaar invoegen
Je kunt XSL-commentaartags aan een document toevoegen, of je kunt een selectie inpakken in XSL-commentaartags.
XSL-commentaartags aan een document toevoegen
Selecteer in Ontwerpweergave Invoegen > XSLT-objecten > XSL-commentaar, typ de inhoud van het commentaar (of laat het vak leeg) en klik op OK.
Selecteer in Codeweergave Invoegen > XSLT-objecten > XSL-commentaar.
Je kunt ook klikken op het pictogram XSL-commentaar in de XSLT-categorie van het paneel Invoegen.
Een selectie inpakken in XSL-commentaartags
Gebruik de XPath Expression Builder om expressies voor XML-gegevens toe te voegen
XPath (XML Path Language) is een non-XML-syntaxis voor het adresseren van delen van een XML-document. Het wordt voornamelijk gebruikt als een querytaal voor XML-gegevens, net zoals de SQL-taal wordt gebruikt om databases te bevragen. Voor meer informatie over XPath, zie de XPath-taalspecificatie op de W3C-website op www.w3.org/TR/xpath.
De XPath Expression Builder is een Dreamweaver-functie waarmee je eenvoudige XPath-expressies kunt maken voor het identificeren van specifieke gegevensknooppunten en voor herhalende regio's. Het voordeel van het gebruik van deze methode in plaats van waarden uit de XML-schemaboom te slepen is dat je de waarde die wordt weergegeven kunt opmaken. De huidige context wordt geïdentificeerd op basis van de positie van het invoegpunt in het XSL-bestand wanneer het dialoogvenster XPath Expression Builder wordt geopend. De huidige context heeft een vet lettertype in het XML-schema. Terwijl je selecties maakt in dit dialoogvenster, worden de juiste XPath-statements, relatief ten opzichte van je huidige context, gegenereerd. Dit vereenvoudigt het proces van het schrijven van juiste XPath-expressies voor beginners en gevorderde gebruikers.
Deze functie is bedoeld om u te helpen bij het bouwen van enkelvoudige XPath-expressies voor het aanduiden van een bepaald knooppunt of van herhalingsgebieden. U kunt de expressies hiermee niet handmatig bewerken. Als u meervoudige expressies moet maken, begint u met XPath Expression Builder en past de expressies aan in codeweergave of met de eigenschappencontrole.
Een XPath-expressie maken om een specifiek knooppunt te identificeren
De juiste XPath-expressie verschijnt in het vak Expressie om de node te identificeren.
Als je een ander knooppunt in de XML-schemaboom selecteert, verandert de expressie om je keuze weer te geven.
In het volgende voorbeeld wil je het subelement price van het knooppunt item weergeven:
Deze selectie zou de volgende code in je XSLT-pagina invoegen:
<xsl:value-of select="price"/>
Het opmaken van een selectie is handig wanneer de waarde van je knooppunt een getal retourneert. Dreamweaver biedt een vooraf gedefinieerde lijst met opmaakfuncties. Voor een volledige lijst met beschikbare opmaakfuncties en voorbeelden, zie het deelvenster Referentie.
In het volgende voorbeeld wil je het subelement price opmaken als valuta met twee decimalen:
Deze opties zouden de volgende code in je XSLT-pagina invoegen:<xsl:value-of select="format-number(provider/store/items/item/price,'$#.00')"/>
Voor meer informatie en voorbeelden over het selecteren van nodes om een waarde te retourneren, zie de <xsl:value-of/> sectie in het Reference paneel.
Te herhalen knooppunt selecteren
Je kunt een node selecteren om over te herhalen en, optioneel, om de resultaten te filteren. In het XPath Expression Builder dialoogvenster wordt je geselecteerde content tussen een <xsl:for-each> blok geplaatst. Als je geen content hebt geselecteerd, wordt het <xsl:for-each> blok ingevoegd op de positie van je cursor.
De juiste XPath-expressie wordt geschreven in het Expression vak om de node te identificeren.
Herhalende items worden geïdentificeerd met een plusteken (+) in de XML-schemastructuur.
In het volgende voorbeeld wil je elke item node binnen het XML-bestand herhalen.
Wanneer je op OK klikt, wordt de volgende code ingevoegd in je XSLT-pagina:
<xsl:for-each select="provider/store/items/item">
Plaats hier de inhoud
</xsl:for-each>
In sommige gevallen wil je misschien werken met een subset van de herhalende knooppunten—bijvoorbeeld als je alleen items wilt waar een kenmerk een specifieke waarde heeft.In dat geval moet je een filter maken.
Te herhalen gegevens filteren
Gebruik een filter om herhalende nodes te identificeren die specifieke attribuutwaarden hebben.
Filteren op
Specificeert de herhalende node die de gegevens bevat waar je op wilt filteren. Het pop-upmenu biedt een lijst van voorouder nodes relatief aan de node die je hebt geselecteerd in de XML schema boom.
Waar
Specificeert het attribuut of subelement van de Filter By node dat wordt gebruikt om de resultaten te beperken. Je kunt een attribuut of subelement selecteren uit het pop-upmenu, of je kunt je eigen XPath expressie invoeren in dit veld om kinderen te identificeren die dieper in de schema boom bestaan.
Operator
Specificeert de vergelijkingsoperator die gebruikt moet worden in de filter expressie.
Waarde
Geeft de waarde aan die gecontroleerd moet worden in het knooppunt voor Filteren op. Voer de waarde in. Als dynamische parameters zijn gedefinieerd voor je XSLT pagina, kun je er een selecteren uit het pop-upmenu.
Terwijl je waarden invoert of selecties maakt in de pop-upmenus, verandert de XPath-expressie in het Expression vak.
In het volgende voorbeeld wil je de resultaatset beperken tot die item nodes waar de waarde van het @available kenmerk true is.
Wanneer je op OK klikt, wordt de volgende code ingevoegd in je XSLT-pagina:<xsl:for-each select="provider/store/items/item[@available = 'true']"> Content goes here </xsl:for-each>
Tekenreekswaarden als “true" moet u tussen aanhalingstekens plaatsen. Dreamweaver codeert de aanhalingstekens voor je (') zodat ze worden ingevoerd als geldige XHTML.
Je kunt complexere filters maken waarmee je bovenliggende nodes kunt specificeren als onderdeel van je filtercriteria.In het volgende voorbeeld wil je de resultatenset beperken tot die item-nodes waar het @id-attribuut van de webwinkel gelijk is aan 1 en de price-node van het item groter is dan 5.
Wanneer je op OK klikt, wordt de volgende code ingevoegd in je XSLT-pagina:<xsl:for-each select="provider/store[@id = 1]/items/item[price > 5]"> Content goes here </xsl:for-each>
Voor meer informatie en voorbeelden van herhalende regio's, zie de sectie <xsl:for-each> in het paneel Referentie.
Verwante informatie
Prachtige websites ontwerpen in Dreamweaver
Ontwerp, codeer en beheer dynamische websites in een krachtige alles-in-één tool.