Dot muzei
From ICO wiki
Raggakana
Liikmed
- Aap Kaur Suvi
- Indrek Jõgi
- Kristjan Veskimäe
- Sandra Niinepuu - projektijuht
XML andmefail
XML fail on Eksponaadid.xml, skeemifail on Eksponaadid.xsd ja transformatsioonifail on Eksponaadid.xslt. XML faili valideerimiseks skeemifailiga peavad mõlemad failid asuma ühes ja samas kataloogis (kuna skeemifaili asukohaks on XML faili päises määratud Eksponaadid.xsd).
XML fail
<?xml version="1.0" encoding="utf-8" ?> <muuseumid xmlns="http://example.com/schemas/muuseumid/v1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://example.com/schemas/muuseumid/v1 Eksponaadid.xsd"> <!-- Andmed pärinevad http://muis.ee/catalogue --> <muuseum nimi="Eesti Sõjamuuseum" id="1"> <muuseumikogu tyyp="Esemekogu"> <eksponaat originaal="true" id="1"> <nimetus olemus="kinnas"><![CDATA["Labakinnas. M. Laidoneri (ema) kootud"]]></nimetus> <number><![CDATA["KLM ET 22 A 22"]]></number> <seisund>Hea</seisund> </eksponaat> <eksponaat originaal="true" id="2"> <nimetus olemus="tääk"><![CDATA["Mälestusese, miniatuurne tääk, USA Air Cavalry Divisioni sümboolikaga."]]></nimetus> <number><![CDATA["KLM ET 365 A"]]></number> <seisund>Hea</seisund> </eksponaat> </muuseumikogu> <muuseumikogu tyyp="Tulirelvad"> <eksponaat originaal="false" id="1"> <nimetus olemus="tulirelv"><![CDATA["Otepää püss, koopia"]]></nimetus> <number><![CDATA["KLM ET 1421 R1 457"]]></number> <seisund>Hea</seisund> </eksponaat> <eksponaat originaal="true" id="2"> <nimetus olemus="tulirelv"><![CDATA["Tank 34-85"]]></nimetus> <number><![CDATA["KLM ET 1603 R1 553"]]></number> <seisund>Rahuldav</seisund> </eksponaat> </muuseumikogu> </muuseum> <muuseum nimi="Eesti Ajaloomuuseum" id="2"> <muuseumikogu tyyp="Fotod"> <eksponaat originaal="true" id="1"> <nimetus olemus="album"><![CDATA["Fotoalbum: Vene tsaariarmee - 141. Možaiski polk, polkovnik Aganjev, grupipildid, portreed, olustik, kohavaated, ettevalmistused lahinguteks, arstiabi, matused."]]></nimetus> <number><![CDATA["AM _ 59 F 5501/1-305"]]></number> <seisund>Hea</seisund> </eksponaat> <eksponaat originaal="true" id="2"> <nimetus olemus="album"><![CDATA["Fotoalbum: "Kaks aastat Punaarmee Eesti korpust 1942-1944." Illustreeritud, venekeelsed pildiallkirjad."]]></nimetus> <number><![CDATA["AM _ 42 F 4100/1-270"]]></number> <seisund>Hea</seisund> </eksponaat> </muuseumikogu> <muuseumikogu tyyp="Mööblikollektsioon"> <eksponaat originaal="true" id="1"> <nimetus olemus="mööbel"><![CDATA["Laste söögitool, XIX saj. lõpp"]]></nimetus> <number><![CDATA["AM _ 35566:1 Mb 1"]]></number> <seisund>Hea</seisund> </eksponaat> </muuseumikogu> </muuseum> </muuseumid>
XML skeemifail
<?xml version="1.0" encoding="utf-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://example.com/schemas/muuseumid/v1" xmlns="http://example.com/schemas/muuseumid/v1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" attributeFormDefault="unqualified" elementFormDefault="qualified"> <xs:element name="muuseumid"> <xs:complexType> <xs:sequence> <xs:element maxOccurs="unbounded" name="muuseum"> <xs:complexType> <xs:sequence> <xs:element maxOccurs="unbounded" name="muuseumikogu"> <xs:complexType> <xs:sequence> <xs:element maxOccurs="unbounded" name="eksponaat"> <xs:complexType> <xs:sequence> <xs:element name="nimetus"> <xs:complexType> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="olemus" type="xs:string" use="required" /> </xs:extension> </xs:simpleContent> </xs:complexType> </xs:element> <xs:element name="number" type="xs:string" /> <xs:element name="seisund"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="Hea"></xs:enumeration> <xs:enumeration value="Rahuldav"></xs:enumeration> <xs:enumeration value="Halb"></xs:enumeration> </xs:restriction> </xs:simpleType> </xs:element> </xs:sequence> <xs:attribute name="originaal" type="xs:boolean" use="required" /> <xs:attribute name="id" type="xs:integer" use="required" /> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="tyyp" type="xs:string" use="required" /> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="nimi" type="xs:string" use="required" /> <xs:attribute name="id" type="xs:integer" use="required" /> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:schema>
XSLT failid
<?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> <body> <xsl:for-each select="muuseumid/muuseum"> <h1> <xsl:variable name="nimi" select="@nimi"></xsl:variable> <xsl:value-of select="@nimi"/> </h1> <xsl:for-each select="muuseumikogu"> <xsl:variable name="originaal" select="@originaal"></xsl:variable> <xsl:variable name="tyyp" select="@tyyp"></xsl:variable> <h2> <xsl:value-of select="@tyyp"/> </h2> <xsl:for-each select="eksponaat"> <p>Nimetus: <xsl:value-of select="nimetus"/> </p> <p> Number: <xsl:value-of select="number"/> </p> <p> Seisukord: <xsl:value-of select="seisund"/> </p> <p>------------</p> </xsl:for-each> </xsl:for-each> </xsl:for-each> </body> </html> </xsl:template> </xsl:stylesheet>