PageNotFound

From ICO wiki
Jump to navigationJump to search

Meeskond

  • Arvo Paomees


XML

<?xml version="1.0" encoding="utf-8" ?> 

 <rent>
  <bookings>
    <booking id="1" hidden="false">
      <bookedVehicles>
        <bookedVehicle id="1">
          <vehicleId>2</vehicleId>
        </bookedVehicle>
        <bookedVehicle id="2">
          <vehicleId>1</vehicleId>
        </bookedVehicle>
        <bookedVehicle id="3">
          <vehicleId>3</vehicleId>
        </bookedVehicle>
      </bookedVehicles>
      <data>
        <userId>2</userId>
        <startTime>02.05.2017 13:00:22</startTime>
        <endTime>05.05.2017 13:00:22</endTime>
        <additionalDriver>false</additionalDriver>
        <gps>true</gps>
        <childCarSeats>false</childCarSeats>
        <youngDriver>true</youngDriver>
      </data>
    </booking>
    <booking id="2" hidden="false">
      <bookedVehicles>
        <bookedVehicle id="1">
          <vehicleId>3</vehicleId>
        </bookedVehicle>
        <bookedVehicle id="2">
          <vehicleId>1</vehicleId>
        </bookedVehicle>
      </bookedVehicles>
      <data>
        <userId>1</userId>
        <startTime>05.05.2017 13:00:22</startTime>
        <endTime>06.05.2017 13:00:22</endTime>
        <additionalDriver>false</additionalDriver>
        <gps>false</gps>
        <childCarSeats>true</childCarSeats>
        <youngDriver>true</youngDriver>
      </data>
    </booking>
    <booking id="3" hidden="false">
      <bookedVehicles>
        <bookedVehicle id="1">
          <vehicleId>3</vehicleId>
        </bookedVehicle>
      </bookedVehicles>
      <data>
        <userId>2</userId>
        <startTime>08.05.2017 13:00:22</startTime>
        <endTime>11.05.2017 13:00:22</endTime>
        <additionalDriver>false</additionalDriver>
        <gps>true</gps>
        <childCarSeats>false</childCarSeats>
        <youngDriver>true</youngDriver>
      </data>
    </booking>
  </bookings>
  <users>
    <user id="1" type="admin">
      <username><![CDATA[admin]]></username>
      <password><![CDATA[admin123]]></password>
      <firstname><![CDATA[Peeter]]></firstname>
      <lastname><![CDATA[Pakiraam]]></lastname>
      <title><![CDATA[Härra]]></title>
      <mail><![CDATA[peeter@Pakiraam.ee]]></mail>
      <phone><![CDATA[+3725556515]]></phone>
      <created>01.05.2017 13:00:22</created>
      <hidden>false</hidden>
    </user>
    <user id="2" type="user">
      <username><![CDATA[juku]]></username>
      <password><![CDATA[juku123]]></password>
      <firstname><![CDATA[Juhan]]></firstname>
      <lastname><![CDATA[Tamm]]></lastname>
      <title><![CDATA[Härra]]></title>
      <mail><![CDATA[juku@tamm.ee]]></mail>
      <phone><![CDATA[+3725542515]]></phone>
      <created>01.05.2017 13:00:22</created>
      <hidden>false</hidden>
    </user>
    <user id="3" type="user">
      <username><![CDATA[mati]]></username>
      <password><![CDATA[mati123]]></password>
      <firstname><![CDATA[Mati]]></firstname>
      <lastname><![CDATA[Kuusk]]></lastname>
      <title><![CDATA[Härra]]></title>
      <mail><![CDATA[mati@neti.ee]]></mail>
      <phone><![CDATA[+37255444515]]></phone>
      <created>01.05.2017 13:00:22</created>
      <hidden>false</hidden>
    </user>
  </users>
  <vehicles>
    <vehicle id="1">
      <make><![CDATA[Audi]]></make>
      <model><![CDATA[A6]]></model>
      <year>2016</year>
      <price>50</price>
      <hidden>false</hidden>
    </vehicle>
    <vehicle id="2">
      <make><![CDATA[Skoda]]></make>
      <model><![CDATA[Octavia]]></model>
      <year>2017</year>
      <price>40</price>
      <hidden>false</hidden>
    </vehicle>
    <vehicle id="3">
      <make><![CDATA[Volkswagen]]></make>
      <model><![CDATA[Passat]]></model>
      <year>2017</year>
      <price>45</price>
      <hidden>false</hidden>
    </vehicle>
  </vehicles>
</rent>


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="rent">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="bookings">
          <xs:complexType>
            <xs:sequence>
              <xs:element maxOccurs="unbounded" name="booking">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="bookedVehicles">
                      <xs:complexType>
                        <xs:sequence>
                          <xs:element maxOccurs="unbounded" name="bookedVehicle">
                            <xs:complexType>
                              <xs:sequence>
                                <xs:element name="vehicleId" type="xs:unsignedInt" />
                              </xs:sequence>
                              <xs:attribute name="id" type="xs:unsignedByte" use="required" />
                            </xs:complexType>
                          </xs:element>
                        </xs:sequence>
                      </xs:complexType>
                    </xs:element>
                    <xs:element name="data">
                      <xs:complexType>
                        <xs:sequence>
                          <xs:element name="userId" type="xs:unsignedInt" />
                          <xs:element name="startTime" type="xs:string" />
                          <xs:element name="endTime" type="xs:string" />
                          <xs:element name="additionalDriver" type="xs:boolean" />
                          <xs:element name="gps" type="xs:boolean" />
                          <xs:element name="childCarSeats" type="xs:boolean" />
                          <xs:element name="youngDriver" type="xs:boolean" />
                        </xs:sequence>
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                  <xs:attribute name="id" type="xs:unsignedInt" use="required" />
                  <xs:attribute name="hidden" type="xs:boolean" use="required" />
                </xs:complexType>
              </xs:element>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="users">
          <xs:complexType>
            <xs:sequence>
              <xs:element maxOccurs="unbounded" name="user">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="username" type="xs:string" />
                    <xs:element name="password" type="xs:string" />
                    <xs:element name="firstname" type="xs:string" />
                    <xs:element name="lastname" type="xs:string" />
                    <xs:element name="title" type="xs:string" />
                    <xs:element name="mail" type="xs:string" />
                    <xs:element name="phone" type="xs:string" />
                    <xs:element name="created" type="xs:string" />
                    <xs:element name="hidden" type="xs:boolean" />
                  </xs:sequence>
                  <xs:attribute name="id" type="xs:unsignedInt" use="required" />
                  <xs:attribute name="type" type="xs:string" use="required" />
                </xs:complexType>
              </xs:element>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="vehicles">
          <xs:complexType>
            <xs:sequence>
              <xs:element maxOccurs="unbounded" name="vehicle">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="make" type="xs:string" />
                    <xs:element name="model" type="xs:string" />
                    <xs:element name="year" type="xs:unsignedInt" />
                    <xs:element name="price" type="xs:unsignedInt" />
                    <xs:element name="hidden" type="xs:boolean" />
                  </xs:sequence>
                  <xs:attribute name="id" type="xs:unsignedInt" use="required" />
                </xs:complexType>
              </xs:element>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>


XSLT: Tavakasutajate kontaktandmete kuvamine

<?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="rent/users/user">
          <xsl:if test="@type = 'user'">
            <h2>
              <xsl:value-of select="title" />
              <xsl:text>: </xsl:text>
              <xsl:value-of select="firstname" />
              <xsl:text> </xsl:text>
              <xsl:value-of select="lastname" />
            </h2>
            <table border="1">
                <tr>
                  <th>Kasutajanimi</th>
                  <th>
                    <xsl:value-of select="username" />
                  </th>
                </tr>
                <tr>
                  <th>E-mail</th>
                  <th>
                    <xsl:value-of select="mail" />
                  </th>
                </tr>
                <tr>
                  <th>Telefon</th>
                  <th>
                    <xsl:value-of select="phone" />
                  </th>
                </tr>
            </table>
          </xsl:if>
        </xsl:for-each>
      </body>
    </html>
  </xsl:template>
</xsl:stylesheet>

Tulemus: Tavakasutajate kontaktandmete kuvamine


XSLT: Broneeringute sõitukite margi ja mudeli kuvamine

<?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="rent/bookings/booking">
          <xsl:if test="@hidden = 'false'">
            <h2>
              <xsl:text>Broneeringu ID: </xsl:text>
              <xsl:value-of select="@id" />
            </h2>
            <xsl:for-each select="bookedVehicles/bookedVehicle">
              <ul>
                <li>
                  <xsl:variable name="vehicleId" select="vehicleId"/>
                  <xsl:text>Sõiduk: </xsl:text>
                  <xsl:value-of select="../../../../vehicles/vehicle[@id = $vehicleId]/make" />
                  <xsl:text> </xsl:text>
                  <xsl:value-of select="../../../../vehicles/vehicle[@id = $vehicleId]/model" />
                </li>
              </ul>
            </xsl:for-each>
          </xsl:if>
        </xsl:for-each>
      </body>
    </html>
  </xsl:template>
</xsl:stylesheet>

Tulemus: Broneeringute Sõitukite id-de kuvamine

XSLT: Sõidukite andmete kuvamine

<?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="rent/vehicles/vehicle">
          <xsl:if test="hidden = 'false'">
            <h2>
              <xsl:text>Sõiduki ID: </xsl:text>
              <xsl:value-of select="@id" />
            </h2>
            <table border="1">
              <tr>
                <th>Mark</th>
                <th>
                  <xsl:value-of select="make" />
                </th>
              </tr>
              <tr>
                <th>Mudel</th>
                <th>
                  <xsl:value-of select="model" />
                </th>
              </tr>
              <tr>
                <th>Aasta</th>
                <th>
                  <xsl:value-of select="year" />
                </th>
              </tr>
              <tr>
                <th>Hind</th>
                <th>
                  <xsl:value-of select="price" />
                  €/h
                </th>
              </tr>
            </table>
          </xsl:if>
        </xsl:for-each>
      </body>
    </html>
  </xsl:template>
</xsl:stylesheet>

Tulemus: Sõidukite andmete kuvamine