VVA

From ICO wiki
Revision as of 11:05, 18 March 2016 by Vkovalt (talk | contribs)
Jump to navigationJump to search

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

Meeskond

  • Aleksandr Babõkin
  • Vladislav Kovaltšuk
  • Andrei Tverskoi
  • Vladislav Lahtarin


Idee

XML/XSD/XSLT

XML

<?xml version="1.0" encoding="utf-8" ?>
<arvutid>
  <arvuti>
    <liik>
      <![CDATA[Sülearvuti:]]>
      <firma><![CDATA[Apple]]></firma>
      <tyyp><![CDATA[MacBook Pro]]></tyyp>
      <hind><![CDATA[2500]]></hind>
      <valuuta><![CDATA[EUR]]></valuuta>
    </liik>
    <konfiguratsioon>
      <protsessor name="Protsessor">
        <tootja><![CDATA[Intel®]]></tootja>
        <mudel><![CDATA[i7]]></mudel>
        <sagedus><![CDATA[2.5 GHz]]></sagedus>
      </protsessor>
      <videokaart name="Videokaart">
        <tootja><![CDATA[AMD]]></tootja>
        <mudel><![CDATA[Radeon R9 M370X]]></mudel>
        <malu><![CDATA[2 GB]]></malu>
      </videokaart>
      <operatiivmalu name="Operatiivmälu">
        <tootja><![CDATA[Samsung]]></tootja>
        <tyyp><![CDATA[DDR4]]></tyyp>
        <malu><![CDATA[16 GB]]></malu>
      </operatiivmalu>
      <pysimalu name="Püsimälu">
        <tootja><![CDATA[Samsung]]></tootja>
        <tyyp><![CDATA[SSD]]></tyyp>
        <malu><![CDATA[512 GB]]></malu>
      </pysimalu>
    </konfiguratsioon>
  </arvuti>
  <arvuti>
    <liik>
      <![CDATA[Lauaarvuti:]]>
      <firma><![CDATA[HP]]></firma>
      <tyyp><![CDATA[Office]]></tyyp>
      <hind><![CDATA[350]]></hind>
      <valuuta><![CDATA[EUR]]></valuuta>
    </liik>
    <konfiguratsioon>
      <protsessor name="Protsessor">
        <tootja><![CDATA[Intel®]]></tootja>
        <mudel><![CDATA[Core™ i3-4170]]></mudel>
        <sagedus><![CDATA[3.70 GHz]]></sagedus>
      </protsessor>
      <videokaart name="Videokaart">
        <tootja><![CDATA[Intel®]]></tootja>
        <mudel><![CDATA[HD Graphics 4400]]></mudel>
        <malu><![CDATA[1.8 GB]]></malu>
      </videokaart>
      <operatiivmalu name="Operatiivmälu">
        <tootja><![CDATA[Samsung]]></tootja>
        <tyyp><![CDATA[DDR3]]></tyyp>
        <malu><![CDATA[4 GB]]></malu>
      </operatiivmalu>
      <pysimalu name="Püsimälu">
        <tootja><![CDATA[Samsung]]></tootja>
        <tyyp><![CDATA[SSD]]></tyyp>
        <malu><![CDATA[120 GB]]></malu>
      </pysimalu>
    </konfiguratsioon>
  </arvuti>
  <arvuti>
    <liik>
      <![CDATA[Lauaarvuti:]]>
      <firma><![CDATA[Acer]]></firma>
      <tyyp><![CDATA[Gamer Plus]]></tyyp>
      <hind><![CDATA[1350]]></hind>
      <valuuta><![CDATA[EUR]]></valuuta>
    </liik>
    <konfiguratsioon>
      <protsessor name="Protsessor">
        <tootja><![CDATA[Intel®]]></tootja>
        <mudel><![CDATA[i5-6600K]]></mudel>
        <sagedus><![CDATA[3.90 GHz]]></sagedus>
      </protsessor>
      <videokaart name="Videokaart">
        <tootja><![CDATA[MSI]]></tootja>
        <mudel><![CDATA[Geforce GTX 960]]></mudel>
        <malu><![CDATA[4 GB]]></malu>
      </videokaart>
      <operatiivmalu name="Operatiivmälu">
        <tootja><![CDATA[Kingstone]]></tootja>
        <tyyp><![CDATA[DDR4]]></tyyp>
        <malu><![CDATA[16 GB]]></malu>
      </operatiivmalu>
      <pysimalu name="Püsimälu">
        <tootja><![CDATA[Seagate]]></tootja>
        <tyyp><![CDATA[HDD]]></tyyp>
        <malu><![CDATA[1 TB]]></malu>
      </pysimalu>
    </konfiguratsioon>
  </arvuti>
  <arvuti>
    <liik>
      <![CDATA[Lauaarvuti:]]>
      <firma><![CDATA[Dell]]></firma>
      <tyyp><![CDATA[Gamer lite]]></tyyp>
      <hind><![CDATA[1000]]></hind>
      <valuuta><![CDATA[EUR]]></valuuta>
    </liik>
    <konfiguratsioon>
      <protsessor name="Protsessor">
        <tootja><![CDATA[Intel®]]></tootja>
        <mudel><![CDATA[i3-4170]]></mudel>
        <sagedus><![CDATA[3.70 GHz]]></sagedus>
      </protsessor>
      <videokaart name="Videokaart">
        <tootja><![CDATA[Nvidia]]></tootja>
        <mudel><![CDATA[Geforce GT730]]></mudel>
        <malu><![CDATA[2 GB]]></malu>
      </videokaart>
      <operatiivmalu name="Operatiivmälu">
        <tootja><![CDATA[Samsung]]></tootja>
        <tyyp><![CDATA[DDR3]]></tyyp>
        <malu><![CDATA[4 GB]]></malu>
      </operatiivmalu>
      <pysimalu name="Püsimälu">
        <tootja><![CDATA[Seagate]]></tootja>
        <tyyp><![CDATA[HDD]]></tyyp>
        <malu><![CDATA[500 GB]]></malu>
      </pysimalu>
    </konfiguratsioon>
  </arvuti>
  <arvuti>
    <liik>
      <![CDATA[Sülearvuti:]]>
      <firma><![CDATA[MSI]]></firma>
      <tyyp><![CDATA[Gaming laptop]]></tyyp>
      <hind><![CDATA[3000]]></hind>
      <valuuta><![CDATA[EUR]]></valuuta>
    </liik>
    <konfiguratsioon>
      <protsessor name="Protsessor">
        <tootja><![CDATA[Intel®]]></tootja>
        <mudel><![CDATA[i7-6820HK]]></mudel>
        <sagedus><![CDATA[2.7 GHz]]></sagedus>
      </protsessor>
      <videokaart name="Videokaart">
        <tootja><![CDATA[Nvidia]]></tootja>
        <mudel><![CDATA[Geforce GTX970M]]></mudel>
        <malu><![CDATA[6 GB]]></malu>
      </videokaart>
      <operatiivmalu name="Operatiivmälu">
        <tootja><![CDATA[Samsung]]></tootja>
        <tyyp><![CDATA[DDR4]]></tyyp>
        <malu><![CDATA[8 GB]]></malu>
      </operatiivmalu>
      <pysimalu name="Püsimälu">
        <tootja><![CDATA[Samsung]]></tootja>
        <tyyp><![CDATA[SSD]]></tyyp>
        <malu><![CDATA[256 GB]]></malu>
      </pysimalu>
    </konfiguratsioon>
  </arvuti>
  <arvuti>
    <liik>
      <![CDATA[Sülearvuti:]]>
      <firma><![CDATA[Toshiba]]></firma>
      <tyyp><![CDATA[Work laptop]]></tyyp>
      <hind><![CDATA[600]]></hind>
      <valuuta><![CDATA[EUR]]></valuuta>
    </liik>
    <konfiguratsioon>
      <protsessor name="Protsessor">
        <tootja><![CDATA[Intel®]]></tootja>
        <mudel><![CDATA[i3-4030U]]></mudel>
        <sagedus><![CDATA[1.9 GHz]]></sagedus>
      </protsessor>
      <videokaart name="Videokaart">
        <tootja><![CDATA[Intel®]]></tootja>
        <mudel><![CDATA[HD Graphics 4400]]></mudel>
        <malu><![CDATA[1 GB]]></malu>
      </videokaart>
      <operatiivmalu name="Operatiivmälu">
        <tootja><![CDATA[Samsung]]></tootja>
        <tyyp><![CDATA[DDR3]]></tyyp>
        <malu><![CDATA[4 GB]]></malu>
      </operatiivmalu>
      <pysimalu name="Püsimälu">
        <tootja><![CDATA[Samsung]]></tootja>
        <tyyp><![CDATA[HDD]]></tyyp>
        <malu><![CDATA[256 GB]]></malu>
      </pysimalu>
    </konfiguratsioon>
  </arvuti>
</arvutid>

XSD


XSLT Kuvab kõik arvutid ja nende komponendide kirjeldust

<?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>Arvutid</title>
      </head>
      <body>
        <xsl:for-each select="arvutid/arvuti">
          <h2>
            <xsl:value-of select="firma" />
            <xsl:value-of select="liik" />
            <xsl:value-of select="tyyp"/>
            <xsl:value-of select="hind"/>
            <xsl:value-of select="valuuta"/>
          </h2>
          <xsl:for-each select="konfiguratsioon/protsessor">
            <h4>
              <xsl:value-of select="@name"/>
            </h4>
            <ul>
              <li>
                <xsl:value-of select="."/>
              </li>
            </ul>
          </xsl:for-each>
          <xsl:for-each select="konfiguratsioon/videokaart">
            <h4>
              <xsl:value-of select="@name"/>
            </h4>
            <ul>
              <li>
                <xsl:value-of select="."/>
              </li>
            </ul>
          </xsl:for-each>
          <xsl:for-each select="konfiguratsioon/operatiivmalu">
            <h4>
              <xsl:value-of select="@name"/>
            </h4>
            <ul>
              <li>
                <xsl:value-of select="."/>
              </li>
            </ul>
          </xsl:for-each>
          <xsl:for-each select="konfiguratsioon/pysimalu">
            <h4>
              <xsl:value-of select="@name"/>
            </h4>
            <ul>
              <li>
                <xsl:value-of select="."/>
              </li>
            </ul>
          </xsl:for-each>
        </xsl:for-each>
      </body>
    </html>
  </xsl:template>
</xsl:stylesheet>

XSLT Kuvab arvutite nimetust, mudelit ja hinda. Hind on sorteeritud kasvamise järjekorras

<?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>Arvutid</title>
      </head>
      <body>
        <xsl:for-each select="arvutid/arvuti">
          <h2>
            <xsl:value-of select="firma" />
            <xsl:value-of select="liik" />
            <xsl:value-of select="tyyp"/>
            <xsl:value-of select="hind"/>
            <xsl:value-of select="valuuta"/>
          </h2>
          <xsl:for-each select="konfiguratsioon/protsessor">
            <h4>
              <xsl:value-of select="@name"/>
            </h4>
            <ul>
              <li>
                <xsl:value-of select="."/>
              </li>
            </ul>
          </xsl:for-each>
          <xsl:for-each select="konfiguratsioon/videokaart">
            <h4>
              <xsl:value-of select="@name"/>
            </h4>
            <ul>
              <li>
                <xsl:value-of select="."/>
              </li>
            </ul>
          </xsl:for-each>
          <xsl:for-each select="konfiguratsioon/operatiivmalu">
            <h4>
              <xsl:value-of select="@name"/>
            </h4>
            <ul>
              <li>
                <xsl:value-of select="."/>
              </li>
            </ul>
          </xsl:for-each>
          <xsl:for-each select="konfiguratsioon/pysimalu">
            <h4>
              <xsl:value-of select="@name"/>
            </h4>
            <ul>
              <li>
                <xsl:value-of select="."/>
              </li>
            </ul>
          </xsl:for-each>
        </xsl:for-each>
      </body>
    </html>
  </xsl:template>
</xsl:stylesheet>

Arendusprotsee

  1. 16.03.16 - XML, XSD ja XSLT tegemine