Помогни ни да направим Uroci.net по - богат! Добави урок

Въведение в XML

Stalik   трудност:    видян: 297341



По съшия начин можете да проверявате стойностите на атрибути на таговете. Единствената разлика се състои в това, че името на атрибута трябва да се предхожда от символа @, докато името на дъщерен таг - не. Проверките обикновено се извършват в таговете <xsl:for-each> и <xsl:template>. Във <xsl:for-each> може да се използва, за да се изведат само таговете с определена стойност на даден атрибут, а в <xsl:template> за да се дефинират стил на таг, който има определена стойност на атрибута. XSL стига още по-далеч в предоставяните възможности за избор на извежданите тагове. Той предоставя условния "оператор" <xsl:if>. Кодът между <xsl:if> и </xsl:if> се изпълнява само ако е изпълнено условието, определено от атрибута match. Например можете да приложите стилово оформление само на таговете, съдържащи атрибута version, като използвате кода

Код:
<xsl:if match=".[@version]">
<xsl:apply-templates/>
</xsl:if>



Също така можете да избирате между множество варианти чрез тага <xsl:choose>, който се използва в комбинация с <xsl:when> и <xsl : otherwise>. Кода на <xsl:when> се изпълнява само, ако условието, определено от атрибута match е изпълнено, докато този на <xsl : otherwise> само ако никой от блоковете <xsl:when> не е изпълнен. За да илюстрирам това ще дам един пример, отново ползващ XML кода с програмите, който оцветява в червено фона на програмите в раздела graphics.

Код:
<?xml version="1.0"?>
<xsl:stylesheet>
<xsl:template match="/">
<HTML>
<BODY>
<H1>Software</H1>
<TABLE CELLSPACING="4" CELLPADDING="2">
<TR STYLE="font-weight:bold; font-size:18">
<TD>Name (Sorted Alphabetically)</TD>
</TR>
<xsl:for-each select="software/program" order-by="+ name/program">
<xsl:choose>
<xsl : when match="/type[category='graphics']">
<TR BGCOLOR="#red"><xsl : apply-templates/></TR>
</xsl : when>
<xsl : otherwise>
<TR><xsl : apply-templates/></TR>
</xsl : otherwise>
</xsl : choose>
</xsl : for-each>
</TABLE>
</BODY>
</HTML>
</xsl:template>

<xsl:template match="name">
<TD STYLE="font-style:italic; font-size:20">
<xsl:value-of select="program"/>
</TD>
</xsl:template>
</xsl:stylesheet>



Използване на скриптове в XSL

Няколко тага в XSL поддрържат атрибута language, който определя скриптовия език, който ще се ползва по-нататък в документа (докато, разбира се, не бъде срещнат съответняи затварящ таг). Самия XSL е независим от скриптовите езици и не поддържа пряко нито един от тях. Това означава, че в браузър, поддържащ JavaScript и VBScript можете да ползвате тези два езика; ако браузърът поддържа друг скриптов език, можете да го ползвате. За създаване на скрипт обикновено се ползва тага <xsl:script>, но атрибута language се поддържа още и от <xsl:stylesheet> и <xsl:template>

Има още едно интересно нещо, което можем да кажем за XSL. Той позволява използването на комантари в изведения HTML код. Това се осъществява чрез тага <xsl:comment>. Можете да го използвате всмето <!-- винаги, когато пишете HTML код, който да се изведе, и искате да включите коментар в него.

Автор: Максим Крижановски
 


Страници: «3 4 5 6

Регистрирайте се, за да добавите коментар


Калдейта ЕООД - © 2003-2010. Всички права запазени.
Препоръчваме: Национален Бизнес | Bomba.bg | IT Новини | Диплома.бг | TRAVEL туризъм | Реферати | AmAm.bg | Иде.ли | Курсови работи | Фото Форум | Spodeli.net | Фото-Култ | Atol.bg | Elmaz.com | MobileBulgaria.com | Казанлък.Com