-.-

From ICO wiki
Revision as of 09:20, 15 March 2012 by Emiilber (talk | contribs)
Jump to navigationJump to search

Meeskond

  • Erki Miilberg - projektijuht (ASP.NET & Võrgurakendused)
  • Kalev Vallsalu (ASP.NET & Võrgurakendused)
  • Oliver Naaris (Võrgurakendused)
  • Margo Kuustik (Võrgurakendused)

XML

Ülesande täitmiseks tuleb luua XML fail andmete edastamiseks, selle XML faili skeemifail ning paar kolm sobivat XSL faili loodud XML failis olevate andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. XML-il peab olema vähemalt 4 loogilist dimensiooni.

Lisaks tuleb kasutada 3-el dimensioonil attribuute, mis one enamat, kui lihtsalt ID.

XML

<?xml version="1.0" encoding="utf-8"?>
  <tooted>
  <alkoholid tootjariik="Eesti">
    <alkohol tyyp="Viin">
      <jook nimetus="Saaremaa Vodka">
        <hind yhik="€">11.10</hind>
        <kangus yhik="%">80</kangus>
      </jook>
      <jook nimetus="Viru Valge">
        <hind yhik="€">8.99</hind>
        <kangus yhik="%">40</kangus>
      </jook>
    </alkohol>
    <alkohol tyyp="Õlu">
      <jook nimetus="Saku Kuld">
        <kangus yhik="%">5.1</kangus>
        <hind yhik="€">1.09</hind>
      </jook>
    </alkohol>
    <alkohol tyyp="Õlu">
      <jook nimetus="Saku Pilsner">
        <kangus yhik="%">4.6</kangus>
        <hind yhik="€">0.77</hind>
      </jook>
    </alkohol>
  </alkoholid>
  <alkoholid tootjariik="Iirimaa">
    <alkohol tyyp="Viski">
      <jook nimetus="Grant's">
        <kangus yhik="%">40</kangus>
        <hind yhik="€">58.25</hind>
      </jook>
    </alkohol>
  </alkoholid>
  <alkoholid tootjariik="Taani">
    <alkohol tyyp="Õlu">
      <jook nimetus="Carlsberg">
        <kangus yhik="%">5</kangus>
        <hind yhik="€">1</hind>
      </jook>
    </alkohol>
    <alkohol tyyp="Õlu">
      <jook nimetus="Tuborg">
        <kangus yhik="%">4.7</kangus>
        <hind yhik="€">0.89</hind>
      </jook>
    </alkohol>
  </alkoholid>
 </tooted>

XML schema (XSD)

<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="tooted">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="unbounded" name="alkoholid">
          <xs:complexType>
            <xs:sequence>
              <xs:element maxOccurs="unbounded" name="alkohol">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element maxOccurs="unbounded" name="jook">
                      <xs:complexType>
                        <xs:sequence>
                          <xs:choice maxOccurs="unbounded">
                            <xs:element name="hind">
                              <xs:complexType>
                                <xs:simpleContent>
                                  <xs:extension base="xs:decimal">
                                    <xs:attribute name="yhik" type="xs:string" use="required" />
                                  </xs:extension>
                                </xs:simpleContent>
                              </xs:complexType>
                            </xs:element>
                            <xs:element name="kangus">
                              <xs:complexType>
                                <xs:simpleContent>
                                  <xs:extension base="xs:unsignedByte">
                                    <xs:attribute name="yhik" type="xs:string" use="required" />
                                  </xs:extension>
                                </xs:simpleContent>
                              </xs:complexType>
                            </xs:element>
                          </xs:choice>
                        </xs:sequence>
                        <xs:attribute name="nimetus" type="xs:string" use="required" />
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                  <xs:attribute name="tyyp" type="xs:string" use="required" />
                </xs:complexType>
              </xs:element>
            </xs:sequence>
            <xs:attribute name="tootjariik" type="xs:string" use="required" />
          </xs:complexType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

XSLT

<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" encoding="utf-8"/>
<xsl:template match="/">
  <html>
  <body>
    <table>
       <h1>Alkoholi tabel</h1>
      <tr>
	<th>tüüp</th>
	<th>nimetus</th>
        <th>kangus</th>
        <th>hind</th>
      </tr>
      <xsl:for-each select="tooted/alkoholid/alkohol">
	  <xsl:sort select="jook/kangus" data-type="number" order="descending"/>
      <tr>
	<td><xsl:value-of select="@tyyp"/></td>
	<td><xsl:value-of select="jook/@nimetus"/></td>
        <td><xsl:value-of select="jook/kangus"/><xsl:value-of select="jook/kangus/@yhik"/></td>
        <td><xsl:value-of select="jook/hind"/><xsl:value-of select="jook/hind/@yhik"/></td>
      </tr>
      </xsl:for-each>
    </table>
  </body>
  </html>
</xsl:template>
</xsl:stylesheet>

XSLT Output:

Alkoholi tabel

tüüp   nimetus        kangus  hind
Viin   Saaremaa Vodka 80%     11.10€
Viski  Grant's        40%     58.25€
Õlu    Saku Kuld      5.1%    1.09€
Õlu    Carlsberg      5%      1€
Õlu    Tuborg         4.7%    0.89€
Õlu    Saku Pilsner   4.6%    0.77€

-- teeb tabeli, milles sorteerib kanguse järgi

XSLT2

<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" encoding="utf-8"/>
<xsl:template match="/">
  <html>
  <body>
    <table>
       <h1>Alkoholi tabel</h1>
      <tr>
        <th>nimetus</th>
        <th>hind</th>
      </tr>
      <xsl:for-each select="tooted/alkoholid/alkohol">
       <xsl:sort select="jook/hind" data-type="number" order="ascending"/>
   <tr>
      <td><xsl:value-of select="jook/@nimetus"/></td>
      <xsl:choose>
      <xsl:when test="jook/hind > 10">
         <td bgcolor="#58ACFA">
         <xsl:value-of select="jook/hind"/>
         </td>
      </xsl:when>
      <xsl:otherwise>
         <td><xsl:value-of select="jook/hind"/></td>
      </xsl:otherwise>
      </xsl:choose>
   </tr>
      </xsl:for-each>
    </table>
  </body>
  </html>
</xsl:template>
</xsl:stylesheet>

teeb tabeli, kus on alkoholi nimetus ja hind. Järjestus on kasvav hinna järgi ja teeb hinnalahtrid, mille väärtus on suurem kui 10 siniseks

Veebiteenus

Siia tuleb kunagi veebiteenuse kirjeldus :)

Klientrakendus

Idee

Ülesandeks on see, et leida terviselehele tehniline lahendus, mis oleks kaasaegne ning pilkupüüdev

Analüüs

Projekt saab teostatud kasutades ASP.NET veebitehnoloogiat. Eesmärk on saada praktiline kogemus veebiarendusest ASP.NET tehnoloogia abil ning süvendada meeskonnatööoskust. Projekt esitatakse kahes aines: "Võrgurakendused II: hajussüsteemide ehitamine" ja "Veebirakenduste loomine ASP.NET abil".

Pole veel päris otsustanud, kas terviseleht hakkab kasutama artiklite lugemiseks ja kirjutamiseks XML-i või andmebaasi, aga ilmselt XML-i, sest projektijuht on kõik lehed siiani baasi otsa ehitanud ja tahab vaheldust :). Disain tuleb loodetavasti silmale meeldiv ja kaasaegne. Reklaamindus ei tule silmale nii väga meeldiv (kaasaegne variant siiski ju), kuid tuleb selline uhke option, millega saab reklaamid lehel keelata ja see salvestatakse küpsistesse. Küsitlusele vastamine salvestatakse samuti küpsistesse. Mobiiliga vaatamiseks tuleb lehele eraldi kujundus (suunatakse mobiilsele variandile edasi).

Must have

  • Uute arktiklite postitamine
  • Võimalus artikleid lehtedeks jagada
  • Võimalus artikleid kategooriateks jagada
  • Võimalus artikleid "sildistada"
  • Arhiiv
  • Otsing
  • Küsitlus

Nice to have

  • Võimalus Terviselehte mugavalt lugeda ka mobiilsete seadmetega, sh uue iPadi ja "vana" iPhonega
  • Sündmuste kalender
  • Piiratud võimalused partneritele sündmuste kalendrisse sündmuste lisamiseks
  • Lisada võimalused kasutamaks videolõike, telereklaame jne
  • Luua (ID kaardiga) kommenteerimisvõimalus
  • Tekitada väike veebipood
  • Üle vaadata kogu reklaamide paigutuse, suuruste, võimaluste osa
  • Luua piiratud ligipääsuga tasuline ala


Log

15. märts

Valmis ASP.NET aines rakenduse analüüs

3. märts

Valmis Võrgurakenduste esimene töö: XML, XSD ja XSLT

27. veebruar

Meeskond on koos ja nimi valitud