TÜC2

From ICO wiki
Jump to navigationJump to search

Kodutöö aines "Võrgurakendused II: hajussüsteemide ehitamine"

Lehekülg loodud: 05.03.2014

Meeskonna nimi: TÜC

Liikmed: Ülle Tiitson, Tiit Teder, Anna Carina Vainola

Projektijuht: Anna Carina Vainola


Kodutöö XML osa 8.märts

Esimese ülesande täitmiseks võtsime põhjaks jalgrataste informatsiooni. Jalgratastel on olemas kategooriad, mudeli nimi, pilt, tootja andmed, suurus, värvid, käikude informatsioon, kaal, piduritüüp, seisukord ning kirjeldus.

XML fail andmetega

<?xml version="1.0" encoding="utf-8" ?>
<Jalgrattad>
  <Kategooriad>
    <Kategooria>Linnaratas</Kategooria>
    <Kategooria>Meesteratas</Kategooria>
    <Kategooria>Naisteratas</Kategooria>
    <Kategooria>Maastikuratas</Kategooria>
    <Kategooria>Retro</Kategooria>
    <Kategooria>Elektriratas</Kategooria>
    <Kategooria>Lasteratas</Kategooria>
    <Kategooria>BMX</Kategooria>
    <Kategooria>Kokkupandav ratas</Kategooria>
    <Kategooria>Hübriid</Kategooria>
  </Kategooriad>
  <Jalgratas id="0">
    <Kategooriad>
      <Kategooria>Meesteratas</Kategooria>
      <Kategooria>Linnaratas</Kategooria>
    </Kategooriad>
    <PildiUrl>http://www.rattamees.ee/upload/eshop/images/1501/campus-gent.jpg</PildiUrl>
    <Mudel>Expert Campus</Mudel>
    <Tootja nimi="Campus">
      <Veebileht>www.campus.eu</Veebileht>
    </Tootja>
    <Suurus yhik="tolli">28</Suurus>
    <Varvused>
      <Varvus>Must</Varvus>
      <Varvus>Valge</Varvus>
      <Varvus>Punane</Varvus>
    </Varvused>
    <Kaigud arv="21"><![CDATA[Shimano Tourney STI]]></Kaigud>
    <Kaal yhik="kg">15.9</Kaal>
    <Kirjeldus><![CDATA[Helkurriba rehvidel, roostevabad poldid ja mutrid.]]></Kirjeldus>
    <Pidurityyp>V-pidurid</Pidurityyp>
    <Seisukord>Uus</Seisukord>
    <Hind yhik="euro">329.00</Hind>
  </Jalgratas>
  <Jalgratas id="1">
    <Kategooriad>
      <Kategooria>Naisteratas</Kategooria>
      <Kategooria>Maastikuratas</Kategooria>
    </Kategooriad>
    <PildiUrl>http://www.rattakeskus.ee/components/com_virtuemart/shop_image/product/FANCY444_43_4f942cfe0a699.jpg</PildiUrl>
    <Mudel>FANCY444 43</Mudel>
    <Tootja nimi="Panther">
      <Veebileht>www.pantherbike.com</Veebileht>
    </Tootja>
    <Suurus yhik="tolli">26</Suurus>
    <Varvused>
      <Varvus>Staratosilver</Varvus>
      <Varvus>Valge</Varvus>
    </Varvused>
    <Kaigud arv="24"><![CDATA[Shimano Alivio]]></Kaigud>
    <Kaal yhik="kg">14</Kaal>
    <Kirjeldus><![CDATA[Alumiinium raamiga naiste maastikuratas.]]></Kirjeldus>
    <Pidurityyp>Ketaspidurid</Pidurityyp>
    <Seisukord>Uus</Seisukord>
    <Hind yhik="euro">607.00</Hind>
  </Jalgratas>
  <Jalgratas id="2">
    <Kategooriad>
      <Kategooria>Meesteratas</Kategooria>
      <Kategooria>Linnaratas</Kategooria>
    </Kategooriad>
    <PildiUrl>http://www.rattakeskus.ee/components/com_virtuemart/shop_image/product/P332_CT_9__513c9808e4b14.jpg</PildiUrl>
    <Mudel>P332 CT-9</Mudel>
    <Tootja nimi="Panther">
      <Veebileht>www.pantherbike.com</Veebileht>
    </Tootja>
    <Suurus yhik="tolli">26</Suurus>
    <Varvused>
      <Varvus>Must</Varvus>
    </Varvused>
    <Kaigud arv="7"><![CDATA[Shimano Nexus]]></Kaigud>
    <Kaal yhik="kg">15</Kaal>
    <Kirjeldus><![CDATA[Ketikaitse, tagatuli.]]></Kirjeldus>
    <Pidurityyp>V-pidurid</Pidurityyp>
    <Seisukord>Uus</Seisukord>
    <Hind yhik="euro">579.00</Hind>
  </Jalgratas>
  <Jalgratas id="3">
    <Kategooriad>
      <Kategooria>Naisteratas</Kategooria>
      <Kategooria>Retroratas</Kategooria>
      <Kategooria>Linnaratas</Kategooria>
    </Kategooriad>
    <PildiUrl>http://firewhenreadypottery.com/wp-content/uploads/2010/10/barn-rusty-bike-2.jpg</PildiUrl>
    <Mudel>Retro</Mudel>
    <Tootja nimi="Tuvastamatu">
      <Veebileht></Veebileht>
    </Tootja>
    <Suurus yhik="tolli">25</Suurus>
    <Varvused>
      <Varvus>Rooste</Varvus>
    </Varvused>
    <Kaigud arv="1"><![CDATA[edaspidi]]></Kaigud>
    <Kaal yhik="kg">10</Kaal>
    <Kirjeldus><![CDATA[Põõsa lisakaal on 5 kg. Väikesed iluvead, aga pole midagi mida ei annaks parandada. Läbisõit originaalne. Otse Saksamaalt - Eelmine kasutaja sakslanna, kasutas pühapäeviti kirikusse sõitmiseks. Sadul pole hinna sees. Unikaalne.]]></Kirjeldus>
    <Pidurityyp>Kannapidur</Pidurityyp>
    <Seisukord>Kasutatud</Seisukord>
    <Hind yhik="euro">1000</Hind>
  </Jalgratas>
</Jalgrattad>

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="Jalgrattad">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="Kategooriad">
          <xs:complexType>
            <xs:sequence>
              <xs:element maxOccurs="unbounded" name="Kategooria" type="xs:string" />
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element maxOccurs="unbounded" name="Jalgratas">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="Kategooriad">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element maxOccurs="unbounded" name="Kategooria" type="xs:string" />
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element name="PildiUrl" type="xs:string" />
              <xs:element name="Mudel" type="xs:string" />
              <xs:element name="Tootja">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="Veebileht" type="xs:string" />
                  </xs:sequence>
                  <xs:attribute name="nimi" type="xs:string" />
                </xs:complexType>
              </xs:element>
              <xs:element name="Suurus">
                <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:element name="Varvused">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element maxOccurs="unbounded" name="Varvus" type="xs:string" />
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element name="Kaigud">
                <xs:complexType>
                  <xs:simpleContent>
                    <xs:extension base="xs:string" >
                      <xs:attribute name="arv" type="xs:unsignedByte" use="required"/>
                    </xs:extension>
                  </xs:simpleContent>
                </xs:complexType>
              </xs:element>
              <xs:element name="Kaal">
                <xs:complexType>
                  <xs:simpleContent>
                    <xs:extension base="xs:float">
                      <xs:attribute name="yhik" type="xs:string" use="required" />
                    </xs:extension>
                  </xs:simpleContent>
                </xs:complexType>
              </xs:element>
              <xs:element name="Kirjeldus" type="xs:string" />
              <xs:element name="Pidurityyp" type="xs:string" />
              <xs:element name="Seisukord" type="xs:string" />
              <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:sequence>
            <xs:attribute name="id" type="xs:unsignedInt" use="required" />
          </xs:complexType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

XSL 1. fail

<?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>Jalgrattad</title>
        </head>
        <body>
          <h1>Jalgrattad:</h1>
          <xsl:for-each select="Jalgrattad/Jalgratas">
            <h2><xsl:value-of select="Mudel"/></h2>
              <div width="300">
                <xsl:value-of select="Kirjeldus"/>
              </div>
            
              <img width="200" height="150">
                <xsl:attribute name="src">
                  <xsl:value-of select="PildiUrl"/>
                </xsl:attribute>
              </img>
            <hr></hr>
            
            
          </xsl:for-each>
        
        </body>
      </html>
    </xsl:template>
</xsl:stylesheet>

XSL 2. fail

<?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>Meie jalgrattad</title>
      </head>
      <body>
        <h1>Jalgrattad müügiks:</h1>
        <div id="yles"></div>
        <xsl:for-each select="/Jalgrattad/Kategooriad/Kategooria">
          <xsl:variable name="Kat" select="."/>
          <h2>
            <xsl:value-of select="$Kat"/>
          </h2>
          <ul>
            <xsl:for-each select="/Jalgrattad/Jalgratas">
              <xsl:if test="Kategooriad/Kategooria=$Kat">
                <li>
                  <a>
                    <xsl:attribute name="href">
                      <xsl:text>#</xsl:text>
                      <xsl:value-of select="@id"/>
                    </xsl:attribute>
                    <xsl:value-of select="Mudel"/>
                  </a>
                </li>
              </xsl:if>
            </xsl:for-each>
          </ul>
        </xsl:for-each>
        <hr></hr>
        <p></p>
        <h2>Ratta mudelid:</h2>
        <xsl:for-each select="Jalgrattad/Jalgratas">
          <div>
            <xsl:attribute name="id">
              <xsl:value-of select="@id"/>
            </xsl:attribute>
            <h3>
              <xsl:value-of select="Mudel"/>
            </h3>
            <a href="#yles">Tagasi üles</a>
            <img width="200" height="150">
              <xsl:attribute name="src">
                <xsl:value-of select="PildiUrl"/>
              </xsl:attribute>
            </img>
            <table>
              <tr>
                <td>
                  <b>Tootja nimi</b>
                </td>
                <td>
                  <xsl:value-of select="Tootja/@nimi"/>
                </td>
              </tr>
              <tr>
                <td>
                  <b>Suurus</b>
                </td>
                <td>
                  <xsl:value-of select="Suurus"/>
                  <xsl:text> </xsl:text>
                  <xsl:value-of select="Suurus/@yhik"/>
                </td>
              </tr>
              <tr>
                <td>
                  <b>Värvus</b>
                </td>
                <td>
                  <ul>
                    <xsl:for-each select="Varvused/Varvus">
                      <li>
                        <xsl:value-of select="."/>
                      </li>
                    </xsl:for-each>
                  </ul>

                </td>
              </tr>
              <tr>
                <td>
                  <b>Käigud</b>
                </td>
                <td>
                  <xsl:value-of select="Kaigud/@arv"/>
                  <xsl:text> (</xsl:text>
                  <xsl:value-of select="Kaigud"/>
                  <xsl:text>)</xsl:text>
                </td>
              </tr>
              <tr>
                <td>
                  <b>Kaal</b>
                </td>
                <td>
                  <xsl:value-of select="Kaal"/>
                  <xsl:text> </xsl:text>
                  <xsl:value-of select="Kaal/@yhik"/>
                </td>
              </tr>
              <tr>
                <td>
                  <b>Piduritüüp</b>
                </td>
                <td>
                  <xsl:value-of select="Pidurityyp"/>
                </td>
              </tr>
              <tr>
                <td>
                  <b>Seisukord</b>
                </td>
                <td>
                  <xsl:value-of select="Seisukord"/>
                </td>
              </tr>
              <tr>
                <td>
                  <b>Hind</b>
                </td>
                <td>
                  <xsl:value-of select="Hind"/>
                  <xsl:text> </xsl:text>
                  <xsl:value-of select="Hind/@yhik"/>
                </td>
              </tr>
              <tr>
                <td>
                  <b>Lisainfo</b>
                </td>
                <td>
                  <xsl:value-of select="Kirjeldus"/>
                </td>
              </tr>
            </table>
          </div>
        </xsl:for-each>
      </body>
    </html>
  </xsl:template>
</xsl:stylesheet>

Veebiteenus

Klientrakendus

Logi

  • 05.03.2014 - Wiki lehe loomine
  • 05.03.2014 - XML fail, XML skeemifail, 1. XSL fail, pool 2. XSL failist