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



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

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

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

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

Code Camp for Girls. Sanna Nygård. Lokakuussa

Johdatus rakenteisiin dokumentteihin

XML / DTD / FOP -opas Internal

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

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

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

Verkkosivut perinteisesti. Tanja Välisalo

Kotisivuohjeet. Eteläpohjalaiset Kylät ry. Sivupohjien rakenne

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

M. Merikanto 2012 XML. Merkkauskieli, osa 2

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

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

P e d a c o d e ohjelmointikoulutus verkossa

Suvi Junes Tietohallinto / Opetusteknologiapalvelut 2012

MITÄ JAVASCRIPT ON?...3

Notepad++ on ilmaisohjelma ja sen voi ladata osoitteesta:

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

3 Verkkosaavutettavuuden tekniset perusteet

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

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

EeNet materiaalit ohje

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

NTG CMS. Julkaisujärjestelm. rjestelmä

Digitaalisen median tekniikat. JSP ja XML Harri Laine 1

OPPITUNTI 3 Ensimmäinen skripti

TIEDONHAKU INTERNETISTÄ

VIENET JULKAISUJÄRJESTELMÄLLÄ TOTEUTETTUJEN INTERNET-SIVUJEN YLLÄPITO-OHJE

Pikaohje formaatin valmistamiseen

10. ASIAKASHALLINTA CRM; Osoitetarrat, ryhmäsähköposti ja export

Ctl160 Tekstikorpusten tietojenkäsittely p.1/15

TIEDEJUTTUKURSSI FM VILLE SALMINEN

BLOGGER. ohjeita blogin pitämiseen Googlen Bloggerilla

Ohje 1 (12) Maarit Hynninen-Ojala MOODLE PIKAOHJE. Kirjautuminen Moodleen ja työtilan valitseminen

Nelli Tiedonhakuportaali Kemi-Tornion ammattikorkeakoulun elektronisiin aineistoihin. Onnistuneita hetkiä Nellin parissa!

SeaMonkey pikaopas - 1

1 JOHDANTO UUDEN ILMOITUKSEN LUOMINEN VALMIIN ILMOITUKSEN MUOKKAAMINEN YLEISTEKSTIEN KÄYTTÖ JA LUOMINEN...4

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

Oma kartta Google Maps -palveluun

Action Request System

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

Luento 12: XML ja metatieto

ARVO - verkkomateriaalien arviointiin

Laajuus 5 op Luennot: 12 x 2t Harjoitukset: 7 viikkoharjoitusta harjoitusten tekemiseen saatavissa apua 2 ryhmää / harjoitus

ejuttu ohjeet kuinka sitä käytetään.

Suvi Junes/Pauliina Munter Tietohallinto/Opetusteknologiapalvelut 2014

Tietokannan luominen:

Suvi Junes Tietohallinto / Opetusteknologiapalvelut 2012

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

Kiipulan ammattiopisto. Liiketalous ja tietojenkäsittely. Erja Saarinen

Digitaalisen median tekniikat. JSP ja XML

UpdateIT 2010: Editorin käyttöohje

Ohjeita informaation saavutettavuuteen

Suvi Junes/Pauliina Munter Tietohallinto / Opetusteknologiapalvelut 2014

Ohjeistus yhdistysten internetpäivittäjille

XML Technologies and Applications - harjoitustyö -

HTML ja CSS. Tästä se lähtee: portfolio-sivusto. Sivuston pääkansio, jonka sisällä on kaikki sivustoon kuuluvat alikansiot ja tiedostot.

Pikaopas. Valintanauhan näyttäminen tai piilottaminen Avaa valintanauha napsauttamalla välilehteä, tai kiinnitä se pysyvästi näkyviin.

Tiedonhallinnan perusteet. Viikko 1 Jukka Lähetkangas

Tiedonlouhinta rakenteisista dokumenteista (seminaarityö)

Digitaalisen median tekniikat xhtml - jatkuu

Digitaalisen median tekniikat xhtml - jatkuu Harri Laine 1

DNS- ja DHCPpalvelut. Linuxissa. Onni Kytönummi & Mikko Raussi

Sisäänkirjaus Uloskirjaus. Yritystieto

WWW-PALVELUN KÄYTTÖÖNOTTO LOUNEA OY

Moodle 2.2 pikaohje. 1. Kirjautuminen ja omat kurssit (Työtilat) 1. Mene internet-selaimella osoitteeseen


Suvi Junes Tietohallinto / Opetusteknologiapalvelut 2013

2. PEHMEÄ XHTML XRAJAHTML

Oppilaan opas. Visuaaliviestinnän Instituutti VVI Oy. Versio 0.2 ( )

Kurssien lukulistojen ylläpito Nellissä ja siirto Moodleen

Suvi Junes/Pauliina Munter Tietohallinto/Opetusteknologiapalvelut 2014

,QWHUQHWVHODLPHQNl\WWlPLQHQ±,QWHUQHW([SORUHU

KÄYTTÖOHJE / Ver 1.0 / Huhtikuu WordPress KÄYTTÖOHJE Sotkamo 2016

Visma Approval Center. Versiosaate 1.3

Facebook-sivun luominen

PATA HENKILÖSTÖ. Alasvetolistojen arvot ovat parametroitavissa. Yksiselitteiset arvot mahdollistavat luotettavat haut ja tilastoinnit.

XML-merkkaus. Merkkidata, prosessointikomennot, kommentit

Sivuston tiedotgoogle.com

Discendum Oy

Ylläpitoalue - Etusivu

Verkkokirjoittaminen. Anna Perttilä Tarja Chydenius

HAKUKONEMARKKINOINTI KOTISIVUJEN PÄIVITYSOHJE

Yhteentoimivuusalusta: Miten saadaan ihmiset ja koneet ymmärtämään toisiaan paremmin?

Blogger-blogin käyttöönotto ja perusasiat Bloggerista & bloggauksesta

TermBase NET versio (Beta)

Paikkatiedot ja Web-standardit

Hakulomakkeen täyttöohjeet

edocker PUBLISH! -paketinhallinnan käyttöohje 9/2015

ETAPPI ry JOOMLA 2.5 Mediapaja. Artikkeleiden hallinta ja julkaisu

PIKAOHJE Web of Science tietokantojen käyttöön

W3C-teknologiat ja yhteensopivuus

Siirtyminen Outlook versioon

Kirjaudu sisään palveluun klikkaamalla Omat kartat -painiketta.

Sonera Viestintäpalvelu VIP VIP Laajennettu raportointi Ohje

Tiedonsiirto- ja rajapintastandardit

Luo mediaopas Tarinatallentimella

Transkriptio:

SISÄLLYSLUETTELO 1 JOHDANTO...2 2 META- JA MERKINTÄKIELI...2 3 SGML...2 3.1 YLEISTÄ...2 3.2 RAKENNE...3 3.2.1 Elementti...3 3.2.2 DTD...3 3.2.3 Attribuutti...4 4 HTML...4 4.1 TAUSTAA...4 4.2 RAKENNE...4 4.3 HTML:N ONGELMAT...5 5 XML...6 5.1 TAUSTAA...6 5.2 OMINAISUUDET...6 5.3 RAKENNE...7 5.3.1 Yleistä...7 5.3.2 Tagit ja attribuutit...8 5.4 SOVELLUKSET...8 6 YHTEENVETO...9 LÄHTEET...11

1 JOHDANTO 2 XML (Extensible Markup Language) kehitettiin verkkosovellusten standardointiin. Verkko ei voi eikä saa laajeta hallitsemattomaksi, vaikka se onkin ehtinyt tehdä sitä aivan kiusaksi asti. XML:n tehtävänä onkin tehdä uusista verkkoon menevistä dokumenteista sellaisia, että niitä pystytään sisällön mukaan hakemaan eri kriteereillä. Muuten Internet ei ole muuta kuin valtavan iso kirjasto, missä kirjat ovat täysin sekaisin. Kyseessä ei ole kuitenkaan mikään valtataistelu verkkojen kukkulan kuninkuudesta, vaikka tämän harjoitustyön nimi siihen viittaakin. XML tulee pikemminkin toimimaan HTML:n rinnalla ja täydentämään siinä olevia puutteita. HTML-tulee olemaan hyvä joissakin sovelluksissa mutta XML-standardi tulee tarjoamaan uusia mahdollisuuksia esim. verkon palvelutarjoajille. 2 META- JA MERKINTÄKIELI Meta on etuliite, joka informaatioteknologiassa tarkoittaa allaolevaa määritelmää tai kuvausta. Metakieli on siten kielen kuvaus tai määritelmä ja metatieto tiedon kuvaus tai määritelmä. /8/ Merkintäkielen tehtävänä on ollut ennen vanhaan kertoa latojalle millaiseen muotoon ja ulkoasuun julkaistava materiaali haluttiin julkaista. Tekniikan kehittyessä syntyneet automaattiset ladontakoneet käyttivät omaa merkintäkieltään. Merkintäkielet ovat edelleen samanlaisia kuin ladontakoneen aikanakin. Merkintäkieli on erotettu sisällöstä erityisellä erottimella - yleensä ASCII-merkistön kauttaviivalla (/) tai kulmasululla (<). Erotin indikoi järjestelmälle, että perässä seuraavat merkit ovat komentoja. Komennot on mahdollista piilottaa binäärikoodiin. Ajatusta yleisestä, laitteistoriippumattomasta merkintäkielestä lähdettiin kehittämään ja ratkaisuksi saattiin geneerinen merkintäkieli, josta enemmän seuraavassa kappaleessa. /8/ 3 SGML 3.1 Yleistä Dokumentin rakenne voidaan ilmaista eri tavoin. Yleisimmillä tekstinkäsittelyohjelmilla dokumentin rakenne ilmaistaan typografian keinoin. Ihmisen silmä hahmottaa selkeästi dokumentin tasot, kun otsikot näkyvät isoilla fonteilla ja eri kappaleet ovat erotettu toisistaan tyhjillä riveillä. Tällainen rakenne sopii hyvin ihmiselle, mutta se ei sovellu tietokoneille kun puhutaan tietokantapohjaisista ratkaisuista. Ratkaisuksi tähän on kehitetty ns. geneeristä koodauskieltä. Geneerinen koodaus antaa vapauden luoda dokumenttia välittämättä miltä se lopullisesti tulee näyttää, koska varsinainen ulkoasu voidaan päättää vasta julkaisuvaiheessa. Näin samaa dokumenttia voidaan käyttää useissa eri medioissa, koska sen ulkoasua on helposti muunneltavissa. Esim. paperimuotoinen - ja elektroninen dokumentti asettavat erilaisia vaatimuksia dokumentin sivukoolle, käytettäville fonteille jne. /8, 10/

SGML (Standard Generalized Markup Language) on v. 1986 luotu kansainvälinen standardi tekstidokumenttien kuvaamiseksi geneerisellä koodauksella, mikä tarkoittaa tekstielementtien määrittelemistä sisältöriippuvaisesti. Tällöin dokumentin muoto ja sisältö erotetaan toisistaan. Koodauksessa painotetaan siis rakenteen osien merkitystä, ei ulkoista muotoa, lopullisen ulkoasun jäädessä esim. ulkosuunnittelijalle. SGML:n ensimmäiset sovellukset toteutettiin lentokoneiden manuaalien rakenteistamisessa. Geneeristä koodausta käytettäessä voi sisällön kirjoittaja identifioida jokaisen tekstielementin tyypin esimerkiksi otsikoksi, leipätekstiksi, alaviitteeksi jne. Nämä SGML-pohjaiset geneeriset tagit määrittelevät dokumentin loogisen rakenteen. SGML ei siis ole ohjelma vaan standardi, jonka avulla tietokone ymmärtää dokumentin rakennetta. Jos haluaa käsitellä SGMLkoodattua dokumenttia, on siihen oltava sopiva sovellusohjelma, joka tulee SGML:ää. /6, 10/ 3.2 Rakenne 3.2.1 Elementti SGML muodostuu hyvin määriteltyjen objektien (entity) sarjoista. Jokainen objekti voi sisältää yhden tai useamman loogisen elementin. Edelleen jokainen elementti voi sisältää tiettyjä attribuutteja, jotka kuvaavat miten elementit tulee prosessoida. SGML muodostaa muodollisen syntaksin siitä, miten objektien, elementtien ja attribuuttien suhde määräytyy. /9/ Elementti määrittelee tekstin rakenteelliset komponentit. Erityyppiset elementit nimetään erinimisiksi ja nimen tulisi kuvailla mahdollisimman hyvin sen funktiota. SGML:ssä elementit määritellään vain sen suhteilla muihin elementteihin. /9/ SGML-standardin mukaisesti merkityssä tekstissä jokainen elementti pitää olla eksplisiittisesti merkitty tai tagattu. Suosituin tapa on indikoida elementin alkua alkutagilla ja loppua lopputagilla. Alkutagi alkaa kulmasululla, jonka jälkeen tulee elementin nimi. Tagi lopetetaan kulmasulkuihin. Lopputagi alkaa myös kulmasululla, mutta sen jälkeen tulee kauttaviiva ja elementin nimi. Lopputagi loppuu alkutagin tavoin kulmasulkuun. Esimerkkinä alla oleva ote SGML-dokumentista. /2, 9/ <p>tämä on yksi kappale. Kappale erotetaan SGML:ssä muista kappaleista erillisellä tagilla.</p> Edellisessä esimerkissä <p> oli aloitustagi ja </p> oli lopetustagi yhdelle kokonaiselle kappaleelle (p=paragraph). Kappale on siis elementti dokumentissa, jonka tyyppi on p (paragraph). /9/ 3 3.2.2 DTD SGML:n joustavuus saavutetaan antamalla käyttäjän itse määritellä dokumentin loogisen rakenteen. Rakenteen määrittely tehdään kollektiivisesti DTD:ssä (Document Type Definition). DTD on kuvaus SGML- tai XML-dokumentin vaaditusta ja sallitusta rakenteesta. Siinä määritellään mm.: /5, 8/ dokumentissa sallitut elementit

4 elementtien ominaisuudet dokumentissa sallitut objektit dokumentissa sallitut notaatiot 3.2.3 Attribuutti Yleensä pelkkien elementtien avulla ei saavuteta vielä sitä vaatimustasoa, jota dokumentilta tulisi odottaa. Attribuuttien lisääminen aloitustageihin lisää dokumentissa olevaa informaation määrää. Eri dokumenteille, - osioille ja - kappaleille voidaan määritellä tarkempia määritelmiä, esim. niiden status, luokka ja/tai tekijä. Attribuutit mahdollistavat tehokkaat hakumenetelmät, joita SGML-proseessori voi hyväksikäyttää. Käyttäjä voi esim. hakea tiedostosta tietyllä hakukriteerillä haluamaansa dokumenttia, tekstinpätkää jne. Tietokone hakee haluttuja osioita juuri attribuuttien avulla. Lisäksi etsityt dokumenttipätkät voidaan esimerkiksi tulostaa erilaisilla fonteilla, jolloin ne erottuvat helposti muun tekstin joukosta. /9/ 4 HTML 4.1 Taustaa HTML on hyperdokumenttien kuvauskieli. HTML perustuu löyhästi SGML-standardiin, ollen erittäin rajoittunut ja epätäydellinen profiili SGML:stä. HTML kuvailee tageilla dokumentin sisällön ja ulkoasun. Selain vastaavasti tunnistaa tagin ja päättelee, miten sisällön elementtiä pitää käsitellä (vaihtaa fonttia, vaihtaa riviä, toteuttaa linkityksen toiseen dokumenttiin jne.). HTML on alkeellinen ja passiivinen määrittelykieli, joka soveltuu hyvin teksti- ja grafiikkainformaation siirtoon ja linkittämiseen. /8/ HTML dokumentin elementit erotetaan toisistaan tageilla, jotka voivat olla loogisesti sisäkkäin mutta eivät ristikkäin. HTML sisältää säännöt, miten dokumentti merkitään. Kukin tagi-pari, aloitustagi <tag1> ja lopetustagi </tag1>, sisältää paljon informaatiota. Se kertoo, mistä tagistä on kysymys, mikä on sen suhde muihin tageihin ja miten se pitää prosessoida. Tagissa voi komennon lisäksi olla lisämääreitä eli attribuutteja. /8/ 4.2 Rakenne Tyypillinen vain tekstiä sisältävä HTML-dokumentti voi näyttää seuraavanlaiselta: /7/ <HTML> <HEAD> <TITLE>Ostoslista</TITLE> </HEAD> <BODY> <H1>MUISTA OSTAA!</H1> <UL> <LI>Leipää <LI>Maitoa <LI>Tomaattia

<LI>Jugurttia </UL> 5 <HEAD> tagi kertoo otsikkotiedot, jotka eivät tule näkyviin selaimessa. <TITLE> määrittelee dokumentin otsikon. <H1> puolestaan määrittelee 1-tason otsikon. <UL> määrittelee listan, joka sisältää ostettavat ainekset (leipää, maitoa ) luettelomaisesti kukin tuote omassa rivissä <LI>. /7/ 4.3 HTML:n ongelmat HTML on helposti opittavaa, universaalia, yksinkertaista ja kompaktia. Se on erittäin toimiva kieli siihen tarkoitukseen, mihin se on suunniteltu. Kääntöpuolella ovat kuitenkin yksinkertaisuuden aiheuttamat puutteet. Suurimmat ratkaisemattomat ongelmat ovat: Linkit Syntaksin tarkistaminen Laajennettavuus Rakenne Sisällön tunnistaminen HTML:n yhtenä ongelmana on sen ilmaisuvoiman rajoittuneisuus. Tätä on yritetty ratkaista käyttämällä kuvia tekstin sijasta, taulukoimalla tekstiä, käyttämällä aktiivisia komponentteja ja hyväksikäyttämällä selainvalmistajien omia laajennuksia. Tällaiset konstit tuovat kuitenkin uusia ongelmia, kuten suuret, hitaasti latautuvat www-dokumentit. /3/ Linkkeihin liittyy HTML-maailmassa monia epäkohtia. Sijaintia ja nimeä muuttavat wwwdokumentit aiheuttavat sivujen ylläpitäjille vaikeuksia. HTML-kieli ei osaa etsiä uutta, päivitettyä osoitetta, vaan se yrittää sokeasti etsiä haluttua linkkiä sille ilmoitetusta osoitteesta. Usein linkin halutaan tarjota vaan lisätietoa selvitettävään aiheeseen, mutta HTML:ssä linkki vie surffaajan aina uudelle sivulle. Linkkien avulla käyttäjä on helposti eksyksissä ja lopulta kaukana varsinaisesta ydinaiheesta. Toki alkuperäiselle sivulle pääsee aina takaisin mutta informaation esittämisestä ei tällöin tule ehjää kokonaisuutta. /9/ Monet sovellusohjelmat säilövät tietoa niiden omassa formaatissa ja muuttavat sen HTMLkoodiin, kun informaatiota lähetetään verkkoon. Tällä tavalla toimiessa vain palvelimilla on koknaiskuva informaation sisällöstä, jonka tulee tehdä kokonaan muunto sovellusohjelmasta HTML-koodiin. Jokaisella kerralla, kun käyttäjä haluaa tehdä uuden haun, tullaan uudelleen rasittamaan palvelimen kapasiteettiä ja samalla kuormittamaan verkkoa. /6, 9/ HTML-dokumenttien validiutta ei tarkisteta vaan selaimet pyrkivät jättämään syntaksivirheet huomiotta. HTML-kielen laajennettavuutta rajoittaa se, ettei omia tageja voida luoda vaan on käytettävä pelkästään valmiita olevia tageja. /9/ HTML-dokumentit ovat hierarkialtaan yksitasoisia. Hakuja ei voida kohdistaa ja dokumentin sisällä navigoiminen tapahtuu dokumentin luojan ehdoilla. Usein verkossa

sijaitsevien hakuohjelmista saadaan hakujen tulokseksi useita sivuja, joista vain harva sisältää haluttua informaatiota. Tällöin tärkeimmät sivut uppoavat massaan, jolloin oikean tiedon penkominen on työlästä. /9/ 6 5 XML 5.1 Taustaa Internetin kaksi suurinta ongelmaa ovat sen hitaus ja sen suunnaton sekasorto. Vaikka yhteydet ovat tehokkaita, ovat sovellukset yleensä kankeita ja vievät siksi turhan paljon aikaa latautua ruudulle. Sekasorto kuvastaa puolestaan Internetin politiikkaa; sieltä löytyy nykyään melkein mitä vain mutta tieto on hyvin vaikeasti haettavissa. Molemmat näistä ongelmista ovat todellisia, kun käytetään Internetin suosituinta koodauskieltä, HTML:ää. Sen avulla pystytään järjestämään tekstit, kuvat ja painikkeet niiden oikeille paikoille mutta kun vaatimukset nousevat suuremmiksi kuin pelkän kotisivun luomiseen, alkaa HTML tuntua kankealta kieleltä. /1/ XML luotiin poistamalla SGML-kielen monimutkaisuus, jolloin siitä saatiin suoralinjaisempi ja yksinkertaisempi metakieli. XML on profiili SGML:stä, johon on valittu vain verkkosovellusten kannalta oleellisimmat piirteet. XML on siten huomattavasti yksinkertaisempi ja helpompi kuin SGML. XML:n suositus on vain 30 sivun pituinen kun se SGML:ssä on 500 sivuinen. 75-90 prosenttia nykyisistä SGML-sovelluksista on siirrettävissä ongelmitta XML-pohjaisiksi. Tämän seurauksena SGML:n käyttö tulee supistumaan vähäiseksi. /2, 5/ HTML on sovelluskieli verkkojulkaisuun, joka pohjautuu SGML-standardiin. XML vastaavasti toimii SGML:n kanssa samassa kerroksessa, jolloin XML on SGML:n yksi muoto, joka myöskin on standardi eikä kieli. /1, 5/ 5.2 Ominaisuudet XML:n tarve nousi kun huomattiin, ettei HTML pysty tarjoamaan sitä interaktivisuutta, mihin Internetissä olevat palvelut ovat menossa. XML tekee tiedostolle sen mitä Java on tehnyt ohjelmille; tiedostosta tulee sekä käyttöjärjestelmäriippumaton että ohjelmariippumaton. /3/ HTML-kieli on kankeaa, koska siinä on olemassa vain määrätty määrä tageja, kun XML:ssä voidaan itse luoda rajaton määrä uusia tageja ja attribuutteja. HTML-kielessä jokaisella tagilla on olemassa oma merkityksensä, mutta XML-kielessä tagien merkitykset pitää itse luoda. XML-koodattu dokumentti on myös sellaisenaan valmis tietokantaan, jolloin kyseistä dokumenttia voidaan hakea sieltä eri hakukriteereillä. XML-koodatut tiedostot ovat ideaalisia tietokantapohjaisiin sovelluksiin, koska sen hierarkkinen rakenne mahdollistaa monet tietokantasovellukset. HTML:llä koodattuun dokumenttiin ei pystytä kohdistamaan hakuja, koska teksti ei ole muuta kuin tyhmiä kirjaimia toistensa perässä. /4/ Lisäksi XML lisää nopeutta, koska jos sivussa muuttuu vain osa tiedoista, ei koko sivua tarvitse ladata uudestaan (vrt. HTML), vaan vain muuttuva data. Lisäksi hakukriteerit

tulevat XML:n myötä laajentumaan. Jos käyttäjä haluaa esimerkiksi saada matkatoimistolta tiedot kaikista lennoista Lontoon ja New Yorkin välillä jonkin tietyn viikonlopun aikana, tulee kyseinen henkilö vastaanottamaan www:n kautta lomakkeen, joka sisältää monta sivua tietoa eri lennoista. Yleensä kyseistä tiedostoa halutaan jalostaa antamalle sille joitakin kriteereita (hintoja, lentoyhtiöitä jne.). Joka kerta kun halutaan tehdä uusi haku, tulee käyttää matkatoimistossa olevan palvelimen - sekä verkon resursseja hyväkseen. Jos aikataulut saataisiin XML-koodattuna, voitaisiin kaikki haut ja muokkaukset tehdä paikallisesti omassa koneessa. Tämä luonnollisesti nopeuttaa hakuja kun pullonkaulana ei ole enää verkko ja serverit, vaan ainoastaan oman tietokoneen resurssit. XML-koodattu dokumentti mahdollistaa siis tiedon prosessoinnin tekemisen paikallisesti. /1/ Myös HTML-kielestä tutut hyperlinkit saavat uusia muotoja XML:n myötä. XML:ssä hyperlinkki alta voi löytyä monta eri vaihtoehtoja. Linkin ei tarvitse välttämättä ladata uutta sivua, vaan se voi linkittää auki olevaan dokumenttiin jonkun lisäinformaatiota tuottavan kuvan, tekstinpätkän tai taulukon. Sivulta ei siis välttämättä tarvitse poistua kokonaan. Lisäksi linkkitiedostot päivittyvät XML:ssä automaattisesti tietokantojen avulla, eikä sivut enää huku niiden osoitteen vaihtuessa. 7 5.3 Rakenne 5.3.1 Yleistä Tekninen termi, jolla XML:ssä määritellään tekstin rakenteellinen komponentti on elementti. Eri elementit erotetaan toisistaan merkitsemällä selvästi niiden aloitus- ja lopetuskohdat. Jokaisen elementin tehtävä määritellään erikseen DTD:n (Document Type Definition) avulla. /4/ Tyypillinen XML-koodattu kortisto voi näyttää seuraavalta: /4/ <memo> <to>all staff</to> <from>martin Bryan</from> <date>5 th November</date> <subject>cats and Dogs</subject> <text>please remember to keep all cats and dogs indoors tonight.</text> Seuraavassa esimerkkidokumentissa sisältö (<body>) on jaettu useisiin tasoihin. div1 on ensimmäinen taso ja div2 tämän tason alataso jne. <document> <body> <div1><ensimmäinen taso> <head>otsikko</head/ <p>olipa kerran >/p> <div2><toinen taso> <head>toisen tason otsikko</head> <p>tähän lisää </p> </div2><toisen tason loppu>

</div1><ensimmäisen tason loppu> </body> </document> 8 Tasoihin jaosta seuraa, ettei HTML:n tavoin tarvitse määrittää 6 eri elementtityyppiä otsikoille. Otsikolle on sen sijaan määritelty yksi elementtityyppi (<head>), jota käytetään kaikilla tasoilla. Kontekstin ansiosta eri tasojen otsikot on kuitenkin erotettavissa toisistaan. /7/ 5.3.2 Tagit ja attribuutit XML:ssä tageilla kerrotaan mitä informaatio on, eikä miltä se näyttää. Esimerkiksi tilattaessa paitaa webin kautta, ei hakukriteereinä käytetä miltä tekstikentät näyttävät, kuten HTML:ssä olisi, vaan XML mahdollistaa todelliset haut hinnan, mallin, koon ja värin mukaan. Näin paitoja myyvä yritys voi suoraan päivittää on-line tietoa heidän tietokantaan, josta he voivat seurata miten eri tuotteita ja malleja myydään. /1/ Jotta pystytään määrittelemään omat tagit, tulee ensin luoda DTD (Document Type Definition), joka määrää eri tagien suhteet toisiinsa. Edellisen esimerkin (<memo>) tagit voitaisiin määritellä seuraavanlaisesti: /4/ <!DOCTYPE memo [ <!ELEMENT memo (to, from, date, subject) > <!ELEMENT to (#PCDATA) > <!ELEMENT from (#PCDATA) > <!ELEMENT date (#PCDATA) > <!ELEMENT subject (#PCDATA) > ]> Tämä malli kertoo, että memo tiedosto sisältää neljä erilaista elementtiä (to, from, ) Attribuuttien avulla voidaan elementeille luoda lisämääritteitä. Voidaan esim. määrätä, että <subject> elementti näytetään ruudulla lihavoituna: /4/ <!ATTLIST subject form= bold > Kuvan hakeminen XML-dokumenttiin joltakin muulta www-sivulta onnistuu seuraavan komennon avulla: /4/ <!ENTITY fig1 SYSTEM http://www.myco.com/figures/fig1.gif NDATA GIF > 5.4 Sovellukset Täytyy muistaa, että XML-pohjainen teknologia on vasta määrittelyvaiheessa. Useat XMLstandardin sovellukset ovat tulossa vuoden 1999 aikana. Ennen kuin voidaan luoda uusi XML-kieli, täytyy sopia seuraavista perusasioista: /1, 7/

9 mitä tagejä sallitaan miten elementit ovat verkottuneina toisiinsa miten elementtejä prosessoidaan Kielen sanasto ja rakenne pohjautuu yleensä DTD:en (Document Type Definition), joka on kuvaus vaaditusta ja sallitusta rakenteesta. /5/ XML-pohjaiset hyperlinkit voidaan luoda XLink -sovelluksella (XML Linking Language). Se määrittelee, miten linkki merkitään ja miten siihen voidaan liittää linkin merkitystä ja käyttäytymistä kuvaavia tietoja. XLinkin avulla haluttu sivu (linkki) löytyy, koska osoite tarkistetaan aina palvelimelta, eikä HTML-kielestä tuttua virheilmoitusta 404 File Not Found tule esiintymään käytettäessä tätä sovellusta. Lisäksi XLink mahdollistaa käytettävän erilaisia ja erityyppisiä linkkejä. Alkuperäiseltä sivulta ei välttämättä tarvitse poistua, vaan uudelta sivulta voidaan vaan hakea vaan jokin sen osa (taulukko, tekstinpätkä, kuva) ja linkittää se auki olevaan osoitteeseen. /1, 5/ XML:n avulla ei ole mahdollista määritellä dokumentin ulkoasua, eli niitä tyylejä miten dokumentti näkyy ruudulla ja paperilla. Tämä voidaan katsoa eduksi, koska dokumentti voidaan kirjoitta kerran ja ulkoasu suunnitellaan erikseen riippuen käytettävästä mediasta. Standardi XML-sivujen ulkoasun määrittelemiselle on XSL (Extensible Stylesheet Language). XSL on siis XML-dokumenttien tyylilomakkeiden esityskieli, joka koostuu kahdesta osasta: XML-dokumenttien muunnoksista sekä muotoilusanastoista. /1, 5/ 6 YHTEENVETO SGML luotiin kansainväliseksi standardiksi tekstidokumenttien kuvaamiseksi geneerisellä koodauksella. Geneerisessä koodauksessa dokumentin muoto ja sisältö erotetaan toisistaan, jolloin jokainen tekstielementti voidaan koodata eri tyyppiseksi (leipäteksti, otsikko, alaviite jne.). Eri tekstityypit ilmaistaan tagien avulla, jotka määräävät dokumentin loogisen rakenteen. Kahden tagin välistä aluetta (esim. yksi kappale) kutsutaan elementiksi. Se määrittelee tekstin rakenteelliset komponentit. Erityyppiset elementit nimetään erinimisiksi ja nimen tulisi kuvailla mahdollisimman hyvin sen funktiota. Attribuutit tuovat dokumenttiin lisäinformaatiota, koska ne mahdollistavat tehokkaat hakumenetelmät, joita SGMLprosessori voi hyväksikäyttää. HTML on hyperdokumenttien kuvauskieli, joka perustuu löyhästi SGML-standardiin. HTML on alkeellinen ja passiivinen määrittelykieli, joka soveltuu hyvin teksti- ja grafiikkainformaation siirtoon ja linkittämiseen. HTML on helposti opittavaa, universaalia, yksinkertaista ja kompaktia. Sen avulla ei kuitenkaan enää pystytä tarjoamaan niitä palveluja, joita verkkosovelluksilta halutaan saada aikaiseksi. Jos kaikki dokumentit koodataan Internettiin HTML-kielellä, on tuloksena suuri sekasorto; tietoa löytyy mutta se on vaikeasti haettavissa. XML luotiin poistamalla SGML-kielen monimutkaisuuden, jolloin siitä saatiin suoralinjaisempi ja yksinkertaisempi metakieli. XML on profiili SGML:stä, johon on

valittu vain verkkosovellusten kannalta oleellisimmat piirteet. XML toimii eri tasolla kuin HTML. XML:ssä voidaan luoda määrättömästi uusia tageja, jonka vuoksi niistä voidaan tehdä juuri dokumenttiin sopivia. XML-kieli sopii myös sellaisenaan tietokantaan, josta sitä voidaan hakea erilaisilla hakukriteereillä, kun taas HTML:llä koodattuun dokumenttiin ei pystytä kohdistamaan hakuja, koska teksti ei ole muuta kuin tyhmiä kirjaimia toistensa perässä. XML siirtää myös tiedon prosessoinnin verkkoservereiltä lokaaliseen tietokoneeseen, jonka johdosta verkkoa ja siellä olevia servereitä ei enää tarvitse rasittaa. Lisäksi XML mahdollistaa useiden hakukriteerien käytön. XML:ssä linkin ei välttämättä tarvitse viedä käyttäjää uudelle sivulle (vrt. HTML), vaan linkit (tekstinpätkä, taulukko, kuva) voidaan tuoda auki olevaan dokumenttiin. Tällöin käyttäjän ei tarvitse välttämättä hyppiä sivusta toiseen saadakseen lisäinformaatiota haluamalleen asialle. Linkkitiedostot myös päivittyvät XML:ssä automaattisesti tietokantojen avulla, eikä sivut enää huku niiden osoitteen vaihtuessa. XML-standardille ollaan koko ajan määrittelemässä uusia sovelluksia, joista esimerkkejä on mm.: XLink ja XSL. XLink määrittelee, miten linkki merkitään ja miten siihen voidaan liittää linkin merkitystä ja käyttäytymistä kuvaavia tietoja. XSL on vastaavasti XMLdokumenttien tyylilomakkeiden esityskieli. 10

11 LÄHTEET /1/ Bosak, J. Bray, T. XML and the Second-Generation Web. URL://http:www.sciam.com/1999/0599issue/0599bosak.html. /2/ Bosak, J. XML- Questions & Answers. URL://http:www.isgmlug.org/n3-1/n3-1- 18.htm. /3/ Bosak, J. Media-Independent Publishing: Four Myths about XML. URL://http:www.oasis-open.org/cover/bosak-4myths.html. /4/ Bryan, M. An Introduction to the Extensible Markup Language (XML). URL://http:www.personal.u-net.com/sgml/xmlintro.htm /5/ Bäck, A. XML:n läpimurto on käsillä. GT-lehti 8/1998. S. 4-8. /6/ Cavuoto, J. Beale, S. Guide to Desktop Publishing. GATF (Graphic Arts Technical Foundation), USA 1995. 200 s. /7/ Karttunen, S. Millaisia ovat painoalan verkkosovellukset? Painomaailma 1/1999. S. 28-31. /8/ Kerttula, E. Multimedialle tiedon valtatielle. Edita, Helsinki 1997. 396 s. /9/ Light, R. Presenting XML, first edition. Sams.net Publishing, USA 1997. 415 s. /10/ Löppönen, J-M., Mäkitalo, P., Ohvo, P. Aut-75.109 Tekninen dokumentointi. Graafisen tekniikan laboratorio, Otaniemi 1995. 70 s.