Bleh
Koosseis
- Lennart Ploom
- Kalev Kärpuk
- Jaak Peldes
XML
<?xml version="1.0" encoding="utf-8" ?>
<Tasklist>
<Task Id ="1">
<Aine Nimetus="Matemaatiline analüüs" Oppejoud="Kristiina Hakk">
<Oppekava Id="1" Nimetus="ISArendus">
<Oppevorm Id="1" Nimetus="Päevaõpe">
<Oppeaasta Id="1">
<Kirjeldus>
<Ülesanne>Vihiku täitmine</Ülesanne>
<Tähtaeg>23.03</Tähtaeg>
<HindeSkaala>10p</HindeSkaala>
</Kirjeldus>
</Oppeaasta>
</Oppevorm>
</Oppekava>
</Aine>
</Task>
<Task Id ="2">
<Aine Nimetus="Algoritmid ja andmestruktuurid" Oppejoud ="Jaanus Pöial">
<Oppekava Id="1" Nimetus="ISArendus">
<Oppevorm Id="1" Nimetus="Päevaõpe">
<Oppeaasta Id="2">
<Kirjeldus>
<Ülesanne>Iseseisev 5</Ülesanne>
<Tähtaeg>23.06</Tähtaeg>
<HindeSkaala>10p</HindeSkaala>
</Kirjeldus>
</Oppeaasta>
</Oppevorm>
</Oppekava>
</Aine>
</Task>
<Task Id="3">
<Aine Nimetus="Tõenäosusteooria ja matemaatiline statistika" Oppejoud ="Kristiina Hakk">
<Oppekava Id="2" Nimetus="ISAdministreerimine">
<Oppevorm Id="2" Nimetus="Õhtuõpe">
<Oppeaasta Id="1">
<Kirjeldus>
<Ülesanne>1. Kontrolletöö</Ülesanne>
<Tähtaeg>11.03</Tähtaeg>
<HindeSkaala>10p</HindeSkaala>
</Kirjeldus>
</Oppeaasta>
</Oppevorm>
</Oppekava>
</Aine>
</Task>
<Task Id ="4">
<Aine Nimetus="Võrgurakendused I" Oppejoud ="Random">
<Oppekava Id="1" Nimetus="ISArendus">
<Oppevorm Id="1" Nimetus="Päevaõpe">
<Oppeaasta Id="1">
<Kirjeldus>
<Ülesanne>Vihiku täitmine</Ülesanne>
<Tähtaeg>23.01</Tähtaeg>
<HindeSkaala>6p</HindeSkaala>
</Kirjeldus>
</Oppeaasta>
</Oppevorm>
</Oppekava>
</Aine>
</Task>
</Tasklist>
XML skeemifail
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="Tasklist">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="Task">
<xs:complexType>
<xs:sequence>
<xs:element name="Aine">
<xs:complexType>
<xs:sequence>
<xs:element name="Oppekava">
<xs:complexType>
<xs:sequence>
<xs:element name="Oppevorm">
<xs:complexType>
<xs:sequence>
<xs:element name="Oppeaasta">
<xs:complexType>
<xs:sequence>
<xs:element name="Kirjeldus">
<xs:complexType>
<xs:sequence>
<xs:element name="Ülesanne" type="xs:string" />
<xs:element name="Tähtaeg" type="xs:date" />
<xs:element name="HindeSkaala" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="Id" type="xs:unsignedByte" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="Id" type="xs:unsignedByte" use="required" />
<xs:attribute name="Nimetus" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="Id" type="xs:unsignedByte" use="required" />
<xs:attribute name="Nimetus" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="Nimetus" type="xs:string" use="required" />
<xs:attribute name="Oppejoud" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="Id" type="xs:unsignedByte" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
XSLT 1
Kuvab kõik olulise info HTML tabelina
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl"
>
<xsl:output method="html" indent="yes"/>
<xsl:template match="/">
<html>
<body>
<table border="1">
<tr>
<th>Aine</th>
<th>Töö</th>
<th>Kuupäev</th>
</tr>
<xsl:for-each select="Tasklist/Task">
<tr>
<td>
<xsl:value-of select="Aine/@Nimetus"/>
</td>
<td>
<xsl:value-of select="Aine/Oppekava/Oppevorm/Oppeaasta/Kirjeldus/Ülesanne"/>
</td>
<td>
<xsl:value-of select="Aine/Oppekava/Oppevorm/Oppeaasta/Kirjeldus/Tähtaeg"/>
</td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
XSLT 2
Kuvab kõik 1. kursuse ülesanded
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl">
<xsl:template match="/">
<html>
<body>
Prindime välja Kõik 1. kursuse taskid.
<ul>
<xsl:for-each select="Tasklist/Task/Aine/Oppekava/Oppevorm/Oppeaasta">
<xsl:if test="@Id=1">
<li>
<xsl:value-of select="Kirjeldus"/>
</li>
</xsl:if>
</xsl:for-each>
</ul>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
XSLT 3
Kuvatakse esmakursuslase kõik matemaatika ülesanded
<!--PILT TULEMUSEST ASUB SIIN: http://www.upload.ee/image/3150718/EsmaArendusTahabMatat.jpg-->
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl"
>
<xsl:output method="html" indent="yes"/>
<xsl:template match="/">
<html>
<body>
Ma tahan teada, mis ma mat.analüüsis tegema pean.<br />
Ma olen esmakursuslane, arenduse tudeng, päevaõppes
<ul>
<xsl:for-each select="Tasklist/Task">
<xsl:if test="Aine/@Nimetus = 'Matemaatiline analüüs'">
<span style="font:bold">
ID <xsl:value-of select="@Id" /><br />
</span>
<li>
Aine: <xsl:value-of select="Aine/@Nimetus"/><br />
</li>
<xsl:if test="Aine/Oppekava/@Nimetus = 'ISArendus'">
<li>
Oppekava: <xsl:value-of select="Aine/Oppekava/@Nimetus"/>
</li>
<xsl:if test="Aine/Oppekava/Oppevorm/@Nimetus = 'Päevaõpe'">
<li>
Oppevorm: <xsl:value-of select="Aine/Oppekava/Oppevorm/@Nimetus"/>
</li>
<xsl:if test="Aine/Oppekava/Oppevorm/Oppeaasta/@Id = '1'">
<li>
Oppeaasta: <xsl:value-of select="Aine/Oppekava/Oppevorm/Oppeaasta/@Id"/>
</li>
<li style="font:bold">
Ülesanne: <xsl:value-of select="Aine/Oppekava/Oppevorm/Oppeaasta/Kirjeldus/Ülesanne"/>
</li>
<li style="font:bold">
Tähtaeg: <xsl:value-of select="Aine/Oppekava/Oppevorm/Oppeaasta/Kirjeldus/Tähtaeg"/>
</li>
</xsl:if>
</xsl:if>
</xsl:if>
</xsl:if>
<br />
<br />
</xsl:for-each>
</ul>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
Retsensioonid
Retsensioon meeskonnale Laenutajad
Meeskond Laenutajad tegeleb koduse filmide laenutusega, kuhu peaks saama filme lisada ja vähemaks võtta. Juurelemendina on kasutusel <moviestore> ning edasiminek on võrdlemisi loogiline: On muusikapood, kus on filmid, mis on jaotatud žanridesse ning filmid on žanri põhjal ära kategoriseeritud. XMLi elementide nimed on loogiliselt esitatud ning otsingu läbiviimiseks väga loogiline ja lihtsalt haaratav. Pole liialt palju väiksemaid ebavajalike detaile(Näiteks <Produtsendi nimi> -> <A> ). Kuigi see lisaks veelgi funktsionaalsust ei ole see vast sellise mahuga projekti puhul esmavajalik. Üks XML element on siiski, mida pigem tahaks reaalse filmilaenutuse puhul näha ning selleks on <Hinnang>, mis väljendaks filmile antud hinnangut, mis on saadud kuskilt filmikriitikute kodulehelt. Nõue, et vähemalt kolmel tasemel oleks vaja rohkem, kui vaid „ ID“ attribuuti on napilt täidetud. XSL failide kohapealt on loodud üks pikk päring, mis väljastab kõik filmid ja filmide andmed. Kuigi see on tõenäoliselt väga funktsionaalne ja vajalik päring, oleks rohkem soovinud näha erinevate päringutega mängimist, et väljastada vaid valitud filme. Näiteks kõik action filmid, mis on odavamad, kui X. Lisaks on juhendis öeldud, et tuleks teha „paar-kolm sobivat XSL faili loodud XML failis olevate andmete transformeerimiseks HTML formaati“. Üldiselt on siiski tegemist loogilise ja lihtsa ülesehitusega XML failiga, kus küll puudub originaalsust ja on piirdutud kindla peale minekuga, mistõttu ei saa ka nuriseda, sest hädavajalik on kõik olemas.