Kaasa XSL sees XSL
Kui XML / XSL Muudab su Domian, siis on aegu, kui tahame tükk Dynamic koodi kasutada raamatukogu objekt (tuleb teha korduvkasutatavad). Mida ma mõtlen, ilmselt võiks teha selgemaks selle näiteks stsenaariumi.
Kujutage ette, olete loomas kodulehel (ja kasutades XML, XSL transfroms ofcourse) ja enamik lehti oleks Kommentaarid moodul. Hästi! siis kas sa kuuled või kleebi see kood iga lehekülje malli (mis ma dont on öelda, kuid teeb hoolduse ja ümbertegemine õudusunenägu) või veel parem, loote sisaldab faili, mida saaks tõmmatakse kus iganes sa tahad seda oma lehe ( s) ...
Nii Kuidas me loome XSL sisaldab faili ja lisada selle sees teise XSL faili? Siin on, kuidas ...
Just selleks, et asjad selgeks ... siin on kiire failide nimekirja, et teil oleks luua ... siin me ka infot puuviljade ja köögiviljade vanem leht nimega toitu.
1. food.xml - XML fail mis ümberkujundamine hakatakse kohaldama
2. food.xsl - peamised XSL faili, mis muudab meie food.xml
3. inc_fruits.xsl - XSL sisaldab faili, mis muudab puu andmed
4. inc_vegtables.xsl - XSL sisaldab faili, mis muudab vetetables andmed
Ma ei usu mul selgitada palju, koodid nimetatud elementidest, on mõistetav ...
FOOD.XML
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="food.xsl"?>
<food>
<date>July 2008</date>
<description>All about things we eat everyday</description>
<fruits type="tropical">
<item name="mango" moreinfo="http://www.mango.com">Mango is the king of fruits</item>
<item name="banana" moreinfo="http://www.banana.com">Banana once a day , keeps the doctor away</item>
<item name="orange" moreinfo="http://www.orange.com">Orange is the color and rich in vitamin C</item>
<item name="Papaya" moreinfo="http://www.papaya.com">Papaya - Hot when raw, cold when ripe</item>
</fruits>
<vegetables>
<item name="spinach" moreinfo="http://www.spinach.com">Spinach is full of iron</item>
<item name="asparagus" moreinfo="http://www.asparagus.com">Asparagus contains loads of vitamin D </item>
<item name="fenugreek" moreinfo="http://www.fenugreek.com">Fenugreek is rich in vitamin C</item>
</vegetables>
</food>
FOOD.XSL
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:include href="inc_fruits.xsl" />
<xsl:include href="inc_vegetables.xsl" />
<xsl:template match="/">
<html>
<head>
<title>Title</title>
</head>
<body>
<h3><xsl:value-of select="/food/description" /></h3>
Modification Date : <xsl:value-of select="/food/date" />
<hr/>
<h5> About Fruits</h5>
<xsl:call-template name="about_fruits"/>
<hr/>
<h5> About Vegetables</h5>
<xsl:call-template name="about_vegetables"/><hr/>
</ Body>
</ Html>
</ Xsl: template>
</ Xsl: stiil>
INC_FRUITS.XSL
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" encoding="iso-8859-1" />
<xsl:template name="about_fruits">
<xsl:for-each select="/food/fruits/item/@*">
attribute name : <xsl:value-of select="name()"/>
attribute value : <xsl:value-of select="."/> <br />
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
INC_VEGETABLES.XSL
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" encoding="iso-8859-1" />
<xsl:template name="about_vegetables">
<xsl:for-each select="/food/vegetables/item/@*">
attribute name : <xsl:value-of select="name()"/>
attribute value : <xsl:value-of select="."/> <br/>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>










































