LLL: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Jtominga (talk | contribs)
Jopuua (talk | contribs)
No edit summary
Line 8: Line 8:
==Idee==
==Idee==


Tulekul
Terviseleht


Ülesandeks on see, et leida terviselehele tehniline lahendus, mis oleks kaasaegne ning pilkupüüdev. Realiseeritud peaks olema:
    Uute arktiklite postitamine
        Võimalus artikleid lehtedeks jagada
        Võimalus artikleid kategooriateks jagada
        Võimalus artikleid "sildistada"
    Arhiiv
    Otsing
    Küsitlus
Lisavõimalused:
    võimalda 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
===Analüüs===
==XML==
==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.  
Ü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.  

Revision as of 15:07, 5 March 2012

Meeskond

  • Joonas Püüa
  • Janno Tomingas
  • Janek Kople
  • Roland Krindal

Idee

Terviseleht

Ülesandeks on see, et leida terviselehele tehniline lahendus, mis oleks kaasaegne ning pilkupüüdev. Realiseeritud peaks olema:

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

Lisavõimalused:

   võimalda 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 

Analüüs

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 on enamat, kui lihtsalt ID.

XML (Janno)

<?xml version="1.0" encoding="utf-8" ?>
<osakonnad>
  <osakond id="1" nimi="Arendus">
    <isikud>
      <isik id="01" ametinimetus="arendaja">
        <nimi eesnimi="Aadu" perenimi="Aas"/>
        <kontaktid>
          <telefon>1213451</telefon>
          <e-mail>aadu.aas@firma.ee</e-mail>
        </kontaktid>
      </isik>
      <isik id="02" ametinimetus="arendaja">
        <nimi eesnimi="Belle" perenimi="Bastion"/>
        <kontaktid>
          <telefon>1213452</telefon>
          <e-mail>b.b@firma.ee</e-mail>
        </kontaktid>
      </isik>
      <isik id="03" ametinimetus="arendaja">
        <nimi eesnimi="Calvin" perenimi="Calvin"/>
        <kontaktid>
          <telefon>1313451</telefon>
          <e-mail>calvin.calvin@firma.ee</e-mail>
        </kontaktid>
      </isik>
      <isik id="07" ametinimetus="arendaja">
        <nimi eesnimi="Georg" perenimi="Gregorius"/>
        <kontaktid>
          <telefon>1213471</telefon>
          <e-mail>georg.gregorius@firma.ee</e-mail>
        </kontaktid>
      </isik>
      <isik id="08" ametinimetus="koristaja">
        <nimi eesnimi="Heldur" perenimi="Help"/>
        <kontaktid>
          <telefon>1213410</telefon>
          <e-mail>heldur.help@firma.ee</e-mail>
        </kontaktid>
      </isik>
    </isikud>
  </osakond>
  <osakond id="2" nimi="testimine">
    <isikud>
      <isik id="04" ametinimetus="testija">
        <nimi eesnimi="Doris" perenimi="Diivan"/>
        <kontaktid>
          <telefon>2213451</telefon>
          <e-mail>doris.diivan@firma.ee</e-mail>
        </kontaktid>
      </isik>
      <isik id="09" ametinimetus="testija">
        <nimi eesnimi="Illimar" perenimi="Ida"/>
        <kontaktid>
          <telefon>2223451</telefon>
          <e-mail>illimar.ida@firma.ee</e-mail>
        </kontaktid>
      </isik>
      <isik id="12" ametinimetus="testija">
        <nimi eesnimi="Liina" perenimi="Lillakas"/>
        <kontaktid>
          <telefon>2210451</telefon>
          <e-mail>liina.lillakas@firma.ee</e-mail>
        </kontaktid>
      </isik>
      <isik id="13" ametinimetus="testija">
        <nimi eesnimi="Mari" perenimi="Metslane"/>
        <kontaktid>
          <telefon>2213491</telefon>
          <e-mail>metsamari@firma.ee</e-mail>
        </kontaktid>
      </isik>
    </isikud>
  </osakond>
  <osakond id="3" nimi="turundus">
    <isikud>
      <isik id="05" ametinimetus="turundusspetsialist">
        <nimi eesnimi="Eduard" perenimi="Edev"/>
        <kontaktid>
          <telefon>3213451</telefon>
          <e-mail>eduard.edev@firma.ee</e-mail>
        </kontaktid>
      </isik>
      <isik id="10" ametinimetus="alam-turundusjuht">
        <nimi eesnimi="Jaanus" perenimi="Jalakas"/>
        <kontaktid>
          <telefon>3243451</telefon>
          <e-mail>jaanus.jalakas@firma.ee</e-mail>
        </kontaktid>
      </isik>
      <isik id="11" ametinimetus="kokk">
        <nimi eesnimi="Kallis" perenimi="Kaalikas"/>
        <kontaktid>
          <telefon>3213459</telefon>
          <e-mail>kkaalikas@firma.ee</e-mail>
        </kontaktid>
      </isik>
    </isikud>
  </osakond>
  <osakond id="4" nimi="HR">
    <isikud>
      <isik id="06" ametinimetus="personalijuht">
        <nimi eesnimi="Francis" perenimi="Felicita"/>
        <kontaktid>
          <telefon>4213451</telefon>
          <e-mail>f.felicita@firma.ee</e-mail>
        </kontaktid>
      </isik>
    </isikud>
  </osakond>
</osakonnad>

XML schema (Joonas)

<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="osakonnad">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="unbounded" name="osakond">
          <xs:complexType>
            <xs:sequence>
              <xs:element minOccurs="0" maxOccurs="unbounded" name="isik">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="nimi">
                      <xs:complexType>
                        <xs:attribute name="eesnimi" type="xs:string" use="required" />
                        <xs:attribute name="perenimi" type="xs:string" use="required" />
                      </xs:complexType>
                    </xs:element>
                    <xs:element name="kontaktid">
                      <xs:complexType>
                        <xs:sequence>
                          <xs:element name="telefon" type="xs:string" />
                          <xs:element name="e-mail" type="xs:string" />
                        </xs:sequence>
                      </xs:complexType>
                    </xs:element>
                    <xs:element minOccurs="0" name="isik">
                      <xs:complexType>
                        <xs:sequence>
                          <xs:element name="nimi">
                            <xs:complexType>
                              <xs:attribute name="eesnimi" type="xs:string" use="required" />
                              <xs:attribute name="perenimi" type="xs:string" use="required" />
                            </xs:complexType>
                          </xs:element>
                          <xs:element name="kontaktid">
                            <xs:complexType>
                              <xs:sequence>
                                <xs:element name="telefon" type="xs:string" />
                                <xs:element name="e-mail" type="xs:string" />
                              </xs:sequence>
                            </xs:complexType>
                          </xs:element>
                        </xs:sequence>
                        <xs:attribute name="id" type="xs:unsignedByte" use="required" />
                        <xs:attribute name="ametinimetus" type="xs:string" use="required" />
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                  <xs:attribute name="id" type="xs:unsignedByte" use="required" />
                  <xs:attribute name="ametinimetus" type="xs:string" use="required" />
                </xs:complexType>
              </xs:element>
              <xs:element minOccurs="0" name="isikud">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element maxOccurs="unbounded" name="isik">
                      <xs:complexType>
                        <xs:sequence>
                          <xs:element name="nimi">
                            <xs:complexType>
                              <xs:attribute name="eesnimi" type="xs:string" use="required" />
                              <xs:attribute name="perenimi" type="xs:string" use="required" />
                            </xs:complexType>
                          </xs:element>
                          <xs:element name="kontaktid">
                            <xs:complexType>
                              <xs:sequence>
                                <xs:element name="telefon" type="xs:string" />
                                <xs:element name="e-mail" type="xs:string" />
                              </xs:sequence>
                            </xs:complexType>
                          </xs:element>
                        </xs:sequence>
                        <xs:attribute name="id" type="xs:unsignedByte" use="required" />
                        <xs:attribute name="ametinimetus" type="xs:string" use="required" />
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
            </xs:sequence>
            <xs:attribute name="id" type="xs:unsignedByte" use="required" />
            <xs:attribute name="nimi" type="xs:string" use="required" />
          </xs:complexType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

Paar kolm XSL

Esimene (Roland)

<?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>
        <h2>Osakonnad</h2>
        <xsl:for-each select="osakonnad/osakond">
          <table style="border: 1px solid black; width: 500px; margin-bottom: 5px;">
            <tr bgcolor="#9acd32">
              <th>ID</th>
              <th>Osakond</th>
            </tr>
            <tr>
              <td>
                <xsl:value-of select="@id"/>
              </td>
              <td>
                <xsl:value-of select="@nimi"/>
               </td>
              </tr>
          </table>
          <table style="border: 1px solid black; width: 500px; margin-bottom: 30px;" bgcolor="#F0F0F0">
            <tr bgcolor="#FF9933">
              <th>ID</th>
              <th>Ametinimetus</th>
              <th>Eesnimi</th>
              <th>Perenimi</th>
              <th>Telefon</th>
              <th>E-mail</th>
            </tr>
            <xsl:for-each select="isikud/isik">
              <tr>
                <td>
                  <xsl:value-of select="@id"/>
                </td>
                <td>
                  <xsl:value-of select="@ametinimetus"/>
                </td>
                <td>
                  <xsl:value-of select="nimi/@eesnimi"/>
                </td>
                <td>
                  <xsl:value-of select="nimi/@perenimi"/>
                </td>
                <td>
                  <xsl:value-of select="kontaktid/telefon"/>
                </td>
                <td>
                  <xsl:value-of select="kontaktid/e-mail"/>
                </td>
              </tr>
            </xsl:for-each>
          </table>
        </xsl:for-each>
      </body>
    </html>
  </xsl:template>
</xsl:stylesheet>


Teine (Janno)

<?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>
      <head>
        Töötajate nimekiri
      </head>
      <body>
        <h2>Töötajate nimekiri</h2>
        <table style="border: 1px solid black; width: 500px; margin-bottom: 30px;" bgcolor="#F0F0F0">
          <tr bgcolor="#FF9933">
            <th>ID</th>
            <th>Ametinimetus</th>
            <th>Eesnimi</th>
            <th>Perenimi</th>
            <th>Telefon</th>
            <th>E-mail</th>
          </tr>
          <xsl:for-each select="osakonnad/osakond/isikud/isik">
            <xsl:sort select="@id"/>
            <tr>
              <td>
                <xsl:value-of select="@id"/>
              </td>
              <td>
                <xsl:value-of select="@ametinimetus"/>
              </td>
              <td>
                <xsl:value-of select="nimi/@eesnimi"/>
              </td>
              <td>
                <xsl:value-of select="nimi/@perenimi"/>
              </td>
              <td>
                <xsl:value-of select="kontaktid/telefon"/>
              </td>
              <td>
                <xsl:value-of select="kontaktid/e-mail"/>
              </td>
            </tr>
          </xsl:for-each>
        </table>
      </body>
    </html>
  </xsl:template>
</xsl:stylesheet>

Kolmas (Janek)

<?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>
        <h2>Töötajate kontaktide nimekiri</h2>
        <table style="border: 1px solid black; width: 500px; margin-bottom: 30px;" bgcolor="#FFFFFF">
          <tr bgcolor="#ccFFEE">
            <th>Perenimi</th>
            <th>Eesnimi</th>
            <th>Telefon</th>
            <th>E-mail</th>
            <th>Osakond</th>
            <th>Ametinimetus</th>
          </tr>
          <xsl:for-each select="osakonnad/osakond">
            <xsl:variable name="OsakondNimetus" select="@nimi"/>
            <xsl:for-each select="isikud/isik">
              <xsl:sort select="nimi/@perenimi" order="ascending"/>
              <tr>
                <td>
                  <xsl:value-of select="nimi/@perenimi"/>
                </td>
                <td>
                  <xsl:value-of select="nimi/@eesnimi"/>
                </td>
                <td>
                  <xsl:value-of select="kontaktid/telefon"/>
                </td>
                <td>
                  <xsl:value-of select="kontaktid/e-mail"/>
                </td>
                <td>                
                  <xsl:value-of select="$OsakondNimetus"/>
                </td>
                <td>
                  <xsl:value-of select="@ametinimetus"/>
                </td>
              </tr>
            </xsl:for-each>
          </xsl:for-each>
        </table>
      </body>
    </html>
  </xsl:template>
</xsl:stylesheet>