en_USet

Mis on XML, XSLT, ja mis on XML-skeem

XSLT

XSLT (Extensible Stylesheet Language Transformations) – XML-i teisendamise keel.

XSLT on nagu maagiline reeglite raamat, mis aitab üht tüüpi teavet (XML) teiseks muuta, näiteks veebileheks. See muudab andmed loetavaks ja kasutatavaks, ilma et peaksite koodi keerukusse süvenema.

XSLT lahendab andmete jagamise ja esitamise probleemi. Kujutage ette, et teil on hulk toorandmeid ja te peate need muutma arusaadavaks ja ilusaks. XSLT teebki selle maagia, muutes XML-i HTML-iks, tekstiks või muudeks formaatideks, ilma et oleks vaja kirjutada keerulist koodi nullist.

XSLT alused: esimesed sammud teisenduste maailmas

XSLT ei ole lihtsalt tehnoloogia, see on terve keel, mis võimaldab teil oma XML-andmetega „rääkida” ja need soovitud formaati teisendada. XSLT alused hõlmavad selliste elementide mõistmist nagu mallid, XPath ja XML-i teisendamine HTML-iks. Need vahendid on XSLT tõhusa kasutamise võti.

  • Mallid XSLT-s määravad, millised algse XML-i osad tuleb teisendada ja kuidas.
  • XPathi kasutatakse XML-dokumendi elementide ja atribuutide navigeerimiseks.
  • XML-i teisendamine HTML-iks on ilmselt XSLT kõige levinum rakendus, mis võimaldab luua XML-andmetel põhinevaid veebilehti.

XSLT kasutamise praktilised näited

XSLT näited võivad olla lihtsad või keerulised, kuid alustame põhilisest. Lisaks juba mainitud raamatupoe näitele võib XSLT-d kasutada paljude ülesannete automatiseerimiseks:

  • Aruannete koostamine: andmete teisendamine XML-ist loetavasse vormingusse, näiteks HTML-i või PDF-i.
  • Andmete koondamine: teabe kogumine erinevatest XML-allikatest ja nende ühendamine ühte dokumenti.
  • Andmete filtreerimine: ainult nende andmete väljavõtmine XML-ist, mis vastavad kindlatele kriteeriumidele.
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

  <xsl:output method="html" indent="yes"/>

  <xsl:template match="/">
    <html>
      <head>
        <title>Inimeste andmed</title>
      </head>
      <body>
        <h2>Isikute nimekiri</h2>
        <table border="1">
          <tr>
            <th>Nimi</th>
            <th>Perekonnanimi</th>
            <th>Sünniaasta</th>
            <th>Elukoht</th>
          </tr>
          <xsl:for-each select="//inimene">
            <tr>
              <td><xsl:value-of select="nimi"/></td>
              <td><xsl:value-of select="perekonnanimi"/></td>
              <td><xsl:value-of select="@saasta"/></td>
              <td><xsl:value-of select="@elukoht"/></td>
            </tr>
          </xsl:for-each>
        </table>
      </body>
    </html>
  </xsl:template>

</xsl:stylesheet>

XSLT rakendusalad:

  1. XML-i teisendamine teistesse formaatidesse
  • XML-i teisendamine HTML-iks veebilehtedel kuvamiseks
  • XML-i teisendamine teistesse XML-formaatidesse integreerimiseks erinevate süsteemidega
  • Tekstiformaatide genereerimine (nt CSV, JSON, lihttekst)
  1. Andmete eraldamine esitusest
    XSLT võimaldab salvestada andmeid XML-is eraldi nende visuaalsest kuvamisest, muutes stiili ja struktuuri ilma algandmeid muutmata.
  2. Aruannete ja dokumentide automaatne genereerimine
    XML-il põhinevate struktureeritud dokumentide, aruannete, arvete jne loomine.
  3. Andmete ühtlustamine ja normaliseerimine
    Erinevate XML-dokumentide teisendamine ühtsesse formaati edasiseks töötlemiseks ja analüüsimiseks.
  4. Mitmekeelsuse ja lokaliseerimise tugi
    Sisu vormindamine keele või piirkonna järgi XSLT abil.

XSLT kasutamise plussid ja miinused

XSLT õppimine võib avada teile uusi horisonte andmete töötlemisel ja esitamisel, kuid nagu iga tehnoloogia, on ka XSLT-l oma eelised ja puudused.

Plussid:

  • Võimsad andmete vormindamise ja teisendamise võimalused.
  • Paindlikkus mitme andmete esituse loomisel ühest XML-allikast.
  • Ühilduvus tulevaste versioonide ja laiendustega tänu W3C standardimisele.

Miinused:

  • Õppimise keerukus algajatele, eriti ilma XML-i ja XPath-i kasutamise kogemuseta.
  • Jõudlus võib muutuda probleemiks väga suurte andmemahtude töötlemisel.

XML

XML (Extensible Markup Language) – laiendatav märgistuskeel.

XML on laiendatav märgistuskeel, mis on mõeldud andmete struktureeritud vormis salvestamiseks ja edastamiseks.
See ei ole programmeerimiskeel, vaid ainult viis andmete kirjeldamiseks siltide abil, mis on arusaadavad nii inimestele kui ka masinatele.

XML kasutamise plussid ja miinused

Plussid:

  • Universaalsus: andmete edastamine erinevate süsteemide vahel.
  • Enesekirjeldus: koos andmetega edastatakse ka nende struktuur.
  • Loetavus: arusaadav nii inimesele kui ka masinale.
  • Paindlikkus: lihtne muuta ja laiendada ilma täieliku ümbertöötamiseta.
  • Standardiseeritus: kasutatakse rahvusvahelistes ja tööstusstandardites (nt SVG, SOAP, RSS).

Miinused:

  • Mahukas: võrreldes JSON-i või CSV-ga võtab rohkem ruumi.
  • Parsimise keerukus: nõuab süntaksi ranget järgimist.
  • Madal jõudlus: töötlemine on aeglasem, eriti suurte failide puhul.
  • Loogika toetuse puudumine: XML iseenesest ei tee midagi, vaja on välist programmi.

XMLi rakendusalad:

  • Andmete edastamine süsteemide vahel
    XMLi kasutatakse andmete vahetamiseks erinevate rakenduste ja formaatide vahel (nt veebisait ↔ raamatupidamissüsteem).
  • Veebirakendused
    XML aitab kujundada veebilehtede struktuuri ja kuvada kasutajale kohandatud andmeid (nt tooted brändi järgi).
  • Tehniline dokumentatsioon
    XML kirjeldab dokumentide struktuuri (pealkirjad, loendid, lõigud) ja seda kasutatakse automaatseks ettevalmistamiseks trükkimiseks või avaldamiseks.
  • Andmetüüp programmeerimises
    Paljud keeled (Java, Python jt) toetavad XML-i kui sisseehitatud andmetüüpi struktureeritud teabe töötlemiseks.
<?xml version="1.0" encoding="utf-8" ?>
<inimene saasta="2006" elukoht="Kherson">
				<nimi>Daria</nimi>
				<perekonnanimi>Halchenko</perekonnanimi>
</inimene>

XML-skeem

XML-skeem (XML Schema, XSD)

XML-skeem on dokument, milles kirjeldatakse XML-faili struktuuri mõningaid reegleid või piiranguid. Neid piiranguid võib kirjeldada mitmel viisil, näiteks:

  • Grammatilised reeglid elementide järjekorra määramiseks
  • Tingimused „Jah” või „Ei”, millele sisu peab vastama
  • XML-failide sisu andmetüübid
  • Andmete terviklikkuse piirangud

Näiteks võib raamatupoodide XML-skeem kehtestada järgmised piirangud:

  1. Raamatu elemendil peavad olema atribuudid title ja author.
  2. Element book peab olema lisatud elemendile category atribuudi nimega.
  3. Raamatu hind peab olema eraldi element, mis on lisatud raamatule.

XML-skeemide (XSD) rakendusalad:

  • XML-dokumentide valideerimine
    XML-struktuuri ja -andmete vastavuse kontrollimine kehtestatud reeglitele (tüüpidele, kohustuslikele elementidele).
  • Andmestruktuuri määratlemine
    Standardite loomine andmevahetuseks süsteemide vahel, et kõik kasutaksid ühtset formaati.
  • Andmete töötlemise automatiseerimine
    Aitab programmidele automaatselt töödelda XML-i, tagades õige formaadi.
  • Andmete terviklikkuse tagamine
    Andmete õigsuse ja täielikkuse kontrollimine edastamisel ja salvestamisel.
  • Andmete formaadi dokumenteerimine
    Teenib andmete struktuuri formaalse kirjeldusena arendajatele ja kasutajatele.

XML-skeemide kasutamise plussid ja miinused

Plussid:

  • Andmete struktuuri ja tüüpide selge määratlemine
  • Võimaldab kiiresti leida vigu XML-is
  • Parandab süsteemide vahelist ühilduvust
  • Toetab keerukaid valideerimisreegleid (nt valik mitme variandi hulgast)
  • Standardiseeritud ja laialdaselt toetatud formaat

Miinused:

  • Võib olla keeruline ja mahukas suuremate struktuuride jaoks
  • Nõuab täiendavaid teadmisi loomiseks ja hooldamiseks
  • Valideerimine võib aeglustada XML-i töötlemist
  • Mõnikord liigne lihtsamate kasutamisjuhtude jaoks

Kuidas luua XML-skeem (XSD)

  1. Käsitsi
  • Kirjutage XML-fail laiendiga .xsd.
  • Määrake elemendid (<xs:element>), nende tüübid (xs:string, xs:integer jne), struktuur (järjekord, pesastamine).
  • Määrake, millised elemendid on kohustuslikud ja millised valikulised.

2. Automaatselt XML-ist

  • Kasutage redaktoreid või veebiteenuseid, mis genereerivad skeemi valmis XML-failist.
  • See on mugav, kui teil on dokumendi näidis ja vaja on kiiresti saada XSD.

3. Graafilised tööriistad

  • Redaktorid nagu Oxygen XML, Visual Studio, XMLSpy võimaldavad struktuuri visuaalselt luua.
  • Need tööriistad genereerivad XSD, lihtsustades tööd.

Kuidas luua XML-skeem Visual Studios

  1. Avage XML-fail Visual Studio’s.
  2. Valige menüüribalt XML>Loo skeem.

XML-skeemi dokument luuakse ja avatakse iga XML-faili nimeruumi jaoks. Iga skeem avatakse nagu iga ajutine fail. Skeeme saab salvestada kettale, lisada projekti või kustutada.

Projekti nimele parema hiireklõpsuga -> Add -> New item

Otsingus otsime XML ja valime XML Schema ning loome

Minu projekt

  1. Tabelis värvisin kõik nimed, mis sisaldavad tähte D, punaseks.
  2. Tabelis värvisin kõik nimed, millel on vähemalt kaks last, kollaseks.

Minu ülesanne: Tee tabel, kus on näidatud vanaemad ja nende lapselapsed.

Ma tegin eraldi tabeli, kus on kirjas vanaemade nimed ja nende lapselapsed, samuti on eraldi veerus kirjas lapselaste arv.