Kirves: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Rprosso (talk | contribs)
No edit summary
Tmetsoja (talk | contribs)
No edit summary
Line 18: Line 18:


=Projekti kirjeldus=
=Projekti kirjeldus=
=Kodutöö XML=
==XML fail andmetega==
<?xml version="1.0" encoding="utf-8" ?>
<raamatukogu>
  <kategooriad>
    <kategooria>Raamat</kategooria>
    <kategooria>Film</kategooria>
    <kategooria>Videomäng</kategooria>
    <kategooria>Muusika</kategooria>
    <kategooria>Lauamäng</kategooria>
    <kategooria>Ajakiri</kategooria>
  </kategooriad>
  <teavikud keel="eesti">
    <teavik id="1" saadavus="true" autor="Eno Raud" pealkiri="Lugu lendavate taldrikutega" aasta="1978">
      <kategooria>Raamat</kategooria>
      <zanrid>
        <zanr><![CDATA[Jahipidamine]]></zanr>
        <zanr><![CDATA[Kokandus]]></zanr>
      </zanrid>
      <asukoht kood="CAS65">3. korrus</asukoht>
    </teavik>
    <teavik id="4" saadavus="false" autor="Leeter Porents" pealkiri="Leeter Porents: The Untold Story" aasta="2013">
      <kategooria>Film</kategooria>
      <zanrid>
        <zanr><![CDATA[Jahipidamine]]></zanr>
        <zanr><![CDATA[Ulme]]></zanr>
        <zanr><![CDATA[Fantaasia]]></zanr>
        <zanr><![CDATA[Autobiograafia]]></zanr>
      </zanrid>
      <asukoht kood="RT72">2. korrus</asukoht>
    </teavik>
  </teavikud>
  <teavikud keel="inglise">
    <teavik id="27" saadavus="true" autor="Rockstar Games" pealkiri="GTA5" aasta="2013">
      <kategooria>Videomäng</kategooria>
      <zanrid>
        <zanr><![CDATA[Seiklus]]></zanr>
        <zanr><![CDATA[Märul]]></zanr>
        <zanr><![CDATA[Auto]]></zanr>
      </zanrid>
      <asukoht kood="3CPO">1. korrus</asukoht>
    </teavik>
    <teavik id="723" saadavus="true" autor="Warner Bros studios" pealkiri="Shutter Island" aasta="2012">
      <kategooria>Film</kategooria>
      <zanrid>
        <zanr><![CDATA[Draama]]></zanr>
        <zanr><![CDATA[Thriller]]></zanr>
      </zanrid>
      <asukoht kood="FT12">1. korrus</asukoht>
    </teavik>
  </teavikud>
  <teavikud keel="vene">
    <teavik id="1423" saadavus="true" autor="Fjodor Dostojevski" pealkiri="Kuritöö ja karistus" aasta="1867">
      <kategooria>Raamat</kategooria>
      <zanrid>
        <zanr><![CDATA[Draama]]></zanr>
        <zanr><![CDATA[Romaan]]></zanr>
      </zanrid>
      <asukoht kood="GR23">1. korrus</asukoht>
    </teavik>
  </teavikud>
</raamatukogu>
==XML Schema==
<?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 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="teavikud">
          <xs:complexType>
            <xs:sequence>
              <xs:element maxOccurs="unbounded" name="teavik">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="kategooria" type="xs:string" />
                    <xs:element name="zanrid">
                      <xs:complexType>
                        <xs:sequence>
                          <xs:element maxOccurs="unbounded" name="zanr" type="xs:string" />
                        </xs:sequence>
                      </xs:complexType>
                    </xs:element>
                    <xs:element name="asukoht">
                      <xs:complexType>
                        <xs:simpleContent>
                          <xs:extension base="xs:string">
                            <xs:attribute name="kood" 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:attribute name="saadavus" type="xs:boolean" use="required" />
                  <xs:attribute name="autor" type="xs:string" use="required" />
                  <xs:attribute name="pealkiri" type="xs:string" use="required" />
                  <xs:attribute name="aasta" type="xs:gYear" use="required" />
                </xs:complexType>
              </xs:element>
            </xs:sequence>
            <xs:attribute name="keel" type="xs:string" use="required" />
          </xs:complexType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>
==XSLT 1.==
<?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>Teavikud kategooria järgi</title>
        </head>
        <body>
          <h1>
            Teavikud kategooriate järgi:
          </h1>
          <ul>
            <xsl:for-each select="/raamatukogu/kategooriad/kategooria">
              <xsl:variable name="Kategooria" select="."></xsl:variable>
              <li>
                <h2>
                  <xsl:value-of select="$Kategooria"/>
                </h2>
                <xsl:for-each select="/raamatukogu/teavikud/teavik">
                  <xsl:variable name="Teavik" select="."></xsl:variable>
                  <xsl:if test="kategooria=$Kategooria">
                    <ul>
                      <li>
                        <xsl:value-of select="$Teavik/@pealkiri"/>
                      </li>
                    </ul>
                  </xsl:if>
                </xsl:for-each>
              </li>
              <br />
            </xsl:for-each>
          </ul>
        </body>
      </html>
       
    </xsl:template>
</xsl:stylesheet>
==XSLT 2.==
<?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>Teavikud tähestiku järjekorras</title>
        </head>
        <body>
          <h1>
            Teavikud tähestiku järjekorras:
          </h1>
          <ul>
            <xsl:for-each select="/raamatukogu/teavikud/teavik">
              <xsl:sort select="@pealkiri"/>
              <xsl:variable name="Teavik" select="."></xsl:variable>
              <ul>
                <li>
                  <p>
                    Pealkiri: <b><xsl:value-of select="$Teavik/@pealkiri"/></b> <br />
                    Kategooria: <xsl:value-of select="$Teavik/kategooria"/> <br />
                    Žanr:<ul><xsl:for-each select="$Teavik/zanrid/zanr">
                      <xsl:variable name="Zanrid" select="."></xsl:variable>
                      <li>
                        <xsl:value-of select="."/>
                      </li>
                    </xsl:for-each>
                    </ul>
                    Autor: <xsl:value-of select="$Teavik/@autor"/> <br />
                    Aasta: <xsl:value-of select="$Teavik/@aasta"/> <br />
                    Saadavus: <xsl:value-of select="$Teavik/@saadavus"/>
                  </p>
                </li>
              </ul>
            </xsl:for-each>
            <br />
          </ul>
        </body>
      </html>
    </xsl:template>
</xsl:stylesheet>


=Analüüs=
=Analüüs=


==Millega on tegemist?==
==Millega on tegemist?==

Revision as of 15:05, 12 March 2014

Projekti kirjeldus

Kodutöö XML

XML fail andmetega

<?xml version="1.0" encoding="utf-8" ?> <raamatukogu>

 <kategooriad>
   <kategooria>Raamat</kategooria>
   <kategooria>Film</kategooria>
   <kategooria>Videomäng</kategooria>
   <kategooria>Muusika</kategooria>
   <kategooria>Lauamäng</kategooria>
   <kategooria>Ajakiri</kategooria>
 </kategooriad>
 <teavikud keel="eesti">
   <teavik id="1" saadavus="true" autor="Eno Raud" pealkiri="Lugu lendavate taldrikutega" aasta="1978">
     <kategooria>Raamat</kategooria>
     <zanrid>
       <zanr><![CDATA[Jahipidamine]]></zanr>
       <zanr><![CDATA[Kokandus]]></zanr>
     </zanrid>
     <asukoht kood="CAS65">3. korrus</asukoht>
   </teavik>
   <teavik id="4" saadavus="false" autor="Leeter Porents" pealkiri="Leeter Porents: The Untold Story" aasta="2013">
     <kategooria>Film</kategooria>
     <zanrid>
       <zanr><![CDATA[Jahipidamine]]></zanr>
       <zanr><![CDATA[Ulme]]></zanr>
       <zanr><![CDATA[Fantaasia]]></zanr>
       <zanr><![CDATA[Autobiograafia]]></zanr>
     </zanrid>
     <asukoht kood="RT72">2. korrus</asukoht>
   </teavik>
 </teavikud>
 <teavikud keel="inglise">
   <teavik id="27" saadavus="true" autor="Rockstar Games" pealkiri="GTA5" aasta="2013">
     <kategooria>Videomäng</kategooria>
     <zanrid>
       <zanr><![CDATA[Seiklus]]></zanr>
       <zanr><![CDATA[Märul]]></zanr>
       <zanr><![CDATA[Auto]]></zanr>
     </zanrid>
     <asukoht kood="3CPO">1. korrus</asukoht>
   </teavik>
   <teavik id="723" saadavus="true" autor="Warner Bros studios" pealkiri="Shutter Island" aasta="2012">
     <kategooria>Film</kategooria>
     <zanrid>
       <zanr><![CDATA[Draama]]></zanr>
       <zanr><![CDATA[Thriller]]></zanr>
     </zanrid>
     <asukoht kood="FT12">1. korrus</asukoht>
   </teavik>
 </teavikud>
 <teavikud keel="vene">
   <teavik id="1423" saadavus="true" autor="Fjodor Dostojevski" pealkiri="Kuritöö ja karistus" aasta="1867">
     <kategooria>Raamat</kategooria>
     <zanrid>
       <zanr><![CDATA[Draama]]></zanr>
       <zanr><![CDATA[Romaan]]></zanr>
     </zanrid>
     <asukoht kood="GR23">1. korrus</asukoht>
   </teavik>
 </teavikud>


</raamatukogu>

XML Schema

<?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 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="teavikud">
         <xs:complexType>
           <xs:sequence>
             <xs:element maxOccurs="unbounded" name="teavik">
               <xs:complexType>
                 <xs:sequence>
                   <xs:element name="kategooria" type="xs:string" />
                   <xs:element name="zanrid">
                     <xs:complexType>
                       <xs:sequence>
                         <xs:element maxOccurs="unbounded" name="zanr" type="xs:string" />
                       </xs:sequence>
                     </xs:complexType>
                   </xs:element>
                   <xs:element name="asukoht">
                     <xs:complexType>
                       <xs:simpleContent>
                         <xs:extension base="xs:string">
                           <xs:attribute name="kood" 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:attribute name="saadavus" type="xs:boolean" use="required" />
                 <xs:attribute name="autor" type="xs:string" use="required" />
                 <xs:attribute name="pealkiri" type="xs:string" use="required" />
                 <xs:attribute name="aasta" type="xs:gYear" use="required" />
               </xs:complexType>
             </xs:element>
           </xs:sequence>
           <xs:attribute name="keel" type="xs:string" use="required" />
         </xs:complexType>
       </xs:element>
     </xs:sequence>
   </xs:complexType>
 </xs:element>

</xs:schema>


XSLT 1.

<?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>Teavikud kategooria järgi</title>
       </head>
       <body>

Teavikud kategooriate järgi:

    <xsl:for-each select="/raamatukogu/kategooriad/kategooria"> <xsl:variable name="Kategooria" select="."></xsl:variable>
  • <xsl:value-of select="$Kategooria"/>

                   <xsl:for-each select="/raamatukogu/teavikud/teavik">
                     <xsl:variable name="Teavik" select="."></xsl:variable>
                     <xsl:if test="kategooria=$Kategooria">
    
    • <xsl:value-of select="$Teavik/@pealkiri"/>
                     </xsl:if>
                   </xsl:for-each>
    

  • </xsl:for-each>
       </body>
     </html> 
       
   </xsl:template>

</xsl:stylesheet>


XSLT 2.

<?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>Teavikud tähestiku järjekorras</title>
       </head>
       <body>

Teavikud tähestiku järjekorras:

    <xsl:for-each select="/raamatukogu/teavikud/teavik"> <xsl:sort select="@pealkiri"/> <xsl:variable name="Teavik" select="."></xsl:variable>
    • Pealkiri: <xsl:value-of select="$Teavik/@pealkiri"/>
      Kategooria: <xsl:value-of select="$Teavik/kategooria"/>
      Žanr:

        <xsl:for-each select="$Teavik/zanrid/zanr"> <xsl:variable name="Zanrid" select="."></xsl:variable>
      • <xsl:value-of select="."/>
      • </xsl:for-each>
                         Autor: <xsl:value-of select="$Teavik/@autor"/> 
      Aasta: <xsl:value-of select="$Teavik/@aasta"/>
      Saadavus: <xsl:value-of select="$Teavik/@saadavus"/>

               </xsl:for-each>
               
       </body>
     </html>
   </xsl:template>

</xsl:stylesheet>


Analüüs

Millega on tegemist?

KIRVES
Ülikool: Eesti Infotehnoloogia Kolledž
Tüüp: Võrgurakendused II
Meeskond "Kirves": Tauri Metsoja
Raul Prosso (Projektijuht)
Ahto Luuri
Juhendaja: Mait Poska