Kirves: Difference between revisions
From ICO wiki
Jump to navigationJump to search
No edit summary |
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 |