|
|
Line 18: |
Line 18: |
|
| |
|
| == XML == | | == XML == |
| | | [http://enos.itcollege.ee/~saaver/VR2/n%e4mm-n%e4mm.xml link XML link] |
| '''XML'''
| | [http://enos.itcollege.ee/~saaver/VR2/n%e4mm-n%e4mm.xsd link XSD link] |
| <source lang="xml">
| | [http://enos.itcollege.ee/~saaver/VR2/n%e4mm-n%e4mm.xsl link XSLT link] |
| <?xml version="1.0" encoding="utf-8" ?>
| |
| <kohvikud>
| |
| <kohvik id="0">
| |
| <nimi>Saiapäts</nimi>
| |
| <aadress laius="59.395515" pikkus="24.664993">
| |
| <riik>Eesti</riik>
| |
| <maakond>Harjumaa</maakond>
| |
| <linnVald>Tallinn</linnVald>
| |
| <indeks>64739</indeks>
| |
| <tanav>pätsi</tanav>
| |
| <maja>5</maja>
| |
| </aadress>
| |
|
| |
| <lahtiolekuajad>
| |
| <alates> <!--nende lahtiolekuaegade kehtivuse alguskuupäev. Saab määrata lahtiolekuajad perioodide kaupa. Näiteks 01.01 alates on ühed, aga 01.06 teised. Seejuures saab igasse perioodi lisada ka erandeid, mil on kohvik suletud või teistel aegadel lahti.-->
| |
| <aasta>2011</aasta>
| |
| <kuu>01</kuu>
| |
| <paev>01</paev>
| |
| </alates>
| |
| <lahtiolekuaeg>
| |
| <nadalapaev>E</nadalapaev>
| |
| <avamisaeg>
| |
| <tund>08</tund>
| |
| <minut>00</minut>
| |
| </avamisaeg>
| |
| <sulgemisaeg>
| |
| <tund>19</tund>
| |
| <minut>00</minut>
| |
| </sulgemisaeg>
| |
| </lahtiolekuaeg>
| |
| <lahtiolekuaeg>
| |
| <nadalapaev>T</nadalapaev>
| |
| <avamisaeg>
| |
| <tund>09</tund>
| |
| <minut>30</minut>
| |
| </avamisaeg>
| |
| <sulgemisaeg>
| |
| <tund>10</tund>
| |
| <minut>00</minut>
| |
| </sulgemisaeg>
| |
| </lahtiolekuaeg>
| |
| | |
| <erandid> <!--lahtiolekuaegade erandid-->
| |
| <erand>
| |
| <kuupaev>
| |
| <aasta>2011</aasta>
| |
| <kuu>02</kuu>
| |
| <paev>24</paev>
| |
| </kuupaev>
| |
| <avamisaeg>
| |
| <tund>suletud</tund>
| |
| <minut></minut>
| |
| </avamisaeg>
| |
| <sulgemisaeg>
| |
| <tund></tund>
| |
| <minut></minut>
| |
| </sulgemisaeg>
| |
| </erand>
| |
| <erand>
| |
| <kuupaev>
| |
| <aasta>2011</aasta>
| |
| <kuu>02</kuu>
| |
| <paev>25</paev>
| |
| </kuupaev>
| |
| <avamisaeg>
| |
| <tund>12</tund>
| |
| <minut>00</minut>
| |
| </avamisaeg>
| |
| <sulgemisaeg>
| |
| <tund>16</tund>
| |
| <minut>20</minut>
| |
| </sulgemisaeg>
| |
| </erand>
| |
| </erandid>
| |
| </lahtiolekuajad>
| |
|
| |
| <menüü>
| |
| <kuupaev> <!--kuupäev, millal antud menüü kehtib-->
| |
| <aasta>2011</aasta>
| |
| <kuu>02</kuu>
| |
| <paev>24</paev>
| |
| </kuupaev>
| |
| <kategooria>
| |
| <nimetus>suupisted</nimetus>
| |
| <soodustused> <!--Igale tootegrupile saab määrata soodustused eraldi. Soodustusi võib olla mitme erineva suurusega-->
| |
| <soodustus>
| |
| <liik>ISIC</liik>
| |
| <suurus>10</suurus>
| |
| <yhik>%</yhik>
| |
| </soodustus>
| |
| <soodustus> <!--võimalik on panna ka soodustusi, kus hinnast antakse mingi kindel summa alla, mitte protsent-->
| |
| <liik>kliendikaart</liik>
| |
| <suurus>0.1</suurus>
| |
| <yhik>EUR</yhik>
| |
| </soodustus>
| |
| </soodustused>
| |
| <toit>
| |
| <nimetus>tikuvõileib magushapus kastmes</nimetus>
| |
| <ports> <!--ühte toitu võib olla mitmes erinevas suuruses, seejuures saab ka igale suurusele erinevad soodustused anda-->
| |
| <suurus>väike</suurus>
| |
| <saadaval>1</saadaval> <!--1 - true; 0 - false-->
| |
| <hind>
| |
| <vaartus>9.90</vaartus>
| |
| <valuuta>EUR</valuuta>
| |
| </hind>
| |
| </ports>
| |
| <ports>
| |
| <suurus>suur</suurus>
| |
| <saadaval>0</saadaval>
| |
| <hind>
| |
| <vaartus>9.90</vaartus>
| |
| <valuuta>EUR</valuuta>
| |
| </hind>
| |
| </ports>
| |
| </toit>
| |
| </kategooria>
| |
| | |
| <kategooria>
| |
| <nimetus>mittealkoholsed joogid</nimetus>
| |
| ...
| |
| </kategooria>
| |
| | |
| <kategooria>
| |
| <nimetus>lisad</nimetus>
| |
| <soodustused></soodustused>
| |
| <toit>
| |
| <nimetus>ahjukartul</nimetus>
| |
| <ports>
| |
| <suurus>suur</suurus>
| |
| <saadaval>1</saadaval>
| |
| <hind>
| |
| <vaartus>0</vaartus>
| |
| <valuuta>EUR</valuuta>
| |
| </hind>
| |
| </ports>
| |
| <ports>
| |
| <suurus>väike</suurus>
| |
| <saadaval>1</saadaval>
| |
| <hind>
| |
| <vaartus>0</vaartus>
| |
| <valuuta>EUR</valuuta>
| |
| </hind>
| |
| </ports>
| |
| </toit>
| |
| </kategooria>
| |
| | |
| </menüü>
| |
| </kohvik>
| |
| </kohvikud>
| |
| </source>
| |
| | |
| | |
| | |
| '''XML Schema'''
| |
| <source lang="xml">
| |
| <?xml version="1.0" encoding="utf-8"?>
| |
| <xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
| |
| <xs:element name="kohvikud">
| |
| <xs:complexType>
| |
| <xs:sequence>
| |
| <xs:element name="kohvik" maxOccurs="unbounded">
| |
| <xs:complexType>
| |
| <xs:sequence>
| |
| <xs:element name="nimi" type="xs:string" />
| |
| <xs:element name="aadress">
| |
| <xs:complexType>
| |
| <xs:sequence>
| |
| <xs:element name="riik" type="xs:string" />
| |
| <xs:element name="maakond" type="xs:string" />
| |
| <xs:element name="linnVald" type="xs:string" />
| |
| <xs:element name="indeks" type="xs:unsignedShort" />
| |
| <xs:element name="tanav" type="xs:string" />
| |
| <xs:element name="maja" type="xs:string" />
| |
| </xs:sequence>
| |
| <xs:attribute name="laius" type="xs:decimal" use="required" />
| |
| <xs:attribute name="pikkus" type="xs:decimal" use="required" />
| |
| </xs:complexType>
| |
| </xs:element>
| |
| <xs:element name="lahtiolekuajad">
| |
| <xs:complexType>
| |
| <xs:sequence>
| |
| <xs:element name="alates">
| |
| <xs:complexType>
| |
| <xs:sequence>
| |
| <xs:element name="aasta" type="xs:unsignedShort" />
| |
| <xs:element name="kuu" type="xs:unsignedByte" />
| |
| <xs:element name="paev" type="xs:unsignedByte" />
| |
| </xs:sequence>
| |
| </xs:complexType>
| |
| </xs:element>
| |
| <xs:element maxOccurs="unbounded" name="lahtiolekuaeg">
| |
| <xs:complexType>
| |
| <xs:sequence>
| |
| <xs:element name="nadalapaev" type="xs:string" />
| |
| <xs:element name="avamisaeg">
| |
| <xs:complexType>
| |
| <xs:sequence>
| |
| <xs:element name="tund" type="xs:unsignedByte" />
| |
| <xs:element name="minut" type="xs:unsignedByte" />
| |
| </xs:sequence>
| |
| </xs:complexType>
| |
| </xs:element>
| |
| <xs:element name="sulgemisaeg">
| |
| <xs:complexType>
| |
| <xs:sequence>
| |
| <xs:element name="tund" type="xs:unsignedByte" />
| |
| <xs:element name="minut" type="xs:unsignedByte" />
| |
| </xs:sequence>
| |
| </xs:complexType>
| |
| </xs:element>
| |
| </xs:sequence>
| |
| </xs:complexType>
| |
| </xs:element>
| |
| <xs:element name="erandid">
| |
| <xs:complexType>
| |
| <xs:sequence>
| |
| <xs:element maxOccurs="unbounded" name="erand">
| |
| <xs:complexType>
| |
| <xs:sequence>
| |
| <xs:element name="kuupaev">
| |
| <xs:complexType>
| |
| <xs:sequence>
| |
| <xs:element name="aasta" type="xs:unsignedShort" />
| |
| <xs:element name="kuu" type="xs:unsignedByte" />
| |
| <xs:element name="paev" type="xs:unsignedByte" />
| |
| </xs:sequence>
| |
| </xs:complexType>
| |
| </xs:element>
| |
| <xs:element name="avamisaeg">
| |
| <xs:complexType>
| |
| <xs:sequence>
| |
| <xs:element name="tund" type="xs:string" />
| |
| <xs:element name="minut" type="xs:string" />
| |
| </xs:sequence>
| |
| </xs:complexType>
| |
| </xs:element>
| |
| <xs:element name="sulgemisaeg">
| |
| <xs:complexType>
| |
| <xs:sequence>
| |
| <xs:element name="tund" type="xs:string" />
| |
| <xs:element name="minut" type="xs:string" />
| |
| </xs:sequence>
| |
| </xs:complexType>
| |
| </xs:element>
| |
| </xs:sequence>
| |
| </xs:complexType>
| |
| </xs:element>
| |
| </xs:sequence>
| |
| </xs:complexType>
| |
| </xs:element>
| |
| </xs:sequence>
| |
| </xs:complexType>
| |
| </xs:element>
| |
| <xs:element name="menüü" maxOccurs="unbounded">
| |
| <xs:complexType>
| |
| <xs:sequence>
| |
| <xs:element name="kuupaev">
| |
| <xs:complexType>
| |
| <xs:sequence>
| |
| <xs:element name="aasta" type="xs:unsignedShort" />
| |
| <xs:element name="kuu" type="xs:unsignedByte" />
| |
| <xs:element name="paev" type="xs:unsignedByte" />
| |
| </xs:sequence>
| |
| </xs:complexType>
| |
| </xs:element>
| |
| <xs:element maxOccurs="unbounded" name="kategooria">
| |
| <xs:complexType>
| |
| <xs:sequence>
| |
| <xs:element name="nimetus" type="xs:string" />
| |
| <xs:element name="soodustused">
| |
| <xs:complexType>
| |
| <xs:sequence>
| |
| <xs:element minOccurs="0" maxOccurs ="unbounded" name="soodustus">
| |
| <xs:complexType>
| |
| <xs:sequence>
| |
| <xs:element name="liik" type="xs:string" />
| |
| <xs:element name="suurus" type="xs:decimal" />
| |
| <xs:element name="yhik" type="xs:string" />
| |
| </xs:sequence>
| |
| </xs:complexType>
| |
| </xs:element>
| |
| </xs:sequence>
| |
| </xs:complexType>
| |
| </xs:element>
| |
| <xs:element maxOccurs="unbounded" name="toit">
| |
| <xs:complexType mixed="true">
| |
| <xs:sequence>
| |
| <xs:element name="nimetus" type="xs:string" />
| |
| <xs:element minOccurs="0" maxOccurs="unbounded" name="ports">
| |
| <xs:complexType>
| |
| <xs:sequence>
| |
| <xs:element name="suurus" type="xs:string" />
| |
| <xs:element name="saadaval" type="xs:boolean" />
| |
| <xs:element name="hind">
| |
| <xs:complexType>
| |
| <xs:sequence>
| |
| <xs:element name="vaartus" type="xs:decimal" />
| |
| <xs:element name="valuuta" type="xs:string" />
| |
| </xs:sequence>
| |
| </xs:complexType>
| |
| </xs:element>
| |
| </xs:sequence>
| |
| </xs:complexType>
| |
| </xs:element>
| |
| </xs:sequence>
| |
| </xs:complexType>
| |
| </xs:element>
| |
| </xs:sequence>
| |
| </xs:complexType>
| |
| </xs:element>
| |
| </xs:sequence>
| |
| </xs:complexType>
| |
| </xs:element>
| |
| </xs:sequence>
| |
| <xs:attribute name="id" type="xs:unsignedShort" use="required" />
| |
| </xs:complexType>
| |
| </xs:element>
| |
| </xs:sequence>
| |
| </xs:complexType>
| |
| </xs:element>
| |
| </xs:schema>
| |
| </source>
| |
| | |
| | |
| '''XSL'''
| |
| <source lang="xml">
| |
| <?xml version="1.0" encoding="UTF-8"?>
| |
| | |
| <xsl:stylesheet version="1.0"
| |
| xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
| |
| | |
| <xsl:template match="/">
| |
| <html>
| |
| <body>
| |
| <xsl:for-each select="kohvikud">
| |
| <h2>Kohvik <xsl:value-of select="kohvik/nimi"/></h2>
| |
| <p>Asukoht: <xsl:value-of select="kohvik/aadress/tanav"/> <xsl:value-of select="kohvik/aadress/maja"/>,
| |
| <xsl:value-of select="kohvik/aadress/linnVald"/>, <xsl:value-of select="kohvik/aadress/maakond"/>,
| |
| <xsl:value-of select="kohvik/aadress/riik"/>
| |
| </p>
| |
|
| |
| <p>Lahtiolekuajad: <br />
| |
| <xsl:for-each select="kohvik/lahtiolekuajad/lahtiolekuaeg">
| |
| <xsl:value-of select="nadalapaev"/> -
| |
| <xsl:value-of select="avamisaeg/tund"/>:<xsl:value-of select="avamisaeg/minut"/> -
| |
| <xsl:value-of select="sulgemisaeg/tund"/>:<xsl:value-of select="sulgemisaeg/minut"/><br />
| |
| </xsl:for-each>
| |
| </p>
| |
| | |
| <p>Lahtiolekuaegade erandid: <br />
| |
| <xsl:for-each select="kohvik/lahtiolekuajad/erandid/erand">
| |
| <xsl:value-of select="kuupaev/paev"/>/<xsl:value-of select="kuupaev/kuu"/>/<xsl:value-of select="kuupaev/aasta"/> -
| |
| <xsl:value-of select="avamisaeg/tund"/>:<xsl:value-of select="avamisaeg/minut"/> -
| |
| <xsl:value-of select="sulgemisaeg/tund"/>:<xsl:value-of select="sulgemisaeg/minut"/><br />
| |
| </xsl:for-each>
| |
| </p>
| |
|
| |
| <h3><strong>MENÜÜ</strong></h3>
| |
| | |
| <p><xsl:for-each select="kohvik/menüü/kategooria">
| |
| <strong>-- <xsl:value-of select="nimetus"/> -- </strong><br /><br />
| |
| | |
| | |
| SOODUSTUSED: <br />
| |
| <table border="1">
| |
| <tr>
| |
| <th align="center">Liik</th>
| |
| <th align="center">Suurus</th>
| |
| <th align="center">Ühik</th>
| |
| </tr>
| |
| <xsl:for-each select="soodustused/soodustus">
| |
| <tr>
| |
| <td align="center"><xsl:value-of select="liik"/></td>
| |
| <td align="center"><xsl:value-of select="suurus"/></td>
| |
| <td align="center"><xsl:value-of select="yhik"/></td>
| |
| </tr>
| |
| </xsl:for-each>
| |
| | |
| </table> <br /> <br />
| |
| | |
| <xsl:for-each select="toit">
| |
| <strong><xsl:value-of select="nimetus"/></strong> <br />
| |
| <xsl:for-each select="ports">
| |
| <xsl:value-of select="suurus"/> - <xsl:value-of select="hind/vaartus"/> <xsl:value-of select="hind/valuuta"/><br />
| |
| </xsl:for-each>
| |
| </xsl:for-each>
| |
| | |
| </xsl:for-each></p>
| |
| </xsl:for-each>
| |
| </body>
| |
| </html>
| |
| </xsl:template>
| |
| | |
| </xsl:stylesheet>
| |
| </source>
| |
|
| |
|
| == XSLT tulemus == | | == XSLT tulemus == |