JaRe: Difference between revisions

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


== XML Andmefailid ==
==Meeskond==


=== XML ===
* 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.


<source lang="xml">
<source lang="xml">
<?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 32: 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 56: 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 73: 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 93: Line 110:
</source>
</source>


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


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


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


<source lan="xml">
Kuvab kõik saadaval olevate raamatute informatsiooni.
Tulemust on võimalik vaadata [[http://enos.itcollege.ee/~rott/aasta2/vr2/kodu_xml/raamatukogu1.html siit]].
 
<source lang="xml">
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
Line 146: 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>
               <th>Kogus</th>
               <th>Kogus</th>
             </tr>
             </tr>
             <xsl:for-each select="/osakonnad/osakond/riiul/raamat">
             <xsl:for-each select="/raamatukogu/osakond/riiul/raamat">
               <tr>
               <tr>
                 <td>
                 <td>
Line 183: Line 204:
</xsl:stylesheet>
</xsl:stylesheet>
</source>
</source>


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


<source lan="xml">
<source lang="xml">
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
Line 194: Line 217:
       </head>
       </head>
       <body>
       <body>
         <xsl:for-each select="/osakonnad/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 206: 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>