XML-perusteet. 2 Rakenteiset dokumentit. 2.1 XML-standardi

Samankaltaiset tiedostot
6 XML-työkalut 1. 6 XML-työkalut

Sisältö. XML, XHTML ja CSS XML XML. XML:n ja HTML:n ero. XML kieliä XML XHTML CSS XSL. T Hypermediadokumentin laatiminen 2002

StanForD-XML. Juha-Antti Sorsa, Tapio Räsänen, Vesa Imponen

Tutkitaan sitten HTML-dokumenttien anatomiaa, jotta päästään käsiksi rakenteisten dokumenttien käsitteistöön esimerkkien kautta.

Vaasan yliopiston toimintaa tukevat informaatiopalvelut ovat käytettävissä WWW:n kautta.

WWW-ohjelmoinnin kokonaisuus. WWW-OHJELMOINTI 1 Merkkauskielet. Merkkauskielten idea. Merkkauskielet (markup languages) Merkkauskielten merkitys

XML prosessori. XML prosessointi. XML:n kirjoittaminen. Validoiva jäsennin. Tapahtumaohjattu käsittely. Tapahtumaohjattu käsittely.

P e d a c o d e ohjelmointikoulutus verkossa

8 XSLT-muunnoskieli XSLT-muunnoskieli

3 Verkkosaavutettavuuden tekniset perusteet

Johdatus rakenteisiin dokumentteihin

Digitaalisen median tekniikat. JSP ja XML Harri Laine 1

XML / DTD / FOP -opas Internal

TIEDEJUTTUKURSSI FM VILLE SALMINEN

H T M L eli kuinka laadin itselleni päheät kotisivut. Janne Käki

Digitaalisen median tekniikat. JSP ja XML

XML-merkkaus. Merkkidata, prosessointikomennot, kommentit

Johdatus XML teknologioihin

XML, XHTML ja CSS. T Hypermediadokumentin laatiminen. Mikko Pohja

M. Merikanto 2012 XML. Merkkauskieli, osa 2

Asko Ikävalko, k TP02S-D. Ohjelmointi (C-kieli) Projektityö. Työn valvoja: Olli Hämäläinen

Verkkosivut perinteisesti. Tanja Välisalo

XML kielioppi. Elementtien ja attribuuttien määrittely. Ctl230: Luentokalvot Miro Lehtonen

HTML & CSS. HTML (HyperText Markup Language) Antti Koivisto. ! HTML on sivujen kuvauskieli.

Entiteetit erotetaan muusta tekstistä & ja puolipiste. esim. copyright-merkki näkyy sivulla

HTML5 -elementit jatkuu

Interfacing Product Data Management System

CSS - tyylit Seppo Räsänen

XML johdanto, uusimmat standardit ja kehitys

Rakenteiset dokumentit Mitä hyötyä niistä on?

H T M L eli kuinka laadin itselleni päheät kotisivut. Janne Käki

Sosiaalihuollon asiakasasiakirjojen tietomallinnus Tietomallit teknisen asiakirjamäärittelyn näkökulmasta

Toiminnalliset ja ei-toiminnalliset vaatimukset Tunnus (ID) Vaatimus Vaatimuksen

jotakin käyttötarkoitusta varten laadittu kokoelma toisiinsa liittyviä säilytettäviä tietoja

ELM GROUP 04. Teemu Laakso Henrik Talarmo

UTIFLEET-VARAUSJÄRJESTELMÄ KÄYTTÄJÄN OHJE. Gospel Flight ry

UpdateIT 2010: Editorin käyttöohje

W3C-teknologiat ja yhteensopivuus

XHTML - harjoitus. Tehtävä1: Tee xhtml tiedosto käyttäen notepad (muistio) ohjelmaa. Tiedoston tallennus notepad (muistio) ohjelmassa:

Tietokanta (database)

Tietokanta.java Luokka tarjoaa välineet tietokannan lukemiseen. Haetuista tiedoista muodostetaan kurssi- ja opetus-olioita.

XML Finland seminaari : Office 2007 XML dokumenttituotannossa

Arkkitehtuurikuvaus. Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy. Ryhmä 14

SISÄLLYSLUETTELO 1 JOHDANTO META- JA MERKINTÄKIELI...2

XML & CSS. WWW-sovellus??

Ylläpitodokumentti Mooan

Verkkojulkaiseminen Minna Väisänen. HTML5-tehtävä

Järjestelmäarkkitehtuuri (TK081702) SOA, Service-oriented architecture SOA,

Ctl160 Tekstikorpusten tietojenkäsittely p.1/15

HAKUKONEMARKKINOINTI KOTISIVUJEN PÄIVITYSOHJE

BLOGGER. ohjeita blogin pitämiseen Googlen Bloggerilla

Rakenteisen oppimateriaalin tuottaminen verkossa esimerkki Rhaptos. Antti Auer Koordinaattori, HT Jyväskylän yliopisto Virtuaaliyliopistohanke

Extensible Stylesheet Language (XSL)

Helpottuuko sovellusten välinen integraatio XML:n avulla - kokemuksia ja ratkaisuja, teknologiajohtaja Sauli Tujunen, atbusiness Communications Oyj

Tikon Web-sovellukset

1 www-sivujen teko opetuksessa

Tee html-sivu, jossa on yllä olevat kaksi taulukkoa.

XML johdatus: DTD. Jaana Holvikivi

Digitaalisen median tekniikat css tyylimääritykset

Sosiaalihuollon asiakirjastandardi kehittyy. Konstantin Hyppönen Erikoissuunnittelija Tietojenkäsittelytieteen laitos Kuopion yliopisto

Liite B. Asemakaavan mallinnus tiedonsiirtoa varten

Liite D: Poikkeamispäätösten ja suunnittelutarveratkaisujen mallinnus tiedonsiirtoa varten

NOVAPOINT Soundings Editor 3.3

XPages käyttö ja edut Jarkko Pietikäinen toimitusjohtaja, Netwell Oy

Digitaalisen median tekniikat css tyylimääritykset

Järjestelmäarkkitehtuuri (TK081702) Web Services. Web Services

Google Sites: sivun muokkaaminen (esim. tekstin, kuvien, linkkien, tiedostojen, videoiden ym. lisääminen)

HTML ja CSS. T WWW-palvelun suunnittelu Mikko Pohja

Hohde Consulting 2004

MOBISITE-TYÖKALUN SISÄLTÄMÄT TOIMINNOT

Liite A. Kantakartan mallinnus tiedonsiirtoa varten

12 Dokumenttiluokan toteuttamisesta

Google-dokumentit. Opetusteknologiakeskus Mediamylly

Suomen Akatemian verkkoasioinnin käyttöohje toimikuntien ja muiden valmistelu- ja päätöksentekoelinten jäsenille

SQL Buddy JAMK Labranet Wiki

JHS 183 Julkisen hallinnon palvelujen tietomalli ja ryhmittely verkkopalveluissa Liite 3 XML-skeeman kuvaus ja esimerkit

Luento 7: XML-ohjelmointirajapinnat

Tekstinkäsittelystä. H4: Tekstinkäsittelyn perusharjoitus. Toimisto ohjelmista

Uutisjärjestelmä. Vaatimusmäärittely. Web-palvelujen kehittäminen. Versio 1.3

9 XML perusteet

Helsingin yliopisto/tktl DO Tietokantojen perusteet, s 2000 Johdanto & yleistä Harri Laine 1. Tietokanta. Tiedosto

Ohjeita informaation saavutettavuuteen

Digitaalisen median tekniikat css tyylimääritykset Harri Laine 1

ETAPPI ry JOOMLA 2.5 Mediapaja. Artikkeleiden hallinta ja julkaisu

10 Nykyaikainen WWW-arkkitehtuuri

Sen jälkeen Microsoft Office ja sen alta löytyy ohjelmat. Ensin käynnistä-valikosta kaikki ohjelmat

Luento 12: XML ja metatieto

Pikaopas. Microsoft Word 2013 näyttää erilaiselta aiempiin versioihin verrattuna, joten laadimme tämän oppaan avuksi uusien ominaisuuksien opetteluun.

Käyttöohje. Versiohistoria: versio Mari Kommenttien perusteella korjattu versio

Harjoitus 5. Esimerkki ohjelman toiminnasta: Lausekielinen ohjelmointi I Kesä 2018 Avoin yliopisto 1 / 5

Loppuraportti. Matematiikan oppifoorumi. Carl Johansson Jukka Kariola Outi Marttila Helena Venäläinen Sampsa Virtanen. Ohjaaja.

4 Johdanto XML-maailmaan

Sivuston tiedotle-vintage.fr

Kirkkopalvelut Office365, Opiskelijan ohje 1 / 17 IT Juha Nalli

Älä vielä sulje vanhoja

Sivuston tiedotskillers.tech

Webforum. Version 15.3 uudet ominaisuudet. Päivitetty:

Osoitin ja viittaus C++:ssa

Paikkatiedot ja Web-standardit

NTG CMS. Julkaisujärjestelm. rjestelmä

Transkriptio:

4 XML-perusteet 2 Rakenteiset dokumentit Yritysten tietojärjestelmissä ei ole ollut käytössä yhtenäistä standardia, jolla voitaisiin toteuttaa sovellusten väliset liittymät, tiedon esittäminen ja tiedonsiirto. Monissa yrityksissä on useita erilaisia tietojärjestelmiä ja liittymiä sisäisiin ja ulkoisiin tietojärje s- telmiin heterogeenisten liittymien kautta. Yrityksellä voi olla käytössä tietokantojen välisiä yhteyksiä ja sovellusten välistä eräajopohjaista standardoimatonta tiedonsiirtoa. Jos kaikkien rajapintojen väliset yhteydet voitaisiin hoitaa saman XML:n avulla, niin silloin kaikkien liittymien toteutus, ylläpito ja hallinta voitaisiin tehdä samoilla säännöillä ja lii t- tymien käyttö voitaisiin laajentaa monille erityyppisille päätelaitteille. 2.1 XML-standardi W3C kehitti XML-kielen vuonna 1996 ja esitti sen virallisesti vuonna 1998 [1]. XML on kehitetty ensisijaisesti Internet-käyttöä varten. Määritys antaa käyttäjälle paljon ma h- dollisuuksia muokata XML-dokumentista tarpeisiinsa sopivan. XML-kielen suunnittelun tavoitteina ovat seuraavat asiat: kieltä tulee pystyä käyttämään Internetissä, kielen tulee olla ohjelmisto- ja laitteistoriippumaton, kielen tulee olla yhteensopiva SGML:n kanssa, sanomia muodostavien ohjelmistojen tekeminen täytyy olla helppoa, dokumenttien käsittelyyn vaikuttavien vaihtoehtoisten piirteiden määrän tulee pysyä mahdollisimman vähäisenä, dokumenttien tulee olla selkeitä ja ymmärrettäviä, määrityksen täytyy valmistua nopeasti, määritystyön täytyy olla huolellista, dokumenttien tekeminen täytyy olla helppoa ja tunnisteiden pituutta ei saa rajoittaa. Standardina XML on nuori. Se muuttuu ja vaikeuttaa XML:n tuotteistamista. Vaikka XML on kehitetty Internet-käyttöä varten, niin sitä voidaan hyvin käyttää muissakin ympäristöissä. XML-tuotteet voidaan jakaa XML-tuotteisiin ja XML-ominaisuuksia tukeviin tuotteisiin. XML-tuki on jo monissa selainohjelmissa, tietokannoissa ja varusohjelmissa. XML:ää tukeva tuote on esimerkiksi Oracle 8i tietokanta ja XML-tuotteita ovat esimerkiksi XML-editorit ja selaimet. Vaikka XML-ominaisuuksia ja XML-tuki on tällä hetkellä monessa tuotteessa, niin varsinaiset vallankumoustuotteet puuttuvat. Yr i- tysmaailmassa odotetaankin mielenkiinnolla uusia XML-tuotteita. XML-kielen sanasto, syntaksi ja dokumenttien prosessointiohjeet ovat huomattavasti yksinkertaisempia kuin SGML-kielen. SGML-standardissa on yli 600 sivua ja XML-standardissa 30 sivua. XML-standardissa ovat määritetty XML-dokumenttien merkistö ja XML-prosessorien käsittelysäännöt. XML-dokumentissa voidaan XLLlinkkikielellä (XML Linking language) määritellä linkkejä varsin monipuolisesti. Lisäksi XSL-tyylikielellä (extensible Stylesheet Language) voidaan tehdä XSLdokumentteja, joissa määritetään XML-dokumentin esitysmuoto.

2 XML-käyttöympäristö 5 Kuva 2.1 XML-käyttöympäristö XML-dokumentissa kuvataan vain tiedon talletustapa. Siinä ei määritellä XMLsanomien käsittelyä, vaan se määritetään XML-sanomien tyyppimäärityksessä DTD (Document Type Definition) tai informaatiomalleissa (schemas), joten XML:ää voidaankin käyttää standardoituun tiedonsiirtoon (kuva 2.1). Tieto voidaan tallentaa XMLesitysmuotoon ja käyttää sitä useissa eri kohteissa eri tavalla. Esimerkiksi yrityksen tuotehinnasto vo idaan siirtää asiakasyrityksen järjestelmään ja liittää siihen DTDdokumentti, jonka avulla asiakasyritys ymmärtää sanoman sisällön määrityksen. Sama XML-muotoinen tuotehinnasto voidaan siirtää suoraan asiakasyrityksen käyttäjille s e- lainkäyttöliittymään liittämällä siihen muotoiluohje XSL-dokumentti, jolloin on mahdo l- listaa siirtää tietoa hyvinkin erilaisten päätelaitteiden välillä. 2.2 XML-dokumentti XML-dokumentti koostuu sekä fyysisestä, että loogisesta rakenteesta. Fyysinen rake n- ne koostuu entiteeteistä (entities). Entiteetti on informaatiokokonaisuus, kuten es i- merkiksi dokumentti. XML-dokumentti alkaa juurientiteetistä (root), joka voi sisältää viittauksista muihin entiteetteihin. Juurientiteetti ja mahdolliset viittaukset muihin entiteetteihin ke rtovat mitkä osat ovat fyysisesti XML-dokumentin osia. Edelleen XMLdokumentin jakautuu 2 loogiseen osaan, jotka ovat esittelyosa ja sisältöosa. XMLdokumentissa merkkauksella ( markup) erotettavia osia ovat esittelyosa, elementit, kommentit, merkkiviittaukset ja prosessointiohjeet.

6 XML-perusteet Kuva 2.2 XML-dokumentti 02-02a.xml Kuvassa 2.2 on esimerkki XML-dokumentista. Ensimmäisellä rivillä on esittelyosa (prolog), jossa on XML-dokumentin versio. Esittelyosassa voi myös olla dokumentt i- tyyppimäärittely (DTD) dokumentin prosessointia varten. XML-dokumenttiin liittyvään DTD-dokumenttiin voidaan viitata XML-dokumentissa esimerkiksi URL-osoitteella, jo l- loin DTD:n määritykset haetaan XML-dokumenttia käsitellessä dynaamisesti tai DTDdokumentti voi olla osa XML-dokumenttia. Kuvassa 2.2 muut rivit kuuluvat sisält ö- osaan. Sisältöosa koostuu hierarkkisesti järjestetyistä elementeistä jotka sisältävät varsinaisen XML-dokumentin datan. Sisältöosa alkaa tunnisteella <Dokumentin nimi> ja loppuu tunnisteeseen </Dokumentin nimi>. Dokumenttiin voi kuulua erikseen ta l- lennettuja osia (entiteettejä), joihin viitataan entiteettiviittauksella. XML-dokumentit ovat joko laillisia (valid) tai hyvin muodostettuja (well formed). Lailliset dokumentit ovat myös aina hyvin muodostettuja. Laillisiin XML-dokumentteihin lii t- tyy aina dokumentin tyyppimäärittely (DTD), jossa määritellään XML-dokumentissa sallitut elementit, elementtien suhteet, elementtien järjestys ja toistettavuus. Jokaista laillista XML-dokumenttia varten voidaan luoda oma DTD. DTD:n tekijä määrittelee XML-dokumentissa käytettävien elementtien nimeämisen se sen millä tunnisteella elementit alkavat ja mihin päättyvät. Hyvin muodostettuun XML-dokumenttiin ei tarvitse liittyä DTD:tä. XML-prosessori tunnistaa dokumentin hierarkkisen rakenteen dokume n- tin elementtien alku- ja lopputunnisteiden avulla. Jos XML-dokumentti on hyvin muodostettu, niin XML-prosessori tunnistaa dokumentin rakenteen elementtitunnisteista ja käsittelee dokumentin. Hyvin muodostetuista dok u- menteista XML-prosessori voi muodostaa dokumentin sisällöstä hierarkkisen puuma i- sen rakenteen. Mikäli dokumentti on niin sanotusti laillinen käsittelee XML-prosessori dokumentin sisällön siihen liittyvän DTD:n määrityksen mukaan.

2 XML-käyttöympäristö 7 2.3 DTD-dokumentti DTD-dokumentti on XML-dokumenttiin liittyvä XML-dokumentin rakennemäärittelyn s i- sältävä dokumentti. DTD:n avulla XML-prosessori ymmärtää XML-dokumentin rake n- teen. DTD-dokumentti kuvaa käytettävät elementit, niiden nimeämisen, järjestyksen s e- kä mahdollisesti elementtien suhteet. Kaikki XML-dokumentin osat on esiteltävä DTD:ssä. DTD:n käyttö on ongelmallista sen takia, että se ei ole syntaksiltaan XMLdokumentin kaltainen, lisäksi DTD:stä puuttuu mahdollisuus määritellä tietotyyppejä. DTD:n mukainen rakennemääritys on mahdollisesti tarkoitus korvata XML 2.0 standa r- din myötä, jolloin DTD:n korvaisi Schema. Kuvan 2.3 DTD-esimerkissä on ordersanoman määritys. Määritys kertoo mitkä elementit sisältyvät sanomaan ja missä jä r- jestyksessä. 2.4 XML-skeemat Kuva 2.3 DTD-dokumentti 02-03a.dtd XML-skeemat ovat syntaksiltaan XML-dokumenttien kaltaisia mallidokumentteja, jotka liittyvät XML-dokumentteihin samalla tavalla kuin DTD:t. Skeema tukee kaikkia yleisiä tietotyyppejä. Kuvassa 2.4 on esimerkki schemasta, jossa ovat elementtien sisältämien tietojen tietotyypit ja pituudet. Näin ollen XML-dokumentin looginen rakenne voidaan määritellä DTD-dokumentissa tai Skeema-dokumentissa, joissa määritellään XMLdokumentin elementit, elementtien attribuutit, elementtien nimet ja suhteet. Dokumenttimääritykset voivat toimia esimerkiksi yritysten välisessä XML-tiedonsiirrossa määrityksenä, jonka avulla yritykset voivat ymmärtää sanomasta sen rakenteen. Tiedonsiirrossa XML-dokumentista voidaan erottaa määrittely dokumentin sisältämästä tiedosta (data). Rakenteisuutta sekä määrityksen ja esitysmuodon erottaminen vars i- naisesta XML-dokumenttien tiedosta on XML:n vahvuus. XML-dokumentti voidaan siis esittää ja sen tiedot voidaan tulkita eri tavalla mikäli näin halutaan. Esimerkiksi yrityksen XML-dokumenttiin voidaan liittää DTD-määritys ja XSL-määritys. Mikäli sanoma siirretään esimerkiksi järjestelmien välillä voidaan sen sisältö tulkita DTD-määrityksen mukaan ja mikäli XML-dokumenttia halutaan esittää käyttäjälle s e- laimen välityksellä voidaan siihen liittää XSL-määritys, jolloin selainohjelma osaa näy t- tää XML-dokumentin tiedot halutussa muodossa.

8 XML-perusteet Kuva 2.4 Skeemadokumentti 02-04a.xsd 2.5 CSS-tyylipohjat Koska XML sallii dokumenttiin sisällytettävän valinnaisen määrän merkintäkoodeja, niin selain ei voi mitenkään tietää etukäteen, miten kukin elementti tulisi näyttää. Kun d o- kumentti lähetetään käyttäjälle, mukana on lähetettävä myös tyylipohja, joka kertoo selaimelle, miten yksittäiset elementit tulee muotoilla. CSS (Cascading Style Sheet) on yhdenlainen tyylipohja, jota voidaan käyttää tähän. Alun perin HTML:ää varten kehitetty CSS määrittelee muotoiluominaisuudet, kuten fontin koon, fonttiperheen, fontin painon, kappaleiden sisennyksen, kappaleiden tasauksen ja muita tyyliominaisuuksia, joita voi käyttää yksittäisissä elementeissä. CSS esimerkiksi sallii HTML-dokumenttien määrittelevän, että kaikki <H1>-elementit tulisi muotoilla lihavoidulla 32 pisteen keskitetyllä Helveticalla. Yksittäisiä tyylejä, jotka muuttavat selaimen oletusarvoja, voidaan liittää useimpiin HTML:n merkintäkoodeihin. Useita tyylipohjia voidaan käyttää yksittäisessä dokumentissa, ja useita tyylejä voidaan käyttää yksittäisessä elementissä. Tällöin tyylit lavenevat tietyn sääntöjoukon mukaan. CSS-sääntöjä on helppoa soveltaa XML-dokumentteihin. Sinun tarvitsee vain vaihtaa niiden merkintäkoodien nimet, joihin haluat sääntöjä sovellettavan. Mozilla 5 tukee su o- raan XML-dokumentteihin yhdistettyjä CSS-tyylipohjia, vaikka nykyisellään se jumiutuu aivan liian usein. 2.6 XSL-tyylipohjat XSL (Extensible Style Language) on edistynyt tyylipohjakieli, joka on erityisesti suu n- niteltu käytettäväksi XML-dokumenttien yhteydessä. XSL-dokumentit ovat itsessään oikeanmuotoisia XML-dokumentteja. XSL-dokumentit sisältävät joukon sääntöjä, joita käytetään tiettyihin XML-elementtien mallipohjiin. XSL-prosessori lukee XMLdokumentin ja vertaa sitä tyylipohjassa oleviin mallipohjiin. Kun XSL-tyylipohjassa oleva mallipohja löytyy XML-dokumentista, niin sääntö tuottaa jonkin tekstiyhdistelmän. To i- sin kuin CSS-tyylipohjissa, tämä tulosteksti on mielivaltainen eikä se rajoitu syötteellä olleeseen tekstiin, johon vain lisätään muotoilutietoja.

2 XML-käyttöympäristö 9 CSS pystyy muuttamaan vain jonkin yksittäisen elementin muotoilun ja se pystyy tek e- mään sen vain elementti kerrallaan. XSL-tyylipohjat taas pystyvät järjestelemään ja l a- jittelemaan elementit uudelleen. Ne voivat piilottaa toisia elementtejä ja näyttää vain osan. Ne eivät valitse tyyliä ainoastaan merkintäkoodien perusteella vaan pystyvät v a- litsemaan sen myös merkintäkoodin sisällön ja attribuuttien perusteella tai sen peru s- teella, miten dokumentin merkintäkoodi sijaitsee suhteessa muihin elementteihin tai monen muun valintaperusteen mukaan. CSS:n etuna on laajempi selaintuki. XSL on kuitenkin paljon joustavampi ja ilmaisuvoimaisempi ja se sopii paremmin XMLdokumentteihin. Lisäksi XSL-tyylipohjan sisältävät XML-dokumentit voidaan helposti muuntaa HTML-dokumenteiksi CSS-tyylipohjien avulla. 2.7 URL ja URI XML-dokumentit voivat sijaita WWW-maailmassa samalla tavalla kuin HTML- ja muut dokumentit ja niihin viitataan URL:llä (Uniform Resource Locator). Vaikka URL-osoitus on hyvin ymmärretty ja tuettu, niin XML-määritys käyttää yleisempää osoitusta URI (Uniform Resource Identifier). URIT ovat yleisempi arkkitehtuuri paikantaa resursseja Internetissä, ne keskittyvät hivenen enemmän resurssiin kuin pelkkään sijaintiin. Teor i- assa URI pystyy löytämään lähimmän kopion peilatusta dokumentista tai paikantamaan dokumentin, joka on siirretty paikasta toiseen. Käytännössä URI:t ovat yhä jatkuvan tutkimuksen kohteena, ja vain URL:t ovat ainoat URI:t, joita nykyiset ohjelmistot tukevat todellisuudessa. 2.8 Xlinkit ja XPointerit Niin kauan kuin XML-dokumentit ovat Internetissä nähtävissä, on voitava viitata niihin ja käyttää linkkejä niiden välillä. Standardeja HTML-linkkimerkintäkoodeja voidaan käyttää XML-dokumenteissa ja HTML-dokumentit voidaan liittää XML-dokumentteihin. Se, pystyykö selain näyttämään tämän dokumentin, jos linkkiä seurataan, riippuu siitä, kuinka hyvin selain pystyy käsittelemään XML-tiedostoja. Useimmat nykyisistä selaamista eivät pysty käsittelemään niitä kovinkaan hyvin. XML mahdollistaa kuitenkin edistyneemmän dokumenttien linkitystavan XLinkien avulla ja dokumentin yksittäisiin osiin viittaamisen XPointerien avulla. XLinkeillä mistä tahansa elementistä voidaan tehdä linkki, ei ainoastaan A-elementistä. Linkit voivat lisäksi olla kaksisuuntaisia, monisuuntaisia tai osoittaa jopa useisiin pe i- lattuihin sivustoihin, joista lähin valitaan. XLinkit käyttävät tavanomaisia URL:eja tu n- nistamaan paikan, johon ne viittaavat. XPointereilla voidaan muodostaa linkki tietyn dokumentin tiettyyn osaan eikä yksistään koko dokumenttiin. XPointer voi viitata dok u- mentin tiettyyn elementtiin, ensimmäiseen, toiseen tai 17. vastaavaan elementtiin, e n- simmäiseen tietyn elementin lapsielementtiin ja niin edelleen. XPointerit tarjoavat d o- kumenttien välille erittäin ilmaisuvoimaiset yhteydet, jotka eivät vaadi kohteena olevan dokumentin sisältävän erillistä merkintäko odia, jotta sen osiin voitaisiin viitata.

10 XML-perusteet Toisin kuin HTML:n ankkurit, XPointerit eivät ainoastaan viittaa dokumentin johonkin kohtaan. Ne voivat viitata alueeseen. Tällöin XPointereita voidaan käyttää valitsemaan dokumentin jokin osa, jotta se voitaisiin esimerkiksi kopioida tai ladata ohjelmaan.

2 XML-käyttöympäristö 11 2.9 XML-työkalut XML-perusteisiin tutustumisen jälkeen on syytä tuntea myös XML-dokumenttien käsi t- telyyn ja katselemiseen kehitettyjä työkaluohjelmistoja. XML:n yleistymisen hidastavia tekijöitä ovat olleet ohjelmistojen puute. Suurista ohjelmistovalmistajista Microsoft, C o- rel ja Oracle ovat ryhtyneet tukemaan XML-kehitystä, mutta parannusta on tulossa pian. Standardien nopea kehitys vaikeuttaa ohjelmistokehitystä ja ohjelmistot ovat yleensä aina hieman jäljessä uusimmista standardeista. Esimerkiksi Internet Explorer 5.0 ei kykene esittämään XSLT 1.0 -standardin mukaisia muunnoksia ( transforrnation), vaan käyttää vanhempaa WD-XSL-määritystä. Silti voidaan sanoa että hyviä ja monia täysin ilmaisiakin ohjelmia XML:n soveltamiseen on tarjolla runsaasti. Yksi parhai m- mista XML-ohjelmistoresurssien linkkikokoelmista on osoitteessa www.xmlsoftware.co. Sieltä on löydettävissä linkki kaikkien tässä luvussa esiteltyjen XML-työkalujen kotisivuille. 2.9.1 Jäsennin Jäsennin (parser) on ohjelma, joka lukee XML-dokumentin rakennepuun taso kerra l- laan ja tarkistaa että dokumentti noudattaa XML:n kielioppia ja rakennemäärittelyä. Tätä prosessia kutsutaan dokumentin jäsennykseksi (parsering). Ellei dokumentti ole oikein laadittu, niin jäsennin antaa virheilmoituksen ja mahdollisesti raportin virheistä. Yksinkertaiset jäsentimet tarkistavat vain, että XML-dokumentti on syntaksiltaan oikein määritelty (well-formed). Kehittyneempi validoiva jäsennin vertaa dokumenttia siihen liitettyyn rakennemäärittelyyn (DTD tai skeema). Kun dokumentti on DTD:n tai skeeman mukainen, niin sen sanotaan olevan validi eli oikein muodostettu. Jäsennin lukee XML-dokumentin tietokoneen muistiin ja tekee sen rakenteen ja sisällön sovellusohjelman saatavaksi. Tämä tapahtuu rajapinnan välityksellä. Jäsennin ei tä l- löin välttämättä näy sitä käyttävälle sovellukselle, jolloin se voidaan helposti esim. vaihtaa uudempaan. Useissa XML-sovellusohjelmissa (editorit ja selaimet) on sisäänrakennettu jäsennin. Microsoft Internet Explorer 5 käyttää MSXML-jäsennintä. Microsoftin sivuilta voi ladata MSXML:n uusimman version. Moniin sovellusohjelmiin on mahdollista vaihtaa jäsennin käyttötarpeen mukaan. Esimerkiksi XMLwriter-editorissa on tällainen toiminto. Tällä hetkellä käytetyimpiä jäsentimiä MSXML:n lisäksi ovat mm. Apachen Xerces ja IBM:n XML4J sekä XML4C. Jäsentimet ovat yleensä ilmaisohjelmia, jotka ovat vapaasti ladattavissa verkosta. 2.9.2 Kääntäjä Kääntäjä (translator) kääntää XML-dokumentin toiseksi XML-dokumentiksi tai selaimen yms. sovellusohjelman ymmärtämään muotoon. Yleisin esimerkki on XSLT-kääntäjä,

12 XML-perusteet joka kääntää XML-dokumentin HTML:ksi XSLT-kielisen tiedoston avulla. Kääntäjässä käytetään usein myös nimitystä suoritin eli prosessori (processor).

2 XML-käyttöympäristö 13 Kääntäjä ja jäsennin on usein liitetty yhteen. Näin on esimerkiksi Microsoftin MSXML:n kohdalla. Jäsentimen ja kääntäjän sisältävää ohjelmaa kutsutaan usein myös suoritt i- meksi eli prosessoriksi. Muita yleisiä XSLT-kääntäjiä ovat Apachen Xalan ja James Clarkin XT. Kääntäjät ovat enimmäkseen ilmaisohjelmia. 2.9.3 Muotoilija Muotoilija (formatter) on ohjelma, joka muotoilee XML-dokumentille ulkoasun XSLF0- tiedoston avulla. Koska XSLFO on keskeneräinen standardi, niin muotoilijoita on vielä vähän ja niiden toiminnot ovat rajalliset. XML-dokumentille voidaan luoda ulkoasu myös CSS-muotoilijalla. Kaikissa uusimmissa WWW-selaimissa on CSS-muotoilija, joka kykenee lukemaan CSS-tiedostoja ja luomaan ulkoasun niiden perusteella. Lisäksi joi s- sakin editori- ja julkaisuohjelmistossa (InDelv ja Epie) on sisäänrakennettu muotoilija. Muotoilijoita voi ladata myös verkosta. Esimerkiksi Apachen FOP-muotoilija tekee XMLdokumentille ulkoasun XSLFO:n avulla ja esittää sen Adoben PDF-muodossa. 2.9.4 Editori XML-editorit eivät ole vielä niin kehittyneitä kuin monipuolisimmat HTML-editorit, joilla voi tehdä WWW-sivuja lähestulkoon näkemättä niiden takana olevaa koodia. Silti nii s- sä on monia koodaamista helpottavaa piirteitä ja uusimmissa editoreissa on mukana wysiwyg-ominaisuuksiakin. XML-editorit on yleensä liitetty yhteen jonkin XML-selaimen kanssa. Hyväksi havaittuja editoreita ovat XML-writer ja XMetaL. 2.9.5 Selain XML:n käyttöä julkaisutoiminnassa on haitannut erityisesti sitä ymmärtävien esityso h- jelmien eli selainten vähyys. Toisaalta XML:n alkuperäisenä tarkoituksena on ollut to i- mia vain puhtaana tietosisältönä, joka voidaan tarvittaessa muuntaa minkä tahansa selaimen ymmärtämään muotoon. Uusimmissa WWW-selaimissa on kuitenkin jo XMLtuki ja näyttää siltä että selainvalmistajat ovat erittäin kiinnostuneita kehittämään tuo t- teidensa XML-ominaisuuksia. Internet Explorer 5.x -selaimet (5.0, 5.01 ja 5.5) osaavat esittää XML-dokumentteja rakennepuuna CSS:n avulla muotoiltuina tai XSL-kielen avulla HTML-dokumenteiksi muunnettuina. Explorer 5.x:n XML-toteutus perustuu pääasiassa ulkoasun esittämiseen HTML-muodossa XSLT-kielen avulla ja sen CSS-toteutus ei ole yhtä hyvä kuin esimerkiksi Mozillassa (Netscape 6) tai Operassa. Tosin versiossa 5.5 sitä on parannettu.

Tiedostonimi: XML-02.DOC Hakemisto: D:\EVITECH\MONISTE\XML\XML02 Malli: C:\Ohjelmatiedostot\Microsoft Office\Mallit\Normal.dot Otsikko: Aihe: Tekijä: Pasi Ranne Avainsanat: Kommentit: Luontipäivä: 02.06.01 9:13 Version numero: 70 Viimeksi tallennettu: 24.07.01 13:04 Viimeksi tallentanut: Pasi Ranne Kokonaismuokkausaika: 337 minuuttia Viimeksi tulostettu: 31.07.01 11:51 Viimeisestä täydestä tulostuksesta Sivuja: 10 Sanoja: 2 720 (noin) Merkkejä: 15 504 (noin)