Un

From EIK wiki

Meeskond

  • Lelet Hollo

Kodutöö ylesanne

Ü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 3-l dimensioonil kasutada atribuute, mis on enamat kui lihtsalt ID.

Ajakava

  • 23.03 kokkuleppimine iseendaga
  • 25.03 ideede genereerimise lõppfaas
  • 26.03 XML faili alustamine
  • 27.03 abikaasa sünnipäev, XML faili lõpetamine, skeemifaili genereerimine Visual Studio abil
  • 29.03 aasta kõige suurem reede, esimese (võibolla ka viimase) stiilifaili valmimine
  • 31.03 meeskonnale Laenutajad retsensiooni lisamine

XML

XML failis on andmed meie pere omandis olevate autode kohta. Autod on registreeritud peamiselt kahe erineva firma alla. Olulisemad andmed pärinevad tehnopassist ning lisaks on ülevaade kehtivast/mittekehtivast liikluskindlustusest ning tehnoülevaatusest. Lisada võiks veel andmed teostatud hoolduste ja remontide kohta. XML-fail

<?xml version="1.0" encoding="ISO-8859-1"?>
<autod>
	<auto mark="Mercedes-Benz" nimetus="240 D" id="1">
		<kirjeldus>
			<värv>beez</värv>
			<kere>sedaan</kere>
			<mootor>diisel</mootor>		
		</kirjeldus>
		<info>
			 <regNr>181TCA</regNr>
			 <aasta>1982</aasta>
			 <omanik>123 Haldus OÜ</omanik>
			 <vastutavKasutaja>Argo Hollo</vastutavKasutaja>
			 <kasutaja> </kasutaja>
		</info>
		<tegevused tüüp ="ark">
			<ülevaatus info="kuni(k.a.)"> </ülevaatus>
			<kindlustused info="kuni(k.a.)"> 
				<kindlustus> </kindlustus>
			</kindlustused>
		</tegevused>
	</auto>
	<auto mark="Mercedes-Benz" nimetus="240 D" id="2">
		<kirjeldus>
			<värv>beez</värv>
			<kere>sedaan</kere>
			<mootor>diisel</mootor>		
		</kirjeldus>
		<info>
			 <regNr>251AKV</regNr>
			 <aasta>1982</aasta>
			 <omanik>123 Haldus OÜ</omanik>
			 <vastutavKasutaja>Argo Hollo</vastutavKasutaja>
			 <kasutaja> </kasutaja>
		</info>
		<tegevused tüüp ="ark">
			<ülevaatus info="kuni(k.a.)"> </ülevaatus>
			<kindlustused info="kuni(k.a.)"> 
				<kindlustus> </kindlustus>
			</kindlustused>
		</tegevused>
	</auto>
	<auto mark="Mercedes-Benz" nimetus="230 E" id="3">
		<kirjeldus>
			<värv>roheline</värv>
			<kere>sedaan</kere>
			<mootor>bensiin</mootor>		
		</kirjeldus>
		<info>
			 <regNr>255AKK</regNr>
			 <aasta>1983</aasta>
			 <omanik>Limit OÜ</omanik>
			 <vastutavKasutaja>Urmo Johanson</vastutavKasutaja>
			 <kasutaja> </kasutaja>
		</info>
		<tegevused tüüp ="ark">
			<ülevaatus info="kuni(k.a.)">07/2013</ülevaatus>
			<kindlustused info="kuni(k.a.)"> 
				<kindlustus>13/12/2012</kindlustus>
				<kindlustus>13/03/2013</kindlustus>
			</kindlustused>
		</tegevused>
	</auto>
	<auto mark="Mercedes-Benz" nimetus="300 D" id="4">
		<kirjeldus>
			<värv>heleroheline</värv>
			<kere>sedaan</kere>
			<mootor>diisel</mootor>		
		</kirjeldus>
		<info>
			 <regNr>337ABT</regNr>
			 <aasta>1983</aasta>
			 <omanik>123 Haldus OÜ</omanik>
			 <vastutavKasutaja>Argo Hollo</vastutavKasutaja>
			 <kasutaja> </kasutaja>
		</info>
		<tegevused tüüp ="ark">
			<ülevaatus info="kuni(k.a.)">09/2012</ülevaatus>
			<kindlustused info="kuni(k.a.)"> 
				<kindlustus> </kindlustus>
			</kindlustused>
		</tegevused>
	</auto>
	<auto mark="Mercedes-Benz" nimetus="200" id="5">
		<kirjeldus>
			<värv>roheline</värv>
			<kere>sedaan</kere>
			<mootor>bensiin</mootor>		
		</kirjeldus>
		<info>
			 <regNr>370AMK</regNr>
			 <aasta>1985</aasta>
			 <omanik>123 Haldus OÜ</omanik>
			 <vastutavKasutaja>Argo Hollo</vastutavKasutaja>
			 <kasutaja> </kasutaja>
		</info>
		<tegevused tüüp ="ark">
			<ülevaatus info="kuni(k.a.)">12/2013</ülevaatus>
			<kindlustused info="kuni(k.a.)"> 
				<kindlustus>13/06/2013</kindlustus>
			</kindlustused>
		</tegevused>
	</auto>
	<auto mark="Mercedes-Benz" nimetus="280 E" id="6">
		<kirjeldus>
			<värv>sinine</värv>
			<kere>sedaan</kere>
			<mootor>bensiin</mootor>		
		</kirjeldus>
		<info>
			 <regNr>445IAC</regNr>
			 <aasta>1980</aasta>
			 <omanik>Argo Hollo</omanik>
			 <vastutavKasutaja> </vastutavKasutaja>
			 <kasutaja>Lelet Maripuu</kasutaja>
			 <kasutaja>Piret Maripuu</kasutaja>
		</info>
		<tegevused tüüp ="ark">
			<ülevaatus info="kuni(k.a.)">08/2011</ülevaatus>
			<kindlustused info="kuni(k.a.)"> 
				<kindlustus> </kindlustus>
			</kindlustused>
		</tegevused>
	</auto>
	<auto mark="Mercedes-Benz" nimetus="200 D" id="7">
		<kirjeldus>
			<värv>valge</värv>
			<kere>sedaan</kere>
			<mootor>diisel</mootor>		
		</kirjeldus>
		<info>
			 <regNr>596AXS</regNr>
			 <aasta>1981</aasta>
			 <omanik>123 Haldus OÜ</omanik>
			 <vastutavKasutaja> </vastutavKasutaja>
			 <kasutaja> </kasutaja>
		</info>
		<tegevused tüüp ="ark">
			<ülevaatus info="kuni(k.a.)"> </ülevaatus>
			<kindlustused info="kuni(k.a.)"> 
				<kindlustus> </kindlustus>
			</kindlustused>
		</tegevused>
	</auto>
	<auto mark="Mercedes-Benz" nimetus="240 D" id="8">
		<kirjeldus>
			<värv>sinine</värv>
			<kere>sedaan</kere>
			<mootor>diisel</mootor>		
		</kirjeldus>
		<info>
			 <regNr>604AJC</regNr>
			 <aasta>1978</aasta>
			 <omanik>üks kaks kolm OÜ</omanik>
			 <vastutavKasutaja>Argo Hollo</vastutavKasutaja>
			 <kasutaja> </kasutaja>
		</info>
		<tegevused tüüp ="ark">
			<ülevaatus info="kuni(k.a.)"> </ülevaatus>
			<kindlustused info="kuni(k.a.)"> 
				<kindlustus> </kindlustus>
			</kindlustused>
		</tegevused>
	</auto>
	<auto mark="Mercedes-Benz" nimetus="230 CE" id="9">
		<kirjeldus>
			<värv>tumepruun</värv>
			<kere>kupee</kere>
			<mootor>bensiin</mootor>		
		</kirjeldus>
		<info>
			 <regNr>638FAS</regNr>
			 <aasta>1980</aasta>
			 <omanik>123 Haldus OÜ</omanik>
			 <vastutavKasutaja>Lelet Hollo</vastutavKasutaja>
			 <kasutaja> </kasutaja>
		</info>
		<tegevused tüüp ="ark">
			<ülevaatus info="kuni(k.a.)">10/2012</ülevaatus>
			<kindlustused info="kuni(k.a.)"> 
				<kindlustus> </kindlustus>
			</kindlustused>
		</tegevused>
	</auto>
	<auto mark="Mercedes-Benz" nimetus="240 D" id="10">
		<kirjeldus>
			<värv>helebeez</värv>
			<kere>universaal</kere>
			<mootor>diisel</mootor>		
		</kirjeldus>
		<info>
			 <regNr>644AUP</regNr>
			 <aasta>1984</aasta>
			 <omanik>üks kaks kolm OÜ</omanik>
			 <vastutavKasutaja>Argo Hollo</vastutavKasutaja>
			 <kasutaja>Lelet Hollo</kasutaja>
		</info>
		<tegevused tüüp ="ark">
			<ülevaatus info="kuni(k.a.)">06/2013</ülevaatus>
			<kindlustused info="kuni(k.a.)"> 
				<kindlustus>16/04/2013</kindlustus>
			</kindlustused>
		</tegevused>
	</auto>
	<auto mark="Mercedes-Benz" nimetus="230 CE" id="11">
		<kirjeldus>
			<värv>must</värv>
			<kere>kupee</kere>
			<mootor>bensiin</mootor>		
		</kirjeldus>
		<info>
			 <regNr>703OAE</regNr>
			 <aasta>1982</aasta>
			 <omanik>123 Haldus OÜ</omanik>
			 <vastutavKasutaja>Argo Hollo</vastutavKasutaja>
			 <kasutaja> </kasutaja>
		</info>
		<tegevused tüüp ="ark">
			<ülevaatus info="kuni(k.a.)">05/2012</ülevaatus>
			<kindlustused info="kuni(k.a.)"> 
				<kindlustus> </kindlustus>
			</kindlustused>
		</tegevused>
	</auto>
	<auto mark="Mercedes-Benz" nimetus="240 TD" id="12">
		<kirjeldus>
			<värv>sinine</värv>
			<kere>universaal</kere>
			<mootor>diisel</mootor>		
		</kirjeldus>
		<info>
			 <regNr>916ALF</regNr>
			 <aasta>1982</aasta>
			 <omanik>üks kaks kolm OÜ</omanik>
			 <vastutavKasutaja>Argo Hollo</vastutavKasutaja>
			 <kasutaja> </kasutaja>
		</info>
		<tegevused tüüp ="ark">
			<ülevaatus info="kuni(k.a.)">08/2013</ülevaatus>
			<kindlustused info="kuni(k.a.)"> 
				<kindlustus>04/09/2013</kindlustus>
			</kindlustused>
		</tegevused>
	</auto>
	<auto mark="Mercedes-Benz" nimetus="240 D" id="13">
		<kirjeldus>
			<värv>hall</värv>
			<kere>sedaan</kere>
			<mootor>diisel</mootor>		
		</kirjeldus>
		<info>
			 <regNr>917TCR</regNr>
			 <aasta>1983</aasta>
			 <omanik>üks kaks kolm OÜ</omanik>
			 <vastutavKasutaja>Argo Hollo</vastutavKasutaja>
			 <kasutaja> </kasutaja>
		</info>
		<tegevused tüüp ="ark">
			<ülevaatus info="kuni(k.a.)"> </ülevaatus>
			<kindlustused info="kuni(k.a.)"> 
				<kindlustus> </kindlustus>
			</kindlustused>
		</tegevused>
	</auto>
	<auto mark="Mercedes-Benz" nimetus="200 D" id="14">
		<kirjeldus>
			<värv>roheline</värv>
			<kere>sedaan</kere>
			<mootor>diisel</mootor>		
		</kirjeldus>
		<info>
			 <regNr>974AHF</regNr>
			 <aasta>1982</aasta>
			 <omanik>123 Haldus OÜ</omanik>
			 <vastutavKasutaja>Argo Hollo</vastutavKasutaja>
			 <kasutaja> </kasutaja>
		</info>
		<tegevused tüüp ="ark">
			<ülevaatus info="kuni(k.a.)">06/2012</ülevaatus>
			<kindlustused info="kuni(k.a.)"> 
				<kindlustus> </kindlustus>
			</kindlustused>
		</tegevused>
	</auto>
</autod>

XML Schema

XSD-fail

<?xml version="1.0" encoding="iso-8859-1"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="autod">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="unbounded" name="auto">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="kirjeldus">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="värv" type="xs:string" />
                    <xs:element name="kere" type="xs:string" />
                    <xs:element name="mootor" type="xs:string" />
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element name="info">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="regNr" type="xs:string" />
                    <xs:element name="aasta" type="xs:unsignedShort" />
                    <xs:element name="omanik" type="xs:string" />
                    <xs:element name="vastutavKasutaja" type="xs:string" />
                    <xs:element maxOccurs="unbounded" name="kasutaja" type="xs:string" />
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element name="tegevused">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="ülevaatus">
                      <xs:complexType>
                        <xs:simpleContent>
                          <xs:extension base="xs:string">
                            <xs:attribute name="info" type="xs:string" use="required" />
                          </xs:extension>
                        </xs:simpleContent>
                      </xs:complexType>
                    </xs:element>
                    <xs:element name="kindlustused">
                      <xs:complexType>
                        <xs:sequence>
                          <xs:element maxOccurs="unbounded" name="kindlustus" type="xs:string" />
                        </xs:sequence>
                        <xs:attribute name="info" type="xs:string" use="required" />
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                  <xs:attribute name="tüüp" type="xs:string" use="required" />
                </xs:complexType>
              </xs:element>
            </xs:sequence>
            <xs:attribute name="mark" type="xs:string" use="required" />
            <xs:attribute name="nimetus" type="xs:string" use="required" />
            <xs:attribute name="id" type="xs:unsignedByte" use="required" />
          </xs:complexType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

Stiilifail nr 1

Ilmselgelt ei tööta selles failis kahe atribuudi valimine (select="@*"), kui kellelgi on näpunäited, väga teretulnud. [Xsl-fail]

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output encoding="iso-8859-1" method="html" />
<xsl:template match="/">
 <html>
  <body>
  <h2>Autode loetelu</h2>
    <table border="1">
      <tr bgcolor="#9acd32">
        <th>Auto</th>
        <th>Reg.nr</th>
		    <th>Aasta</th>
		    <th>Värv</th>
		    <th>Kere</th>
		    <th>Mootor</th>
      </tr>
      <xsl:for-each select="autod/auto">
      <tr>
        <td><xsl:value-of select="@*"/></td>
        <td><xsl:value-of select="info/regNr"/></td>
		<td><xsl:value-of select="info/aasta"/></td>
		<td><xsl:value-of select="kirjeldus/värv"/></td>
		<td><xsl:value-of select="kirjeldus/kere"/></td>
		<td><xsl:value-of select="kirjeldus/mootor"/></td>
      </tr>
      </xsl:for-each>
    </table>
  </body>
  </html>
</xsl:template>
</xsl:stylesheet>