• No results found

Skapa XSLT filen till tillämpningsuppgiften

In document Översikt och tillämpning av XML (Page 75-83)

6 XSLT

6.2 Skapa XSLT filen till tillämpningsuppgiften

I detta avsnitt skall vi utifrån teknikerna som vi har förklarat i detta kapitel skapa XSLT-filen till vår tillämpningsuppgift. I kapitel 3 hade vi två punkter som skall skapas enligt XSLT-tekniken:

• Skapa en XSLT-fil som ger en översiktlig presentation av informationen i XML- filen i en webbläsare.

• Skapa en XSLT-fil som ger en detaljerad presentation av informationen i XML- filen i en webbläsare. Utöver den presentation man åstadkom ovan anges även här patternbeskrivningarna som kan vara bra om man vill veta lite mer om mönstren som ingår.

XSLT-fil men då måste man skapa ett webbgränssnitt där man kan välja exakt vilken information man vill ha. I XSLT har man tillgång till slingor och villkorsatser, vilket gör att man kan filtrera XML-informationen.

För första punkten gäller:

<?xml version="1.0" encoding="UTF-8"?> <!-- Filnamn: XslScenario.xsl --> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version ="1.0"> <xsl:template match= "/"> <HTML> <HEAD>

<TITLE> scenario library </TITLE> </HEAD> <BODY BGCOLOR="#66CC99"> <H2> Scenario library</H2> <xsl:for-each select="SCENARIO-LIBRARY/SCENARIO"> <UL> <LI><B><SPAN STYLE="font-style:italic">scenario-id : </SPAN></B></LI>

<!-- SPAN-elementet binder HTML-element till XML-element eller

attribut. När man binder ett HTML-element till ett XML-element eller –attribut visar HTML-elementet automatiskt innehållet i XML-

elementet eller värdet på XML-attribut -->

<xsl:value-of select="SCENARIO-ID"/> <BR/>

<B><SPAN STYLE="font-style:italic">descriptive name : </SPAN></B>

<xsl:value-of select="SOURCE"/><BR/>

<B><SPAN STYLE="font-style:italic">nr of patterns : </SPAN></B>

<xsl:value-of select="NR-OF-PATTERNS"/><BR/> <B><SPAN STYLE="font-style:italic">description : </SPAN></B>

<xsl:value-of select="DESCRIPTION"/><BR/>

<B><SPAN STYLE="font-style:italic">providing organization : </SPAN></B>

<xsl:value-of select="PROVIDING-ORG"/><BR/>

<B><SPAN STYLE="font-style:italic">providing person : </SPAN></B>

<xsl:value-of select="PROVIDING-PERS"/><BR/> <B><SPAN STYLE="font-style:italic">contact email : </SPAN></B> <xsl:value-of select="CONTACT-EMAIL"/><P/> </UL> </xsl:for-each> </BODY> </HTML> </xsl:template> </xsl:stylesheet>

Så här ser sidan ut i Internet Explorer:

Figuren visar de två första SCENARIO-elementen (om man rullar nedåt ser man de resterande). För andra punkten gäller:

<?xml version="1.0" encoding="UTF-8"?> <!-- Filnamn: XslScenario2.xsl -->

<xsl:template match= "/"> <HTML> <HEAD>

<TITLE> scenario library </TITLE> </HEAD> <BODY BGCOLOR="#66CC99"> <H2> Scenario library</H2> <xsl:for-each select="SCENARIO-LIBRARY/SCENARIO"> <UL> <LI><B><SPAN STYLE="font-style:italic">scenario-id : </SPAN></B></LI> <xsl:value-of select="SCENARIO-ID"/> <BR/>

<B><SPAN STYLE="font-style:italic">descriptive name : </SPAN></B>

<xsl:value-of select="DESCRIPTIVE-NAME"/><BR/>

<B><SPAN STYLE="font-style:italic">source : </SPAN></B> <xsl:value-of select="SOURCE"/><BR/>

<B><SPAN STYLE="font-style:italic">nr of patterns : </SPAN></B>

<xsl:value-of select="NR-OF-PATTERNS"/><BR/> <B><SPAN STYLE="font-style:italic">description : </SPAN></B>

<xsl:value-of select="DESCRIPTION"/><BR/>

<B><SPAN STYLE="font-style:italic">providing organization : </SPAN></B>

<xsl:value-of select="PROVIDING-ORG"/><BR/>

<B><SPAN STYLE="font-style:italic">providing person : </SPAN></B>

<xsl:value-of select="PROVIDING-PERS"/><BR/> <B><SPAN STYLE="font-style:italic">contact email : </SPAN></B>

<B><font size="4">Pattern information : </font></B><BR/> <xsl:for-each select="PATTERN-INFO"> <UL type="square"> <LI><B><SPAN STYLE="font-style:italic">pattern type : </SPAN></B></LI> <xsl:value-of select="PATTERN-TYPE"/><BR/> <B><SPAN STYLE="font-style:italic">pattern mode : </SPAN></B> <xsl:value-of select="PATTERN-MODE"/><BR/> <B><SPAN STYLE="font-style:italic">pattern size : </SPAN></B> <xsl:value-of select="PATTERN-SIZE"/><BR/> <B><SPAN STYLE="font-style:italic">pattern description : </SPAN></B> <xsl:value-of select="PATTERN- DESCRIPTION"/><P/> </UL> </xsl:for-each> </UL> </xsl:for-each> </BODY> </HTML> </xsl:template> </xsl:stylesheet>

Det slutliga resultatet är att utmatningen innehåller alla data från alla SCENARIO-element i dokumentet. Så här ser sidan ut i Internet Explorer:

In document Översikt och tillämpning av XML (Page 75-83)

Related documents