Loading: Difference between revisions
No edit summary |
|||
Line 245: | Line 245: | ||
== Veebiteenus == | == Veebiteenus == | ||
*'''GetUserCount''' - Tagastab mitu kasutajat on andmebaasis. |
Revision as of 18:52, 17 May 2016
Meeskond
- Laura Teder
- Martin Saar
- Roomet Saadi
- Indrek Tamm
XML Fail
<?xml version="1.0" encoding="utf-8" ?>
<JalgpalliLiit>
<Klubid>
<Klubi tegev="true" id="1">
<Nimi><![CDATA[FcFlora]]></Nimi>
<asutamine><![CDATA[1990]]></asutamine>
<Voistkonnad>
<Voistkond vorm="roheline">
<Klass><![CDATA[Noored]]></Klass>
<Mangijad>
<Mangija nr="1">
<eesnimi><![CDATA[Tiit]]></eesnimi>
<hyydnimi><![CDATA[hunt]]></hyydnimi>
<perekonnanimi><![CDATA[Teet]]></perekonnanimi>
</Mangija>
<Mangija nr="2">
<eesnimi><![CDATA[Paul]]></eesnimi>
<perekonnanimi><![CDATA[Kaur]]></perekonnanimi>
</Mangija>
<Mangija nr="3">
<eesnimi><![CDATA[Roomet]]></eesnimi>
<hyydnimi><![CDATA[Nani]]></hyydnimi>
<perekonnanimi><![CDATA[Saadi]]></perekonnanimi>
</Mangija>
</Mangijad>
</Voistkond>
<Voistkond vorm="roheline" >
<Klass><![CDATA[Vanad]]></Klass>
<Mangijad>
<Mangija nr="1">
<eesnimi><![CDATA[Ants]]></eesnimi>
<perekonnanimi><![CDATA[Aim]]></perekonnanimi>
</Mangija>
</Mangijad>
</Voistkond>
</Voistkonnad>
</Klubi>
<Klubi tegev="true" id="2">
<Nimi><![CDATA[FcLevadia]]></Nimi>
<asutamine><![CDATA[1999]]></asutamine>
<Voistkonnad>
<Voistkond vorm="must">
<Klass><![CDATA[Mehed]]></Klass>
<Mangijad>
<Mangija nr="99">
<eesnimi><![CDATA[Tarmo]]></eesnimi>
<hyydnimi><![CDATA[Karu]]></hyydnimi>
<perekonnanimi><![CDATA[Neemelo]]></perekonnanimi>
</Mangija>
<Mangija nr="7">
<eesnimi><![CDATA[Siim]]></eesnimi>
<perekonnanimi><![CDATA[Luts]]></perekonnanimi>
</Mangija>
</Mangijad>
</Voistkond>
<Voistkond vorm="roosa">
<Klass><![CDATA[Naised]]></Klass>
<Mangijad>
<Mangija nr="77">
<eesnimi><![CDATA[Karmen]]></eesnimi>
<hyydnimi><![CDATA[Vesipea]]></hyydnimi>
<perekonnanimi><![CDATA[Saag]]></perekonnanimi>
</Mangija>
<Mangija nr="3">
<eesnimi><![CDATA[Rauno]]></eesnimi>
<hyydnimi><![CDATA[Mees]]></hyydnimi>
<perekonnanimi><![CDATA[Uss]]></perekonnanimi>
</Mangija>
</Mangijad>
</Voistkond>
</Voistkonnad>
</Klubi>
<Klubi tegev="false" id="3">
<Nimi><![CDATA[FC TVMK]]></Nimi>
<asutamine><![CDATA[1922]]></asutamine>
<Voistkonnad>
<Voistkond vorm="valge">
<Klass><![CDATA[Mehed]]></Klass>
<Mangijad>
<Mangija nr="9">
<eesnimi><![CDATA[Tauri]]></eesnimi>
<hyydnimi><![CDATA[Välk]]></hyydnimi>
<perekonnanimi><![CDATA[Neem]]></perekonnanimi>
</Mangija>
<Mangija nr="7">
<eesnimi><![CDATA[Reio]]></eesnimi>
<perekonnanimi><![CDATA[Kuusk]]></perekonnanimi>
</Mangija>
</Mangijad>
</Voistkond>
<Voistkond vorm="roosa">
<Klass><![CDATA[Noored]]></Klass>
<Mangijad>
<Mangija nr="87">
<eesnimi><![CDATA[Karmo]]></eesnimi>
<perekonnanimi><![CDATA[Tarmo]]></perekonnanimi>
</Mangija>
<Mangija nr="8">
<eesnimi><![CDATA[Rauno]]></eesnimi>
<hyydnimi><![CDATA[Üksjalg]]></hyydnimi>
<perekonnanimi><![CDATA[Saabas]]></perekonnanimi>
</Mangija>
</Mangijad>
</Voistkond>
</Voistkonnad>
</Klubi>
</Klubid>
</JalgpalliLiit>
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="JalgpalliLiit">
<xs:complexType>
<xs:sequence>
<xs:element name="Klubid">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="Klubi">
<xs:complexType>
<xs:sequence>
<xs:element name="Nimi" type="xs:string" />
<xs:element name="asutamine" type="xs:string" />
<xs:element name="Voistkonnad">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="Voistkond">
<xs:complexType>
<xs:sequence>
<xs:element name="Klass" type="xs:string" />
<xs:element name="Mangijad">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="Mangija">
<xs:complexType>
<xs:sequence>
<xs:element name="eesnimi" type="xs:string" />
<xs:element minOccurs="0" name="hyydnimi" type="xs:string" />
<xs:element name="perekonnanimi" type="xs:string" />
</xs:sequence>
<xs:attribute name="nr" type="xs:unsignedByte" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="vorm" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="tegev" type="xs:boolean" use="required" />
<xs:attribute name="id" type="xs:unsignedByte" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
XSLT annab välja listidena kõik klubid, kõik võistkonna klassid ja mängijad.
<?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>
<head>
<title> Klubid</title>
</head>
<body>
<ul>
<xsl:for-each select="/JalgpalliLiit/Klubid/Klubi">
<li>
<xsl:value-of select="Nimi"/>
</li>
<ul>
<xsl:for-each select="Voistkonnad/Voistkond">
<li>
<xsl:value-of select="Klass"/>
</li>
<ul>
<xsl:for-each select="Mangijad/Mangija">
<li>
Nimi : <xsl:value-of select="concat(eesnimi, ' ', perekonnanimi)" />;
</li>
</xsl:for-each>
</ul>
</xsl:for-each>
</ul>
</xsl:for-each>
</ul>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
Retsensioonid
Meeskond Undress Gaver[1] on väga hästi saanud hakkama XML ülesandega. Algselt on välja toodud lühike ülevaade mida peaks nende XML fail sisaldama. Tänu sellele läks XML faili lugemine ja sellest arusaamine palju kiiremini ja lihtsamalt. Samuti elemendinimed on valitud kergesti arusaadavad ja loogilised. Nende kiituseks peab veel mainima, et on jälgitud ka korrektset ja ühtlast kirjutamisstiilis. XML – fail läbis ka W3C XML validaatori vigadeta. Ülesande nõutele vastavalt on tehtud ka rohkem kui 4 loogilist dimensiooni ja kasutatud erinevaid attribuute.
Samuti on tehtud vigadeta XML faili skeemifail.
On tehtud ka üks korrektne XSLT transformatsiooni fail, mis transformeerib HTML formaati. On kasutatud mitud erinevat for-each klauslit. XSLT fail on ülesehitatud loogiliselt ja vastab korrektselt ka eespool olevale XML failile.
Kokkuvõtteks võib öelda, et ülesanne oli hästi tehtud. Kõikide failide tegemisel oli kasutatud ühtlast kirjutamisstiili ja olid ka täidetud vastavad ülesande nõuded. Ainukesed puuduseks oli ühe XSLT faili puudumine.
Veebiteenus
- GetUserCount - Tagastab mitu kasutajat on andmebaasis.