XML-perustietoja aloittelijoille

Olet ehkä kuullut XML (Extensible Markup Language) -merkintäkielestä ja ehkä myös monta syytä, miksi organisaatiosi kannattaisi käyttää sitä. Mutta mikä XML oikeastaan on? Tässä artikkelissa kerrotaan XML:n perusteet, mikä se on ja miten se toimii.

Tämän artikkelin sisältö

Lyhyt katsaus merkitsemiseen, merkintöihin ja tunnisteisiin

Miksi se siis on XML-kieltä?

Oikein muotoillut tiedot

Pikakatsaus malleihin

Pikakatsaus muunnoksiin

Microsoft Office -järjestelmän XML

Lyhyt katsaus merkitsemiseen, merkintöihin ja tunnisteisiin

XML-kielen ymmärtämistä helpottaa, kun ymmärrät tietojen merkitsemisen taustalla olevan ajatuksen. Ihmiset ovat luoneet asiakirjoja vuosisatojen ajan, ja aivan yhtä kauan he ovat tehneet näihin asiakirjoihin merkintöjä. Esimerkiksi koulujen opettajat tekevät merkintöjä oppilaiden koepapereihin jatkuvasti. He esimerkiksi kehottavat oppilaita siirtämään kappaleita, selventämään virkkeitä ja korjaamaan kirjoitusvirheitä. Asiakirjan merkintöjen avulla määritetään asiakirjassa olevien tietojen rakenne, merkitys ja visuaalinen ulkoasu. Jos olet joskus käyttänyt Microsoft Office Wordin Jäljitä muutokset -toimintoa, olet käyttänyt tällaista merkintöjen tekemistä vastaavaa tietokonetoimintoa.

Tietokoneympäristössä merkintää vastaa merkintätunnisteiden lisääminen tiedostoihin. Merkinnällä tarkoitetaan minkä tahansa tietojen rakenteen, merkityksen ja – XML-kielen yhteydessä – visuaalisen ulkoasun määrittämistä tunnisteiksi kutsuttavien koodien avulla.

Tämän artikkelin HTML-koodi on hyvä esimerkki tieto koneen merkinnöistä töissä. Jos selaat sitä (Microsoft Internet Explorerissa, napsauta sivua hiiren kakkos painikkeella ja valitse sitten Näytä lähde koodi), näkyviin tulee yhdistelmä luettavaa tekstiä ja HTML (Hypertext Markup Language)-tunnisteita, kuten <p> ja <h2>. HTML-ja XML-tiedostoissa olevat Tunnisteet on helppo tunnistaa, koska niiden ympärillä on kulma sulkeita. Tämän artikkelin lähde koodissa HTML-Tunnisteet tekevät erilaisia töitä, kuten kunkin kappaleen alun ja lopun (<p> ... </p>) ja merkitsevät kunkin kuvan sijainnin.

Miksi se siis on XML-kieltä?

HTML- ja XML-tiedostot sisältävät tietoja, joiden ympärillä on tunnisteita, mutta siihen kahden kielen yhtäläisyydet päättyvätkin. HTML-kielessä tunnisteilla määritetään tietojen ulkoasu, eli esimerkiksi määritetään otsikoiden sijainti ja kappaleiden alku. XML-kielessä tunnisteilla määritetään tietojen merkitys ja se, mitä tiedot ovat.

Kun kuvaat tietojen rakenteen tai merkityksen, mahdollistat tietojen uudelleenkäyttämisen lukuisilla tavoilla. Jos sinulla on esimerkiksi lohko myyntitietoja ja jokainen lohkon nimike on selvästi erottuva, voit ladata vain tarvitsemasi nimikkeet myyntiraporttiin ja ladata muut nimikkeet kirjanpitotietokantaan. Voit toisin sanoen luoda tiedot ja merkitä ne XML-tunnisteilla yhdessä järjestelmässä ja käsitellä tietoja sitten missä tahansa toisessa järjestelmässä riippumatta sen laiteympäristöstä tai käyttöjärjestelmästä. Tämä siirrettävyys on syy, miksi XML:stä on tullut yksi suosituimmista tietojenvaihdon tekniikoista.

Muista jatkossa seuraavat asiat:

  • HTML-kieltä ei voi käyttää XML-kielen sijaan. Voit kuitenkin sijoittaa XML-tiedot HTML-tunnisteiden väliin ja näyttää ne verkkosivulla.

  • HTML on rajoitettu esimääritettyyn tunnistejoukkoon, joka on yhteinen kaikille käyttäjille.

  • XML-kielen avulla voit luoda minkä tahansa tunnisteen, jonka tarvitset tietojen ja niiden rakenteen kuvaamiseen. Oletetaan esimerkiksi, että sinun täytyy tallentaa ja jakaa tietoja lemmikkieläimistä. Voit luoda seuraavan XML-koodin:

    <?xml version="1.0"?>
    <CAT>
      <NAME>Izzy</NAME>
      <BREED>Siamese</BREED>
      <AGE>6</AGE>
      <ALTERED>yes</ALTERED>
      <DECLAWED>no</DECLAWED>
      <LICENSE>Izz138bod</LICENSE>
      <OWNER>Colin Wilcox</OWNER>
    </CAT>
    

Huomaat, että XML-tunnisteiden avulla voidaan tietää täsmällisesti, mitä tiedot ovat. Tiedät esimerkiksi, että nämä tiedot käsittelevät kissaa, ja löydät helposti esimerkiksi kissan nimen ja iän. Mahdollisuus luoda tunnisteita, joilla voidaan määrittää lähes minkä tahansa tietojen rakenne, tekee XML-kielestä ”laajennettavan”.

Tässä esitetyn koodiesimerkin sisältämiä tunnisteita ei kuitenkaan pidä sekoittaa HTML-tiedostossa oleviin tunnisteisiin. Jos esimerkiksi liität XML-rakenteen HTML-tiedostoon ja tarkastelet tiedostoa selaimessa, tulos näyttää tämänlaiselta:

Izzy Siamese 6 yes no Izz138bod Colin Wilcox

Selain ohittaa XML-tunnisteet ja näyttää vain tiedot.

Oikein muotoillut tiedot

Olet ehkä kuullut jonkun IT-osastonne henkilön puhuvan oikein muotoillusta XML-tiedostosta. Oikein muotoiltu XML-tiedosto on XML-tiedostoja koskevan, erittäin täsmällisen sääntöjoukon mukainen. Jos tiedosto ei ole kyseisten sääntöjen mukainen, XML-koodi lakkaa toimimasta. Esimerkiksi edellä olevassa koodiesimerkissä jokaisella alkutunnisteella on lopputunniste, joten esimerkki on yhden oikeaa muotoilua koskevan säännön mukainen. Jos poistat jonkin tunnisteen ja yrität avata tiedoston jossakin Office-ohjelmassa, näkyviin tulee virhesanoma ja ohjelma estää tiedoston käyttämisen.

Sinun ei välttämättä tarvitse tuntea oikein muotoiltuja XML-tiedostoja koskevia sääntöjä (vaikka ne ovatkin helppoja ymmärtää), mutta sinun on hyvä muistaa, että voit jakaa XML-tietoja eri ohjelmien ja järjestelmien kanssa vain, jos tiedot on oikein muotoiltu. Jos et voi avata XML-tiedostoa, on todennäköistä, että tiedostoa ei ole muotoiltu oikein.

XML on myös ympäristöriippumaton, eli kaikki XML-tiedostoja tukevat ohjelmat voivat lukea ja käsitellä XML-tietojasi laitteesta tai käyttöjärjestelmästä riippumatta. Oikeiden XML-tunnisteiden avulla voit esimerkiksi avata suurkoneessa luodun tiedoston pöytätietokoneessa ja käsitellä tiedostoa. Voit lisäksi käyttää samaa tiedostoa useissa Office-ohjelmissa riippumatta siitä, kuka XML-tiedoston rungon on luonut. XML-koodin hyvän siirrettävyyden takia siitä on tullut yksi suosituimmista tekniikoista tietokantojen ja käyttäjien pöytätietokoneiden väliseen tietojenvaihtoon.

XML-tiedot käytössä muissa ohjelmissa

Tunnisteilla merkityissä, oikein muotoilluissa XML-järjestelmissä käytetään yleensä kahta lisäosaa: malleja ja muunnoksia. Seuraavassa kerrotaan, miten nämä lisäosat toimivat.

Pikakatsaus malleihin

Malli-termi voi olla harhaanjohtava. Malli on vain XML-tiedosto, joka sisältää säännöt siitä, mitä XML-datatiedosto voi ja ei voi sisältää. Mallitiedostojen tiedostotunniste on yleensä .xsd, kun taas XML-datatiedostojen tunniste on .xml.

Mallien avulla ohjelmat voivat tarkistaa tiedot. Ne toimivat puitteena tietojen rakenteen määrittämiselle ja sen varmistamiselle, että tiedot ovat tekijälle ja mahdollisille muille käyttäjille mielekkäitä. Jos käyttäjä esimerkiksi kirjoittaa virheellisiä tietoja, kuten tekstiä päivämääräkenttään, ohjelma voi kehottaa käyttäjää syöttämään oikeita tietoja. Kunhan XML-tiedoston tiedot ovat tietyn mallin sääntöjen mukaisia, mikä tahansa XML:ää tukeva ohjelma voi rakenteen lukea, tulkita ja käsitellä tietoja mallin avulla. Esimerkiksi seuraavan kuvan mukaisessa tilanteessa Excel voi tarkistaa <CAT>-tiedot KISSA-mallin avulla.

Rakenteet mahdollistavat XML-tietojen jakamisen sovellusten kesken.

Malleista voi tulla monimutkaisia, ja mallien luonnin opettaminen ei sisälly tähän artikkeliin. (Lisäksi organisaatiosi IT-osaston henkilöstö osaa todennäköisesti luoda malleja.) On kuitenkin hyödyllistä tietää, miltä mallit näyttävät. Seuraavassa mallissa määritetään <KISSA> ... </KISSA> -tunnistejoukon säännöt.

<xsd:element name="CAT">  
  <xsd:complexType>  
    <xsd:sequence>
      <xsd:element name="NAME" type="xsd:string"/>
      <xsd:element name="BREED" type="xsd:string"/>
      <xsd:element name="AGE" type="xsd:positiveInteger"/>
      <xsd:element name="ALTERED" type="xsd:boolean"/>
      <xsd:element name="DECLAWED" type="xsd:boolean"/>
      <xsd:element name="LICENSE" type="xsd:string"/>
      <xsd:element name="OWNER" type="xsd:string"/>        
    </xsd:sequence>
  </xsd:complexType>
</xsd:element>

Ei haittaa, vaikka et ymmärtäisi esimerkistä kaikkea. Pidä vain mielessä nämä asiat:

  • Esimerkkimallissa olevia rivinimikkeitä kutsutaan määrityksiksi. Jos tarvitsisit lisätietoja eläimestä, kuten tiedon sen väristä tai merkinnöistä, organisaatiosi IT-osasto lisäisi todennäköisesti malliin sitä varten määrityksen. Voit muuttaa XML-järjestelmääsi liiketoimintatarpeidesi muuttuessa.

  • Määritykset mahdollistavat tietorakenteen monipuolisen hallinnan. Esimerkiksi määritys <xsd:sequence> tarkoittaa, että tunnisteiden, kuten <NAME> ja <BREED> , on oltava yllä mainitussa järjestyksessä. Määrityksillä voidaan myös hallita tietolajeja, joita käyttäjät voivat kirjoittaa. Esimerkiksi edellä oleva malli vaatii positiivisen luvun kissan iäksi ja totuusarvon (TOSI tai EPÄTOSI) STERILOITU- ja KYNNET POISTETTU -tunnisteiksi.

  • Kun XML-tiedostossa olevat tiedot ovat mallin sisältämien sääntöjen mukaisia, kyseiset tiedot ovat kelvollisia. XML-datatiedoston tarkistamista mallin pohjalta kutsutaan kelvollisuuden tarkistamiseksi. Mallien käytön suuri etu on, että ne voivat auttaa estämään tietojen vahingoittumista. Ne myös helpottavat vahingoittuneiden tietojen löytämistä, koska XML lakkaa toimimasta, kun se kohtaa ongelman.

Pikakatsaus muunnoksiin

Kuten edellä mainittiin, XML tarjoaa myös tehokkaita tapoja tietojen uudelleenkäyttöön. Tietojen uudelleenkäytön mekanismia kutsutaan XSLT:ksi (Extensible Stylesheet Language Transformation), tai yksinkertaisemmin muunnokseksi.

Voit (tai organisaatiosi IT-osasto voi) käyttää muunnoksia myös tietojen vaihtamiseen taustajärjestelmien, esimerkiksi tietokantojen, kanssa. Oletetaan esimerkiksi, että tietokantaan A tallennetaan tiedot taulukkorakenteeseen, joka sopii hyvin myyntiosaston tarpeisiin. Tietokantaan B tallennetaan tuotto- ja kulutiedot taulukkorakenteeseen, joka on räätälöity kirjanpito-osaston tarpeiden mukaan. Tietokanta B voi käyttää muunnosta tietokannan A tietojen hyväksymiseen ja kirjoittaa kyseiset tiedot oikeisiin taulukoihin.

Datatiedoston, mallin ja muunnoksen yhdistelmä muodostaa XML-perusjärjestelmän. Seuraavassa kuvassa on esitetty, miten tällaiset järjestelmät yleensä toimivat. Muunnos tarkistaa datatiedoston mallin pohjalta ja muodostaa sen sitten kaikilla käyttökelpoisilla tavoilla. Tässä tapauksessa muunnos käyttää tietoja verkkosivulla olevaan taulukkoon.

Tavanomainen XML-tiedosto rakenteineen ja muunnoksineen

Seuraava koodiesimerkki esittää yhden tavan muunnoksen kirjoittamiseen. Se lataa <KISSA>-tiedot verkkosivulla olevaan taulukkoon. Tämänkään esimerkin tarkoitus ei ole opettaa muunnoksen kirjoittamista, vaan se vain esittää muunnoksen yhden mahdollisen muodon.

<?xml version="1.0"?>
<xsl:stylesheet version="1.0"> 
<TABLE>
  <TR>
    <TH>Name</TH>
    <TH>Breed</TH>
    <TH>Age</TH>
    <TH>Altered</TH>
    <TH>Declawed</TH>    
    <TH>License</TH>
    <TH>Owner</TH>
  </TR>
  <xsl:for-each select="CAT">
  <TR ALIGN="LEFT" VALIGN="TOP">
    <TD>
      <xsl:value-of select="NAME"/>
    </TD>
    <TD>
      <xsl:value-of select="BREED"/>
    </TD>
    <TD>
      <xsl:value-of select="AGE"/>
    </TD>
    <TD>
      <xsl:value-of select="ALTERED"/>
    </TD>
    <TD>
      <xsl:value-of select="DECLAWED"/>
    </TD>
    <TD>
      <xsl:value-of select="LICENSE"/>
    </TD>
    <TD>
      <xsl:value-of select="OWNER"/>
    </TD>
  </TR>
</xsl:for-each>
</TABLE>

Tässä esimerkissä näytetään, miten yksi muunnos tyyppi voi näyttää koodattuna, mutta muista, että voit kuvata tarvitsemasi tiedot vain englanniksi. Voit esimerkiksi siirtyä IT-osastoon ja sanoa, että sinun on tulostettava tietyn alueen myynti tiedot viimeiset kaksi vuotta, "ja minun täytyy näyttää näin." IT-osastosi voi sitten kirjoittaa (tai muuttaa) muunto toimintoa, joka tekee työn.

Tämän kätevyyttä lisää vielä se, että Microsoft ja laajeneva joukko muita toimittajia luovat muunnoksia kaikenlaisia töitä varten. Jatkossa on todennäköistä, että voit ladata tarpeidesi mukaisen muunnoksen tai muuttaa jonkin muunnoksen tarkoitukseesi sopivaksi. Tämä tarkoittaa, että XML:n käytön kustannukset laskevat ajan myötä.

Microsoft Office -järjestelmän XML

Officen Professional-versioissa on laaja XML-tuki. Microsoft Office 2007:stä alkaen Microsoft Office on käyttänyt XML-pohjaisia tiedostomuotoja, kuten .docx, .xlsx ja .pptx. Koska XML tallentaa tiedot tekstimuotoisina erikoisbinaarimuodon sijaan, asiakkaasi voivat määrittää omat mallinsa ja käyttää tietojasi uusilla tavoilla maksamatta rojalteja. Lisä tietoja uusista muodoista on kohdassa Open XML-muotoilut ja tiedosto nimien Tunnisteet. Muita etuja ovat seuraavat:

  • Entistä pienemmät tiedostot. Uusi muoto käyttää ZIP-pakkausta ja muita pakkaustekniikoita ja pienentää tiedostokokoa jopa 75 prosenttia verrattuna binaarimuotoihin, joita Officen aiemmat versiot käyttävät.

  • Entistä helpompi tietojen palautus ja parempi suojaus. XML-muoto on ihmisten luettavissa, joten jos tiedosto vahingoittuu, voit avata tiedoston Microsoftin Muistioon tai muuhun tekstinlukuohjelmaan ja palauttaa ainakin osan tiedoista. Uudet tiedostot ovat myös aiempia turvallisempia, koska niissä ei voi olla VBA (Visual Basic for Applications) -koodia. Jos käytät uutta muotoa mallien luonnissa, kaikki ActiveX-komponentit ja VBA-makrot ovat tiedoston erillisessä osassa, joka on tiedoston muita osia suojatumpi. Voit myös poistaa kaikki henkilökohtaiset tiedot Asiakirjan tarkastaminen -toiminnon ja muiden työkalujen avulla. Lisä tietoja asia kirjan tarkastaminen-toiminnon käyttämisestä on artikkelissa piilotettujen tietojen ja henkilökohtaisten tietojen poistaminen asia kirjojen tarkastamalla.

Mitä sitten, jos sinulla on XML-tietoja, mutta ei mallia? XML:ää tukevissa Office-ohjelmissa on omat tapansa auttaa sinua tietojen käsittelemisessä. Esimerkiksi Excel luo johtamalla mallin, jos avaat XML-tiedoston, jossa ei ole mallia valmiina. Sen jälkeen Excel antaa sinun ladata nämä tiedot XML-taulukkoon. Voit lajitella tai suodattaa tiedot tai lisätä niihin laskutoimituksia XML-luetteloiden ja taulukoiden avulla.

Officen XML-työkalujen ottaminen käyttöön

Kehittäjä-välilehti ei ole oletusarvoisesti näkyvissä, mutta sinun pitää lisätä se valintanauhaan, kun haluat käyttää XML-komentoja Officessa:

Huomautus:  Tämä sivu on käännetty automaation avulla, ja siinä saattaa olla kielioppivirheitä tai epätarkkuuksia. Tarkoitus on, että sisällöstä on sinulle hyötyä. Kerrotko meille, oliko tiedoista hyötyä? Tästä pääset artikkelin englanninkieliseen versioon.

Tarvitsetko lisäohjeita?

Kehitä Office-taitojasi
Tutustu koulutusmateriaaliin
Saat uudet ominaisuudet ensimmäisten joukossa
Liity Office Insider -käyttäjiin

Oliko näistä tiedoista hyötyä?

Kiitos palautteesta!

Kiitos palautteestasi! Näyttää siltä, että Office-tukiedustajamme avusta voi olla sinulle hyötyä.

×