Kirves

From ICO wiki
Jump to navigationJump to search

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 I

<?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 II

<?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>

Veebiteenus

Solutioni allalaadimine http://devfast.eu/kirves/Cocaine.zip

Klientrakendused

Tegevuste logi

13. veebruar

  • Wiki lehe loomine

8. märts

  • Saime 4 päeva ajapikendust tänu Windows 8.1 24h koodilaagris osalemisele.

12. märts

  • XML fail, skeemifail ja stiilifailid

15. märts

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