JaRe: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Rott (talk | contribs)
Rott (talk | contribs)
 
(12 intermediate revisions by the same user not shown)
Line 1: Line 1:
= Projekt =
= VR II =


==Meeskond==
==Meeskond==


* Jaan Kängsepp
* Jaan Kängsepp
* Rene Ott
* Rene Ott (Juht)
* Kui keegi otsib meeskonda, siis võib sellest märku anda rott@itcolleg.ee.
* Laura Närska


== XML Andmefailid ==
== Logi ==
* 03.03.2013 - Wiki lehe loomine
* 14.03.2013 - Liitus Laura Närska
* 23.03.2013 - Xml, Xsd, Xslt
* 23.03.2013 - TFS: https://jare.visualstudio.com/
* 31.03.2013 - Retsensioonid XML-i kohta


=== XML ===
= Veebiteenus =
 
= XML Andmefailid =
 
== XML ==


Tegemist on raamatukoguga, kus on erinevad osakonnad. Osakonnad asuvad erinevatel korrustel ning neil on nimed. Igas osakonnas on riiulid. Igal riiulil asuvad kindlat tüüpi raamatud.
Tegemist on raamatukoguga, kus on erinevad osakonnad. Osakonnad asuvad erinevatel korrustel ning neil on nimed. Igas osakonnas on riiulid. Igal riiulil asuvad kindlat tüüpi raamatud.
Line 16: Line 25:
<?xml version="1.0" encoding="utf-8" ?>
<?xml version="1.0" encoding="utf-8" ?>
<raamatukogu>
<raamatukogu>
   <osakond korrus="1" nimi="informaatika-infoteholoogia">
   <osakond korrus="1" nimi="Informaatika ja Infoteholoogia">
     <riiul id = "1" teema="informaatika">
     <riiul id = "1" teema="Informaatika">
       <raamat kogus="5" trükk="1">
       <raamat kogus="5" trükk="1">
         <nimi>Informaatika teoreetilised alused</nimi>
         <nimi>Informaatika teoreetilised alused</nimi>
Line 40: Line 49:
       </raamat>
       </raamat>
     </riiul>
     </riiul>
     <riiul id = "2" teema="programmeerimine">
     <riiul id = "2" teema="Programmeerimine">
       <raamat kogus="5" trükk="4">
       <raamat kogus="5" trükk="4">
         <nimi>Thinking in Java</nimi>
         <nimi>Thinking in Java</nimi>
Line 64: Line 73:
     </riiul>
     </riiul>
   </osakond>
   </osakond>
   <osakond korrus="1" nimi="ajalugu">
   <osakond korrus="1" nimi="Ajalugu">
     <riiul id = "1" teema="teadus">
     <riiul id = "1" teema="Teadusajalugu">
       <raamat kogus="5" trükk="1">
       <raamat kogus="5" trükk="1">
         <nimi>Nõiakunst</nimi>
         <nimi>Nõiakunst</nimi>
Line 81: Line 90:
       </raamat>
       </raamat>
     </riiul>
     </riiul>
     <riiul id = "2" teema="teine maailmasõda">
     <riiul id = "2" teema="Teine maailmasõda">
       <raamat kogus="3" trükk="1">
       <raamat kogus="3" trükk="1">
         <nimi>Eestlased teises maailmasõjas</nimi>
         <nimi>Eestlased teises maailmasõjas</nimi>
Line 101: Line 110:
</source>
</source>


=== XSD ===
== XSD ==


<source lang="xml">
<source lang="xml">
Line 144: Line 153:
</source>
</source>


=== XSLT ===
== XSLT ==


Kuvab kõik saadaval olevate raamatute informatsiooni.
Kuvab kõik saadaval olevate raamatute informatsiooni.
Line 157: Line 166:
         </head>
         </head>
         <body>
         <body>
          <h1>Raamatud</h1>
           <table border="1">
           <table border="1">
             <tr>
             <tr>
               <th>Nimi</th>
               <th>Nimi</th>
               <th>Autor</th>
               <th>Autor</th>
               <th>Lehekülged arv</th>
               <th>Lehekülgede arv</th>
               <th>Aasta</th>
               <th>Aasta</th>
               <th>Kirjastus</th>
               <th>Kirjastus</th>
Line 197: Line 207:


Kuvab raamatud, mille kogus riiulites on suurem neljast.
Kuvab raamatud, mille kogus riiulites on suurem neljast.
Tulemusst on võimalik vaadata [[http://enos.itcollege.ee/~rott/aasta2/vr2/kodu_xml/raamatukogu2.html siit]].
Tulemust on võimalik vaadata [[http://enos.itcollege.ee/~rott/aasta2/vr2/kodu_xml/raamatukogu2.html siit]].


<source lang="xml">
<source lang="xml">
Line 209: Line 219:
         <xsl:for-each select="/raamatukogu/osakond">
         <xsl:for-each select="/raamatukogu/osakond">
           <h2>
           <h2>
             <xsl:value-of select="@nimi"/> korrus <xsl:value-of select="@korrus"/>
             Korrus: <xsl:value-of select="@korrus"/> - <xsl:value-of select="@nimi"/>
           </h2>
           </h2>
           <xsl:for-each select="riiul">
           <xsl:for-each select="riiul">
             <p>
             <p>
               <xsl:value-of select="@teema"/> riiul
               Riiul: <xsl:value-of select="@teema"/>
             </p>
             </p>
             <table border="1">
             <table border="1">
Line 219: Line 229:
                 <th>Nimi</th>
                 <th>Nimi</th>
                 <th>Autor</th>
                 <th>Autor</th>
                 <th>Lehekülged arv</th>
                 <th>Lehekülgede arv</th>
                 <th>Aasta</th>
                 <th>Aasta</th>
                 <th>Kirjastus</th>
                 <th>Kirjastus</th>

Latest revision as of 18:04, 31 March 2013

VR II

Meeskond

  • Jaan Kängsepp
  • Rene Ott (Juht)
  • Laura Närska

Logi

  • 03.03.2013 - Wiki lehe loomine
  • 14.03.2013 - Liitus Laura Närska
  • 23.03.2013 - Xml, Xsd, Xslt
  • 23.03.2013 - TFS: https://jare.visualstudio.com/
  • 31.03.2013 - Retsensioonid XML-i kohta

Veebiteenus

XML Andmefailid

XML

Tegemist on raamatukoguga, kus on erinevad osakonnad. Osakonnad asuvad erinevatel korrustel ning neil on nimed. Igas osakonnas on riiulid. Igal riiulil asuvad kindlat tüüpi raamatud.

<?xml version="1.0" encoding="utf-8" ?>
<raamatukogu>
  <osakond korrus="1" nimi="Informaatika ja Infoteholoogia">
    <riiul id = "1" teema="Informaatika">
      <raamat kogus="5" trükk="1">
        <nimi>Informaatika teoreetilised alused</nimi>
        <autor>Peeter Lorents</autor>
        <ilmumisaasta>2001</ilmumisaasta>
        <kirjastus>EBS Print</kirjastus>
        <lehekülgi>430</lehekülgi>
      </raamat>
      <raamat kogus="3" trükk="1">
        <nimi>Hulgad, valemid, algoritmid</nimi>
        <autor>Peeter Lorents</autor>
        <ilmumisaasta>2007</ilmumisaasta>
        <kirjastus>Eesti Infotehnoloogia Kolledž</kirjastus>
        <lehekülgi>336</lehekülgi>
      </raamat>
      <raamat kogus="3" trükk="1">
        <nimi>Hulgateooria lastele</nimi>
        <autor>Hulga Element</autor>
        <ilmumisaasta>2007</ilmumisaasta>
        <kirjastus>Eesti Infotehnoloogia Kolledž</kirjastus>
        <lehekülgi>400</lehekülgi>
      </raamat>
    </riiul>
    <riiul id = "2" teema="Programmeerimine">
      <raamat kogus="5" trükk="4">
        <nimi>Thinking in Java</nimi>
        <autor>Bruce Eckel</autor>
        <ilmumisaasta>2001</ilmumisaasta>
        <kirjastus>Prentice-Hall</kirjastus>
        <lehekülgi>1000</lehekülgi>
      </raamat>
      <raamat kogus="5" trükk="2">
        <nimi>Efektiivne Programmeerimine</nimi>
        <autor>Edgar Suur</autor>
        <ilmumisaasta>2005</ilmumisaasta>
        <kirjastus>Tallina Kirjastus</kirjastus>
        <lehekülgi>250</lehekülgi>
      </raamat>
      <raamat kogus="1" trükk="1">
        <nimi>Efektiivne Programmeerimine</nimi>
        <autor>Edgar Suur</autor>
        <ilmumisaasta>2000</ilmumisaasta>
        <kirjastus>Tallina Kirjastus</kirjastus>
        <lehekülgi>200</lehekülgi>
      </raamat>
    </riiul>
  </osakond>
  <osakond korrus="1" nimi="Ajalugu">
    <riiul id = "1" teema="Teadusajalugu">
      <raamat kogus="5" trükk="1">
        <nimi>Nõiakunst</nimi>
        <autor>Wiktor Merlin</autor>
        <ilmumisaasta>1136</ilmumisaasta>
        <kirjastus>Camelot</kirjastus>
        <lehekülgi>500</lehekülgi>
      </raamat>
      <raamat kogus="5" trükk="1">
        <nimi>Alkeemia ajalugu</nimi>
        <autor>Targo Kivi</autor>
        <ilmumisaasta>1337</ilmumisaasta>
        <kirjastus>Alchimia</kirjastus>
        <lehekülgi>400</lehekülgi>
      </raamat>
    </riiul>
    <riiul id = "2" teema="Teine maailmasõda">
      <raamat kogus="3" trükk="1">
        <nimi>Eestlased teises maailmasõjas</nimi>
        <autor>Peeter Eeter Termomeeter</autor>
        <ilmumisaasta>2006</ilmumisaasta>
        <kirjastus>Kotkas</kirjastus>
        <lehekülgi>100</lehekülgi>
      </raamat>
      <raamat kogus="5" trükk="1">
        <nimi>Venelased teises maailmasõjas</nimi>
        <autor>Peeter Eeter Termomeeter</autor>
        <ilmumisaasta>2010</ilmumisaasta>
        <kirjastus>Kotkas</kirjastus>
        <lehekülgi>1000</lehekülgi>
      </raamat>
    </riiul>
  </osakond>
</raamatukogu>

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="raamatukogu">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="unbounded" name="osakond">
          <xs:complexType>
            <xs:sequence>
              <xs:element maxOccurs="unbounded" name="riiul">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element maxOccurs="unbounded" name="raamat">
                      <xs:complexType>
                        <xs:sequence>
                          <xs:element name="nimi" type="xs:string" />
                          <xs:element maxOccurs="unbounded" name="autor" type="xs:string" />
                          <xs:element name="ilmumisaasta" type="xs:integer" />
                          <xs:element name="kirjastus" type="xs:string" />
                          <xs:element minOccurs="0" name="lehekülgi" type="xs:integer" />
                        </xs:sequence>
                        <xs:attribute name="kogus" type="xs:integer" use="required" />
                        <xs:attribute name="trükk" type="xs:integer" use="required" />
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                  <xs:attribute name="id" type="xs:integer" use="required" />
                  <xs:attribute name="teema" type="xs:string" use="required" />
                </xs:complexType>
              </xs:element>
            </xs:sequence>
            <xs:attribute name="korrus" type="xs:integer" use="required" />
            <xs:attribute name="nimi" type="xs:string" use="required" />
          </xs:complexType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

XSLT

Kuvab kõik saadaval olevate raamatute informatsiooni. Tulemust on võimalik vaadata [siit].

<?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>
        </head>
        <body>
          <h1>Raamatud</h1>
          <table border="1">
            <tr>
              <th>Nimi</th>
              <th>Autor</th>
              <th>Lehekülgede arv</th>
              <th>Aasta</th>
              <th>Kirjastus</th>
              <th>Kogus</th>
            </tr>
            <xsl:for-each select="/raamatukogu/osakond/riiul/raamat">
              <tr>
                <td>
                  <xsl:value-of select="nimi"/>
                </td>
                <td>
                    <xsl:value-of select="autor"/>
                </td>
                <td>
                  <xsl:value-of select="lehekülgi"/>
                </td>
                <td>
                  <xsl:value-of select="ilmumisaasta"/>
                </td>
                 <td>
                  <xsl:value-of select="kirjastus"/>
                </td>
                <td>
                  <xsl:value-of select="@kogus"/>
                </td>
              </tr>
            </xsl:for-each>
          </table>
        </body>
      </html>
    </xsl:template>
</xsl:stylesheet>


Kuvab raamatud, mille kogus riiulites on suurem neljast. Tulemust on võimalik vaadata [siit].

<?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>
      </head>
      <body>
        <xsl:for-each select="/raamatukogu/osakond">
          <h2>
            Korrus: <xsl:value-of select="@korrus"/> - <xsl:value-of select="@nimi"/>
          </h2>
          <xsl:for-each select="riiul">
            <p>
              Riiul: <xsl:value-of select="@teema"/>
            </p>
            <table border="1">
              <tr>
                <th>Nimi</th>
                <th>Autor</th>
                <th>Lehekülgede arv</th>
                <th>Aasta</th>
                <th>Kirjastus</th>
              </tr>
              <xsl:for-each select="raamat">
                <xsl:if test="@kogus &gt; 4">
                  <tr>
                    <td>
                      <xsl:value-of select="nimi"/>
                    </td>
                    <td>
                      <xsl:value-of select="autor"/>
                    </td>
                    <td>
                      <xsl:value-of select="lehekülgi"/>
                    </td>
                    <td>
                      <xsl:value-of select="ilmumisaasta"/>
                    </td>
                    <td>
                      <xsl:value-of select="kirjastus"/>
                    </td>
                  </tr>
                </xsl:if>
              </xsl:for-each>
            </table>
          </xsl:for-each>
        </xsl:for-each>
      </body>
    </html>
  </xsl:template>
</xsl:stylesheet>