Loading: Difference between revisions

From ICO wiki
Jump to navigationJump to search
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.