Meeskond "asdasdasd"

From ICO wiki
Revision as of 22:29, 22 March 2013 by Kkadalip (talk | contribs) (XML Automaatgenereeritud skeemifail)

LIIKMED

  • Karl Kadalipp
  • Robert Pärn

Kodutöö XML osa

Teemaks valisime relvakataloogi/e-poe, kus hoitakse informatsiooni erinevate käsituli- ja külmrelvade kohta.

XML

Kirjeldus:

Meie .xml faili juurelemendiks on <relvad>, mis jagunevad omakorda kaheks: <käsitulirelvad> ja <külmrelvad>. Seda selleks, et oleks selgem eristada. <käsitulirelvad> jagunevad omakorda <püstolid>, <automaadid>, <pumppüssid> jne. Vastavalt on nende sees juba individuaalsed relvamudelid, näiteks element <püstol>, mille sees on antud relva tehnilised spetsifikatsioonid ning eripärad. Ka külmrelvad jagunevad alamliikidesse nagu <löögirelvad>, <torkerelvad> jne ning sisaldavad mõningaid andmeid. Atribuudid on tulirelvade alamliikide elementidel mõningad andmed, mis on ühised kõikidel tulirelvadel.

Link:

XML DTD

Kirjeldus:

.............

Link:

XML Skeemifail (DTD põhjal)


XML Automaatgenereeritud skeemifail

................

XML Transformatsiooni failid:

Esimene

See transformatsioonifail väljastab tulemuse html kujul .htm faililaiendiga failina ja on mõeldud selleks, et XML failist välja sorteerida ja kuvada kõik XML-i kirjutatud andmed võimalikult loetaval ja viisakal kujul.

<?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="/">
    <!--http://stackoverflow.com/questions/825831/check-if-a-string-is-null-or-empty-in-xslt-->
    <html>
      <head>
        <title>
          RELVAKATALOOG 2013 VR2
        </title>
      </head>
      <body>
        <h1>Relvakataloog 2013</h1>
        <ol>
          <xsl:for-each select="relvad/käsitulirelvad">
            <h2>
              Selles nimekirjas on <xsl:value-of select="name()"/><xsl:text>:</xsl:text>
            </h2>
            <xsl:for-each select="*">
              <xsl:sort select="name()" order="ascending"/> <!--see siin sorteerib relvagrupid tähestikulisse järjekorda-->
              <h3>
                Järgnevad relvad on <xsl:value-of select="name()"/><xsl:text>:</xsl:text>
              </h3>
              <xsl:for-each select="*">
                <li>
                  <h3>
                    <xsl:value-of select="name()"/>
                    <xsl:text> </xsl:text>
                    <xsl:value-of select="mudel"/>
                  </h3>
                </li>
                <xsl:if test="@laskmisrežiimid">
                  <b>Laskmisrežiimid: </b>
                  <xsl:value-of select="@laskmisrežiimid"/>
                  <br></br>
                </xsl:if>
                <xsl:if test="@päästikutüüp">
                  <b>Päästikutüüp: </b>
                  <xsl:value-of select="@päästikutüüp"/>
                  <br></br>
                </xsl:if>
                <xsl:if test="@rauatüüp">
                  <b>Rauatüüp: </b>
                  <xsl:value-of select="@rauatüüp"/>
                  <br></br>
                </xsl:if>
                <xsl:if test="tootjad/*">
                  <b>Tootjad: </b>
                  <br></br>
                  <ul>
                    <xsl:for-each select="tootjad/*">
                      <li>
                        <xsl:value-of select="."/>
                      </li>
                    </xsl:for-each>
                    <br></br>
                  </ul>
                </xsl:if>
                <xsl:if test="päritolu-maad/*">
                  <b>Päritolu-maad: </b>
                  <br></br>
                  <ul>
                    <xsl:for-each select="päritolu-maad/*">
                      <li>
                        <xsl:value-of select="."/>
                      </li>
                    </xsl:for-each>
                    <br></br>
                  </ul>
                </xsl:if>
                <xsl:if test="kaliibrid/*">
                  <b>Kaliibrid: </b>
                  <br></br>
                  <ul>
                    <xsl:for-each select="kaliibrid/*">
                      <li>
                        <xsl:value-of select="."/>
                      </li>
                    </xsl:for-each>
                    <br></br>
                  </ul>
                </xsl:if>
                <xsl:if test="pikkused/*">
                  <b>Pikkused: </b>
                  <br></br>
                  <ul>
                    <xsl:for-each select="pikkused">
                      <xsl:if test="täispikkus or rauapikkus">
                        <xsl:for-each select="*">
                          <li>
                            <b>
                              <xsl:value-of select="name()"/>
                              <xsl:text> (</xsl:text>
                              <xsl:if test="tüüp">
                                <xsl:for-each select="tüüp">
                                  <xsl:if test=".">
                                    <xsl:value-of select="."/>
                                  </xsl:if>
                                </xsl:for-each>
                              </xsl:if>
                              <xsl:if test="not(tüüp)">
                                <xsl:text>standardkonfiguratsioonis</xsl:text>
                              </xsl:if>
                              <xsl:text>):</xsl:text>
                            </b>
                          </li>
                          <xsl:for-each select="*">
                            <!--(tüüp?, kaliibritüüp*, vintrauatüüp?, väärtus?, ühik?)-->
                            <ul>
                              <xsl:if test="name() != 'tüüp'">
                                <li>
                                  <b>
                                    <xsl:value-of select="name()"/>
                                    <xsl:text>: </xsl:text>
                                  </b>
                                  <xsl:value-of select="."/>
                                </li>
                              </xsl:if>
                            </ul>
                          </xsl:for-each>
                        </xsl:for-each>
                      </xsl:if>
                    </xsl:for-each>
                  </ul>
                </xsl:if>
                <xsl:if test="kaalud/*">
                  <b>Kaalud: </b>
                  <br></br>
                  <ul>
                    <xsl:for-each select="kaalud">
                      <xsl:if test="tühikaal or täiskaal">
                        <xsl:for-each select="*">
                          <li>
                            <xsl:text>Kaalutüüp - </xsl:text>
                            <b>
                              <xsl:value-of select="name()"/>
                            </b>
                          </li>
                          <xsl:for-each select="*">
                            <!--(tüüp?, kaliibritüüp*, vintrauatüüp?, väärtus?, ühik?)-->
                            <ul>
                              <xsl:if test=".">
                                <li>
                                  <b>
                                    <xsl:value-of select="name()"/>
                                    <xsl:text>: </xsl:text>
                                  </b>
                                  <xsl:value-of select="."/>
                                </li>
                              </xsl:if>
                            </ul>
                          </xsl:for-each>
                        </xsl:for-each>
                      </xsl:if>
                    </xsl:for-each>
                  </ul>
                </xsl:if>
                <xsl:if test="salved/*">
                  <b>Salved: </b>
                  <br></br>
                  <ul>
                    <xsl:for-each select="salved/*">
                      <li>
                        <xsl:text>Salv, kuhu mahub </xsl:text>
                        <xsl:if test="mahutavus">
                          <xsl:value-of select="mahutavus/väärtus"/>
                          <xsl:text> </xsl:text>
                          <xsl:value-of select="mahutavus/ühik"/>
                          <xsl:if test="mahutavus/tüüp">
                            <xsl:text> (</xsl:text>
                            <xsl:value-of select="mahutavus/tüüp"/>
                            <xsl:text>) </xsl:text>
                          </xsl:if>
                        </xsl:if>
                        <xsl:if test="not(mahutavus)">
                          <xsl:text>teadmata arv</xsl:text>
                        </xsl:if>
                        <xsl:if test="kaliibritüüp">
                          <xsl:text> kaliibriga </xsl:text>
                          <xsl:value-of select="kaliibritüüp"/>
                          <xsl:text>.</xsl:text>
                        </xsl:if>
                        <xsl:if test="not(kaliibritüüp)">
                          <xsl:text> relva standardkaliibriga.</xsl:text>
                        </xsl:if>
                      </li>
                    </xsl:for-each>
                    <br></br>
                  </ul>
                </xsl:if>
                <br></br>
              </xsl:for-each>
            </xsl:for-each>
          </xsl:for-each>
        </ol>
        <br></br>
        <br></br>
        <ol>
          <xsl:for-each select="relvad/külmrelvad">
            <h2>
              Selles nimekirjas on <xsl:value-of select="name()"/><xsl:text>:</xsl:text>
            </h2>
            <xsl:for-each select="*">
              <h3>
                <u>
                  Järgnevad relvad on <xsl:value-of select="name()"/>
                  <xsl:text>: </xsl:text>
                </u>
              </h3>
              <xsl:for-each select="*">
                <li>
                  <xsl:if test="nimetus">
                    <font size="4.5">
                      <b>
                        <xsl:value-of select="nimetus"/>
                      </b>
                    </font>
                    <br></br>
                  </xsl:if>
                  <xsl:if test="tootja">
                    <b>Tootja: </b>
                    <xsl:value-of select="tootja"/>
                    <br></br>
                  </xsl:if>
                </li>
                <br></br>
              </xsl:for-each>
            </xsl:for-each>
          </xsl:for-each>
        </ol>
      </body>
    </html>
  </xsl:template>
</xsl:stylesheet>

Teine

See transformatsioonifail väljastab tulemuse html kujul .htm faililaiendiga failina ja on mõeldud selleks, et XML failist välja sorteerida ja kuvada esimeses nimekirjas kõik käsitulirelvad (tulirelva tüübi tekst on värvitud punaseks) ning teises nimekirjas külmrelvad (külmrelva tüübi tekst on värvitud siniseks).

<?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:apply-templates/>
      </body>
    </html>
  </xsl:template>

  <xsl:template match="käsitulirelvad">
    <h2>
      <u>Pauguvardad ja teised lahedad ridvad nimekirjast:</u>
    </h2>
    <h4>
      <xsl:for-each select="*">
        <xsl:for-each select="*">
          <span style="color:#FF0000">
            <xsl:value-of select="name()"></xsl:value-of>
          </span>
          <xsl:text> </xsl:text>
          <xsl:value-of select="mudel"/>
          <br />
        </xsl:for-each>
      </xsl:for-each>
    </h4>
    <br />
  </xsl:template>

  <xsl:template match="külmrelvad">
    <h2>
      <u>Muud niidukvibud nimekirjast:</u>
    </h2>
    <h4>
      <xsl:for-each select="*">
        <xsl:for-each select="*">
          <span style="color:#0000FF">
            <xsl:value-of select="name()"></xsl:value-of>
          </span>
          <xsl:text> </xsl:text>
          <xsl:value-of select="nimetus"/>
          <br />
        </xsl:for-each>
      </xsl:for-each>
    </h4>
    <br />
  </xsl:template>
</xsl:stylesheet>

Kolmas

See transformatsioonifail väljastab tulemuse html kujul .htm faililaiendiga failina ja on mõeldud selleks, et XML failist välja sorteerida ja kuvada esimeses alamsektsioonis USA-s toodetavad käsitulirelvad ning teises alamsektsioonis 9mm kaliibriga käsitulirelvad.

<?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"/>
  <!--relvad USA-st ja Saksamaalt-->
  <xsl:template match="/">
    <html>
      <body>
        <h2>USA-s toodetakse käsitulirelvadest:</h2>
        <xsl:for-each select="*/käsitulirelvad/*/*/päritolu-maad">
          <xsl:if test="päritolu-maa = 'USA'">
            <xsl:value-of select="../mudel"/>
            <xsl:text>, </xsl:text>
          </xsl:if>
        </xsl:for-each>
        <xsl:text>.</xsl:text>
        <h2>9mm kaliibriga käsitulirelvad:</h2>
        <xsl:for-each select="*/käsitulirelvad/*/*/kaliibrid">
          <xsl:if test="kaliiber/väärtus = '9' or kaliiber/väärtus = '9x19' and (contains(kaliiber/ühik, 'mm') or contains(kaliiber/tüüp, 'mm'))"> 
            <xsl:value-of select="../mudel"/>
            <xsl:text>, </xsl:text>
          </xsl:if>
        </xsl:for-each>
        <xsl:text>.</xsl:text>
      </body>
    </html>
  </xsl:template>
</xsl:stylesheet>

Teenus

...

Valminud teenuse meetodid:

  • ... - ...

Valminud töö saab kätte lingilt: ...

Klientrakendus

Valminud klientrakenduse saab allalaadida lingilt: ...

Klientrakendus on ...

Logi

22.03.2013

  • Lõime WIKI lehe
  • Esitasime ära XML, DTD, Schemad, XSL-id (3 erinevat)

23.03.2013

  • ...

24.03.2013

  • ...

25.03.2013

  • ...

26.03.2013

  • ...

27.03.2013

  • ...

28.03.2013

  • ...