Peeter VR2
From ICO wiki
Meeskond "Peeter VR2" | |
Aine: | Category:Võrgurakendused II: hajussüsteemide ehitamine |
Juhend: | Juhend |
Tüüp: | Projekt |
Liikmed: | Lennart Lüsi Kairo Koik Marek Kikas Kaivar Kull |
Juhendajad: | Mait Poska Kaarel Raspel |
Semester: | 2011/2012 kevad |
XML fail
Ülesande täitmiseks tuleb luua XML fail andmete edastamiseks, selle XML faili skeemifail ning paar kolm sobivat XSL faili loodud XML failis olevate andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. XML-il peab olema vähemalt 4 loogilist dimensiooni.
Lisaks tuleb kasutada 3-el dimensioonil attribuute, mis one enamat, kui lihtsalt ID.
XML
<?xml version="1.0" encoding="utf-8"?> <raamatud> <raamat raamatuID="11" kategooria="Loriluule" keel="eesti"> <raamatuinfo> <pealkiri>Luule Lori loriluulekogum 3.</pealkiri> <lehekülgedearv>300</lehekülgedearv> <saadaval>ei</saadaval> </raamatuinfo> <autoriinfo> <eesnimi>Luule</eesnimi> <taganimi>Lori</taganimi> <sünniaasta>1889</sünniaasta> <teisedraamatud raamatuID="10">Luule Lori loriluulekogum 2</teisedraamatud> <teisedraamatud raamatuID="9">Luule Lori loriluulekogum 1</teisedraamatud> </autoriinfo> </raamat> <raamat raamatuID="2" kategooria="Kirjanduslik seep" keel="eesti"> <raamatuinfo> <pealkiri>Tuultest viidud</pealkiri> <lehekülgedearv>9001</lehekülgedearv> <saadaval>jah</saadaval> </raamatuinfo> <autoriinfo> <eesnimi>Tuule</eesnimi> <taganimi>Veski</taganimi> <sünniaasta>1960</sünniaasta> <teisedraamatud></teisedraamatud> </autoriinfo> </raamat> </raamatud>
XML schema (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="raamatud"> <xs:complexType> <xs:sequence> <xs:element maxOccurs="unbounded" name="raamat"> <xs:complexType> <xs:sequence> <xs:element name="raamatuinfo"> <xs:complexType> <xs:sequence> <xs:element name="pealkiri" type="xs:string" /> <xs:element name="lehekülgedearv" type="xs:unsignedShort" /> <xs:element name="saadaval" type="xs:string" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="autoriinfo"> <xs:complexType> <xs:sequence> <xs:element name="eesnimi" type="xs:string" /> <xs:element name="taganimi" type="xs:string" /> <xs:element name="sünniaasta" type="xs:unsignedShort" /> <xs:element maxOccurs="unbounded" name="teisedraamatud"> <xs:complexType> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="raamatuID" type="xs:unsignedByte" use="optional" /> </xs:extension> </xs:simpleContent> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="raamatuID" type="xs:unsignedByte" use="required" /> <xs:attribute name="kategooria" type="xs:string" use="required" /> <xs:attribute name="keel" type="xs:string" use="required" /> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:schema>
XSLT
<?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> <body text="black"> <h2>Raamatud raamtukogus:</h2> <table border="1" cellpadding ="0" cellspacing="0" width="1024"> <xsl:for-each select="raamatud/raamat"> <tr> <td>Raamat:</td> <td><xsl:value-of select="raamatuinfo/pealkiri"/></td> <td>Autor:</td> <td><xsl:value-of select="autoriinfo/eesnimi"/></td> <td><xsl:value-of select="autoriinfo/taganimi"/></td> <td>Saadaval:</td> <td><xsl:value-of select="raamatuinfo/saadaval"/></td> </tr> </xsl:for-each> </table> </body> </html> </xsl:template> </xsl:stylesheet>