Colin Wilcox
| Sovellukset: |
| Microsoft Office 2003 |
Olet ehkä kuullut puhuttavan XML-kielestä (Extensible Markup Language) ja syistä, joiden vuoksi organisaatiosi tulisi käyttää sitä. Mutta mitä XML tarkasti ottaen on? Tässä artikkelissa selitetään XML:n perusteet — mitä se on ja kuinka se toimii. Luettuasi tämän artikkelin voit keskustella aiheesta sujuvasti esimerkiksi oman IT-osastosi XML-asiantuntijoiden kanssa.
Jos haluat oppia lisää XML:stä, tämän artikkelin lopussa on linkkejä, jotka sisältävät lisätietoja. Muista kuitenkin, ettei sinun tarvitse olla asiantuntija ymmärtääksesi, mitä XML on,
kuinka se toimii ja miten sitä voi käyttää.
Yleiskatsaus merkintöihin, merkintäkieliin ja tunnisteisiin
Ihmiset ovat luoneet asiakirjoja jo vuosisatojen ajan, ja yhtä kauan asiakirjoihin on tehty merkintöjä. Esimerkiksi opettajat tekevät jatkuvasti merkintöjä oppilaiden kirjoitelmiin. Merkinnät kehottavat oppilaita siirtämään kappaleita, selventämään lauseita, korjaamaan kirjoitusvirheitä ja niin edelleen. Asiakirjan merkintöjen avulla voimme valvoa ja muuttaa tekstin rakennetta, merkitystä ja ulkoasua. Jos olet joskus käyttänyt Microsoft Office Wordin Jäljitä muutokset -toimintoa, olet tutustunut tietokoneen avulla tehtäviin merkintöihin.
Tietotekniikassa merkinnöistä on kehitetty merkintäkieliä. Merkintäkielet koostuvat koodeista, joita kutsutaan tunnisteiksi
(tai toisinaan tunnuksiksi) ja jotka määrittävät asiakirjan rakenteen, ulkoasun ja — XML:ää käytettäessä — tietojen merkityksen.
Tämän artikkelin HTML-koodi on hyvä käytännön esimerkki tietokoneen käyttämästä merkintäkielestä. Jos selaat koodia (kaksoisnapsauta Internet Explorerin sivua ja valitse Näytä lähdekoodi), näet sekaisin luettavaa tekstiä ja HTML-kielen tunnisteita, esimerkiksi <p> ja <h2>. HTML- ja XML-asiakirjojen tunnisteet on helppo tunnistaa niitä ympäröivistä kulmasulkeista. Tämän artikkelin lähdekoodissa HTML-tunnisteet muun muassa
määrittävät kunkin kappaleen alun ja lopun sekä merkitsevät kunkin kuvan sijainnin.
Myös XML-asiakirjat sisältävät tunnisteita, mutta muuta yhteistä näillä merkintäkielillä ei olekaan. Pidä mielessä seuraavat erot:
Voit todeta, että XML-tunnisteiden avulla on mahdollista selvittää tarkasti, mistä tiedoista on kyse. Esimerkin koodi ilmaisee, että kyseessä ovat kissaa koskevat tiedot, ja koodin perusteella tekstistä voi löytää muun muassa kissan nimen ja iän. XML-kielen laajennettavuus tarkoittaa, että voit luoda siihen käytännöllisesti katsoen mitä tahansa tietorakenteita määrittäviä tunnisteita.
Älä kuitenkaan sekoita edellisen koodiesimerkin tunnisteita HTML-tiedoston tunnisteisiin. Jos esimerkiksi liität edellisen esimerkin XML-rakenteen HTML-tiedostoon ja tarkastelet tiedostoa selaimessa, tulos näyttää tällaiselta:
Izzy Siamese 6 yes no Izz138bod Colin Wilcox
Selain jättää tunnisteet huomiotta ja näyttää vain tiedot.
Oikeanmuotoisen asiakirjan ominaisuudet
Olet ehkä kuullut IT-tukihenkilöiden puhuvan "oikeanmuotoisesta" XML-koodista. Oikeanmuotoinen XML-tiedosto on XML-koodin sääntöjen ja rajoitusten mukainen. Jos tiedostoa ei ole muodostettu sääntöjen mukaan, XML ei toimi. Edellisessä esimerkissä on muun muassa yksi oikeanmuotoisuussääntö otettu huomioon siten, että jokaiselle aloitustunnisteelle on vastaava lopetustunniste. Jos poistat jonkin tunnisteen ja yrität avata tiedoston jossain Office-ohjelmassa, näkyviin tulee virhesanoma ja ohjelma sulkee tiedoston.
Käyttäjän ei tarvitse tuntea kaikkia XML-koodin oikeamuotoisuussääntöjä (vaikka ne on helppo oppia), mutta on tärkeää muistaa, että vain oikeamuotoisia XML-tietoja voi jakaa ohjelmien ja järjestelmien kanssa. Jos XML-tiedostoa ei voi avata, se on ehkä oikeamuotoisuussääntöjen vastainen.
XML on myös käyttöjärjestelmästä riippumaton, joten mikä tahansa XML-kieltä käyttävä ohjelma voi lukea ja käsitellä XML-tiedostoa, huolimatta siitä, missä laitteistossa tai käyttöjärjestelmässä ohjelmaa käytetään. Voit esimerkiksi sopivien XML-tunnisteiden avulla käsitellä suurkoneessa olevia tietoja. Lisäksi voit käsitellä samoja tietoja useissa Microsoft Office 2003 -ohjelmissa huolimatta siitä, kuka XML-tiedoston on luonut. Näitä ohjelmia ovat esimerkiksi Access, Word, InfoPath™ ja Excel. Siirrettävyytensä vuoksi XML on yksi suosituimpia tekniikoita tiedonsiirrossa tietokantojen ja käyttäjien työasemien välillä.

Tunnisteilla varustettujen oikeanmuotoisten asiakirjojen lisäksi XML-järjestelmät käyttävät tavallisesti kahta lisäosaa: kaavioita ja muunnoksia. Seuraavissa jaksoissa on selvitetty näiden lisäosien toimintaa.
Kaavioiden yleiskuvaus
Kaavio on XML-tiedosto, joka sisältää XML-asiakirjojen kelvollista sisältöä koskevia sääntöjä. Kaaviotiedostojen tiedostotunniste on tavallisesti .xsd, kun
XML-asiakirjojen tiedostotunniste on .xml.
Ohjelmat voivat tarkistaa tietoja kaavioiden avulla. Kaaviot tarjoavat kehyksen tietojen järjestämiseen ja sen varmistamiseen, että tiedot ovat luettavissa ymmärrettävässä muodossa. Jos käyttäjä tallentaa virheellisen tiedon, esimerkiksi kirjoittaa tekstiä päivämääräkenttään, ohjelma voi kehottaa korjaamaan tiedon. Niin kauan kuin XML-asiakirjan tiedot ovat tietyn kaavion sääntöjen mukaisia, mikä tahansa XML-kieltä tukeva ohjelma voi lukea, tulkita ja käsitellä tietoja kyseisen kaavion avulla. Seuraavassa esimerkissä sekä Office Excel 2003 että Office Word 2003 voi tarkistaa kohdan <CAT> tiedot käyttämällä CAT-kaaviota.

Kaaviot voivat kehittyä laajoiksi, eikä tämän artikkelin tarkoituksena ole opettaa käyttäjiä luomaan kaavioita. (Tarvittaessa voit pyytää IT-osastoa luomaan sellaisen.) On kuitenkin hyvä tietää, miltä kaaviot näyttävät. Seuraava kaavio määrittää tunnistejoukkoon <CAT> ... </CAT> sisältyvät tunnisteet.
<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>
Sinun ei tarvitse ymmärtää esimerkkikaavion sisältöä. Pidä vain mielessä seuraavat seikat:
- Mallikaavion rivejä kutsutaan määritelmiksi. Jos haluaisit tallentaa lisätietoja eläimestä, esimerkiksi värin tai turkin kuviot, IT-osasto voisi lisätä kaavioon uuden määritelmän. Voit muuttaa XML-järjestelmää liiketoiminnan tarpeiden kehittyessä.
- Määritelmien avulla tietorakennetta voi hallita lähes rajattomasti. Esimerkiksi määritelmä
<xsd:sequence> tarkoittaa, että sen rajoittamien tunnisteiden, kuten <NAME> ja <BREED>, on oltava juuri annetussa järjestyksessä. Määritelmien avulla voidaan myös rajoittaa annettava tietolaji. Esimerkiksi edellä kuvatussa kaaviossa kissan iän on oltava positiivinen kokonaisluku ja ALTERED- ja DECLAWED-tunnisteiden arvona on oltava totuusarvo (TRUE tai FALSE).
- Kun XML-asiakirjan tiedot ovat kaavion sääntöjen mukaiset, tiedot ovat kelvolliset. Prosessia, jossa tarkistetaan XML-asiakirjan yhdenmukaisuus kaavion sääntöjen kanssa, kutsutaan (loogisesti) tarkistamiseksi. Kaavioiden käyttämisestä on se merkittävä etu, että se auttaa välttämään tietojen vahingoittumista. Kaaviot auttavat myös löytämään vahingoittuneet tiedot, sillä XML yksinkertaisesti pysähtyy havaitessaan ongelman.
Muunnoksien yleiskuvaus
Kuten mainitsimme jo aiemmin, XML:n avulla tietoja voi myös käyttää tehokkaasti uudelleen. Tietojen uudelleenkäytön mekanismia kutsutaan nimellä XSLT (Extensible Stylesheet Language Transformation), tai yksinkertaisesti muunnos. Kun esimerkiksi XML-asiakirja on tarkistettu ja todettu kaavion mukaiseksi, voit suorittaa muunnoksen, jonka tuloksena asiakirja toimii esitteenä Word
2003:ssa, ja luoda toisen muunnoksen avulla myyntiraportin Excel 2003:ssa.
Voit (tai IT-osastosi voi) myös siirtää muunnosten avulla tietoja tietokantojen ja muiden taustajärjestelmien välillä. Jos esimerkiksi tietokanta A sisältää myyntitiedot myyntiosaston vaatimusten mukaisessa taulukossa ja tietokanta B sisältää tiedot kuluista ja liikevaihdosta kirjanpidon vaatimusten mukaisessa taulukossa, voit muunnosten avulla noutaa tietoja tietokannasta A ja kirjoittaa ne sopiviin taulukoihin tietokannassa B.
Asiakirja, kaavio ja muunnos muodostavat yhdessä XML-järjestelmän perustan. Seuraavassa kaaviossa on kuvattu tällaisen järjestelmän normaali toimintatapa. Asiakirja tarkistetaan kaavion avulla ja muunnetaan tarvittaviin muotoihin muunnosten avulla. Tässä tapauksessa muunnos muotoilee tiedoista taulukon Web-sivulle.

Seuraavassa koodiesimerkissä on esitetty yksi muunnoksen kirjoittamistapa. Se lataa tunnisteen <CAT> tiedot Web-sivulla olevaan taulukkoon. Esimerkin tarkoituksena ei ole opettaa käyttäjiä kirjoittamaan muunnoksia, vaan ainoastaan näyttää esimerkki muunnoksen ulkoasusta.
<?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äkyy yhden koodatun muunnoksen ulkoasu. Voit kuitenkin kuvata suorasanaisesti IT-osastolle haluamasi muutokset, jolloin IT-osasto voi kirjoittaa tai muokata sopivan muunnoksen kyseistä tehtävää varten.
Helppokäyttöisyyttä lisää se, että Microsoft ja yhä useammat muut toimittajat luovat valmiita muunnoksia moniin tehtäviin. Tulevaisuudessa voit todennäköisesti ladata verkosta muunnoksen, joka vastaa tarpeitasi sellaisenaan tai pienin muutoksin. Täten XML:n käytöstä tulee ajan myötä yhä edullisempaa.
Office 2003:n XML-tuki
Microsoft Office 2003 Professional Edition sisältää kattavan XML-tuen. Pidä kuitenkin mielessä seuraavat seikat:
- Kukin Office 2003 -ohjelma käyttää eri työkaluvalikoimaa. Wordin käyttöliittymä ja prosessit ovat erilaiset kuin Excelin vastaavat. Tämä johtuu siitä, että prosessit, jotka toimivat Wordissa, eivät välttämättä toimi Excelissä ja päinvastoin.
- Office 2003 -ohjelmat voivat käyttää muiden toimittajien kaavioita, muunnoksia ja asiakirjoja, jos niiden XML on oikeanmuotoista.
- Jotkin Office 2003 -ohjelmat suorittavat XML-koodin taustalla ja toiset, esimerkiksi OneNote™, eivät tue sitä lainkaan. Paras tapa selvittää tietyn Office-ohjelman XML-valmius on avata ohjetoiminto ja hakea merkkijonoa XML.
Jos haluat käsitellä toisesta lähteestä peräisin olevaa XML-kaaviota ja XML-tiedostoja, tavallinen menettelytapa on liittää kaavio tiedostoon. Esimerkiksi Wordissa voit liittää kaavioita Mallit ja apuohjelmat -valintaikkunan avulla (Työkalut-valikon Mallit ja apuohjelmat -vaihtoehto). Excelissä voit käyttää XML-lähde-tehtäväruutua (Tiedot-valikon XML-alivalikko, XML-lähde-komento). Excel myös määrittää kaavion vastaavuudet, mikä tarkoittaa linkkien muodostamista laskentataulukon soluista kaavion kohteisiin. Tämä vaihe tuottaa tiedoston, jota voit päivittää tuomalla siihen tarvittaessa uusia tietoja.
Entä jos käsiteltävään XML-asiakirjaan ei liity kaaviota? XML:ää tukevilla Office 2003 -ohjelmilla on erilaisia tapoja helpottaa tietojen käsittelemistä. Jos esimerkiksi avaat Wordissa XML-asiakirjan, johon ei liity kaaviota, Word näyttää tunnisteet ja tiedot sekä antaa mahdollisuuden ottaa käyttöön muunnoksen, jos sellainen on saatavissa esimerkiksi tiedoston tekijältä tai IT-osastolta. Joka tapauksessa voit ainakin lukea tiedoston tunnisteet ja tiedot.
Jos sen sijaan avaat Excelissä XML-asiakirjan, johon ei liity kaaviota, Excel luo kaavion asiakirjan tietojen perusteella. Excel antaa sitten käyttäjän valita, ladataanko tiedot vain luku -tiedostoon vai määritetäänkö tietojen vastaavuudet Excelin luomaan XML-luetteloon. XML-luettelossa voit järjestää ja suodattaa tietoja sekä lisätä niihin laskutoimituksia.
Lisätietoja
Seuraavan jakson linkkien avulla saat tietoja XML:n käyttämisestä eri Office 2003 -ohjelmissa sekä XML-koodin kirjoittamisesta.
XML:n käyttäminen Office 2003:ssa
Huomautus Osa tämän jakson linkeistä johtaa Microsoft Office Online -sivustoon ja osa Microsoft Developer Network (MSDN) -sivustoon.
| Online-koulutus |
|
|
Yleiset
|
|
|
Access
|
|
|
Excel
|
|
|
FrontPage®
|
|
|
InfoPath
|
|
|
Visio®
|
|
|
Word
|
|
XML-koodin kirjoittaminen
XML:ää käsittelevää kirjallisuutta
Aloittelijoille
- Faster Smarter HTML & XML
- HTML & XML for Beginners
Ohjelmoijille ja IT-asiantuntijoille
- XML Step by Step, toinen painos
- Microsoft® .NET Web Services Step by Step
- XML Pocket Consultant
Kiitokset Jotkin tämän artikkelin ajatukset ovat peräisin artikkelista XML in Office 2003, onka on kirjoittanut Bill Coan Wordsite Office Automation -yhtiöstä. Bill on Word-asiantuntija ja Microsoft MVP, ja hän uskoo XML-kaavioiden ja muunnosten muuttavan merkittävästi tapaa, jolla tarkastelemme, muokkaamme ja jaamme tietoja Microsoft Office 2003:ssa. Voit tutustua Billin kirjoituksiin osoitteessa lähettää hänelle sähköpostia osoitteeseen billcoan@wordsite.com.
|