4 Johdanto XML-maailmaan

Koko: px
Aloita esitys sivulta:

Download "4 Johdanto XML-maailmaan"

Transkriptio

1 Johdanto XML-maailmaan 4 Johdanto XML-maailmaan Rakenteisia dokumentteja ei voi "ymmärtää" osamaatta niiden perustekniikkaa. Niinpä seuraavaksi kohdistamme huomion tekniikoihin. Rakenteisten dokumenttien yleisiin menetelmiin palaamme taas siten kun osaamme esim. (teknisesti) määritellä dokumenttityyppejä... Seuraavassa luodaan johdatteleva katsaus XMLmaailmaan, jatkossa yksittäisiin tekniikoihin pureudutaan tarkemmin. Tavoitteena on nyt oivaltaa metakielen perusidea ja nähdä metsä puilta potentiaalisesti tarpeellista osattavaa löytyy jo XML-perheestä todella paljon. Tällä kurssilla käsittely rajataan keskeisiin perustekniikoihin. 65

2 Johdanto XML-maailmaan 4.1 Välisoitto ATK onnistuu siis vain ottamalla tieto ja prosessit haltuun menetelmiin ja työkaluihin nojautuen Sopiva menetelmien valinta tarjoaa mahdollisuuksia soveltajalle mutta tietenkin myös asettaa reunaehtoja Ideaalitapauksessa toteutustekniikka valitaan vasta ongelman määrittelyn "jälkeen"...käytännössä ymmärrys eri menetelmien mahdollisuuksista ja rajoituksista toki ohjaa myös määrittelyä 66

3 Johdanto XML-maailmaan 4.2 Uusi merkintäkieli? XHTML soveltuu Web-sivujen julkaisuformaatiksi, mutta ei tarjoa kunnon välineitä mallintaa muuntyyppistä tietoa (vrt. musiikki.html) Myös "omien merkkausrakenteiden esittely HTMLkieleen" onnistuu esim. div- ja span-elementtien sekä class-attribuutin avulla Merkkauksesta tulee kuitenkin erittäin kömpelöä, ja käsittelijä joudutaan kuitenkin ohjelmoimaan itse (jopa julkaisusovelluksissa koska CSS ei mahdollista esim. elementtien uudelleenjärjestelyä eikä selain tietenkään ymmärrä itse keksittyjä classattribuutteja) "Rajoittuneisuus" ei kuitenkaan johdu merkkauksesta, vaan XHTMLdokumenttityypistä joka ei tietenkään taivu kaikkiin sovelluksiin (lue: ei sisällä merkkausrakennetta esim. cd-levyn tiedoille) 67

4 Johdanto XML-maailmaan 4.3 XHTML-merkkaus kierrätykseen Vaihdetaan siis sanasto...ja merkataan esim. seuraavasti (musiikki.alb): <music> <album artist="dire Straits" year="1978"> <name>dire Straits</name> <tracks> <track len="5m34s">sultans of swing</track> <track len="6m14s">in the gallery</track> </tracks> </album> <album artist="pet Shop Boys" year="1993"> <name>very</name> <tracks> <track len="3m55s">yesterday, When I Was Mad</track> </tracks> </album> </music> 68

5 Johdanto XML-maailmaan 4.4 Huomioita Merkkausrakenne on tuttu XHTML-kielestä, mutta käytössä on nyt music-sanasto (looginen rakenne!) Tiedot on nyt ilmeisestikin merkattu musiikkilevyjen käsitteiden näkökulmasta Se miten em. rakenteeseen päädyttiin on suunnitteluongelma -...oikeassa sovelluksessa ko. dokumentin tyyppi pitäisi tietenkin määritellä, esitellä (ja ohjeistaa sen käyttö) täsmällisesti <!DOCTYPE music SYSTEM "cd-music.dtd"> Mutta: kuka osaa yo. tietoa käsitellä, mikä ohjelma ymmärtää yo. rakenteen tiedot, kuka tietoa tuottaa, jne. - kannattaa siis suosia jo saatavilla olevia tyyppejä, jos mahdollista No, ainakin esitystavan määrittely onnistuu esim. CSS:n avulla (vrt. oheinen prosessointiohje), mutta tällä ei vielä pitkälle pötkitä: <?xml-stylesheet href="mystyle.css" type="text/css"?> 69

6 Johdanto XML-maailmaan 4.5 Miksi sama vanha merkkauskielioppi? Täysin uudentyyppisen merkintäkielen (myös uusi merkkauskielioppi) kehittäminen olisi toki myös mahdollista, mutta työlästä, eikä työhön kannata ryhtyä ilman hyviä perusteluita! Käytännössä pelkän merkintäkielen lisäksi kun tarvitaan yleensä "muutakin", esim. - editori, jolla dokumentteja voidaan tuottaa - sovellus(ohjelmia) tuotettujen dokumenttien hyödyntämiseen - sovelluksia, joissa tiedolla on käyttöä - yhteisö, joka ko. merkintäkielen suostuu ottamaan käyttöön Homma helpottuu huomattavasti, jos pyörää ei lähdetä keksimään uudestaan, vaan uusi merkintäkieli suunnitellaan jonkin standardoidun merkintäkielten kuvausjärjestelmän puitteissa (kokemukset!) -...merkkauskieliopin ja välineiden yhteensopivuus on XML:n perusta 70

7 Johdanto XML-maailmaan 4.6 No niin... XML - mikä se on? Extensible Markup Language (XML) 1.0 (Third Edition) on virallinen W3C suositus (ns. recommendation, 1. versio vuodelta 1998) XML määrittelee (teksti)dokumenttien loogisen ja fyysisen rakenteen, (merkkauskielioppi ja entiteetit) sekä DTD-määrityskielen tietyn (rajoitetun) elementtirakenteen omaavien, tietyntyyppisten dokumenttiluokkien kuvaamiseen XML 1.0 määrittelee keskeisesti XML-dokumenttien luokan, ts. sen, millaisia XML-dokumentit ovat ja miten niitä tulee käsitellä - XML-prosessori vs. XML-sovellus (ts. XML ~ rajapinta!) XML on SGML:n osajoukko (tästä seuraa ) Kaksi versiota: 1.0 (v. 1998) ja 1.1 (v. 2004); erot vähäisiä XML-sovelluksissa tarvitaan useita muitakin XML-perheen teknisiä suosituksia 71

8 Johdanto XML-maailmaan 4.7 XML-spesifikaation suunnittelukriteerit XML:ää kehittäneet XML Working Group (vanha SGML Editorial Review Board) ja XML Special Interest Group (vanha SGML Working Group) asettivat XML:n kehitystyölle seuraavia tavoitteita: - suoraviivainen käyttö Internetin yli - laaja sovellusalue (ei esim. laite- tai ohjelmistoriippuvuutta) - yhteensopivuus SGML:n kanssa - XML:ää käsittelevien ohjelmien kirjoittamisen helppous - vähän valinnaisia ominaisuuksia - dokumenttien luettavuus ja selkeys (myös ihmisten näkökulmasta) - määrityksen tulee valmistua nopeasti (työ alkoi toukokuussa 1996) - määrityksen suunnittelun on oltava tarkkaa ja huolellista - dokumenttien tekemisen helppous - minimalistiseen merkkauksen ei pyritä (esim. pitkät nimet ovat sallittuja) 72

9 Johdanto XML-maailmaan 4.8 XML-merkkaus pähkinänkuoressa (dok. esiintymäosa) <?xml version="1.0" encoding="iso " standalone="no"?> <!DOCTYPE music SYSTEM "cd-music.dtd"> <!-- taustalla tyyppimääritys --> <?xml-stylesheet href="mystyle.css" type="text/css"?> <music xml:lang="en" xml:space="default"> <album artist="dire Straits" year="1978"> <name>dire Straits</name> <tracks> <track len="5m34s">sultans of swing</track> </tracks> <!-- lisäsin editorin kommentin --> <ed_note> Mercury Records. Dire Straits -- wrong time, wrong place? Note: Should comments be added to <![CDATA[<track>]]> elements as well? (&on;) </ed_note> <cover src="dd79.png" title="painting by Chuck Loyola" /> </album> </music> Ts. iso osa merkkauksesta tuli jo XHTML-esimerkeissä, nyt uutta oikeastaan enää merkkidatalohko 73

10 Johdanto XML-maailmaan 4.9 Tässäkö kaikki?! Ei (mutta "XML ~ ASCII of the 20th Century") Merkkaus on tärkeä mutta pieni askel kohti sovelluksia Todellinen pihvi ovat XML-merkkauksen ansiosta yhteensopivat ja standardoidut sovellukset; - dokumenttistandardit (esim. tyypit XHTML, SVG, SMIL, DocBook,... ja niiden sovellukset) - yhtenäinen perustekniikka (ohjelmointirajapinnat, salaus ja kryptausvälineet, kyselyt,...) - käsittelymenetelmät ja jo tehdyt välineet (muunnostyylit, dokumenttien koostaminen, kyselyt, prosessorit, selaimet,...)...joiden kehittämisessä ja soveltamisessa tarvitaan ilmeisesti muitakin kuin "merkkaustaitoja" Sovellusten kirjo on mahdollinen koska XML:n määrittelemä tietorakenne on yleiskäyttöinen (abstrakti) ja laajennettavissa (tähän palaamme vielä...) 74

11 Johdanto XML-maailmaan 4.10 Eräs XML-teknologiaperheen yleisjäsennys Standardoituja XMLpohjaisia teknologioita on todella paljon (puhumattakaan eri organisaatioiden omista XMLsovelluksista) Kärjistettynä: XMLmerkkaus tuo siis käyttöön paljon ko. rajapintaa tukevia teknologioita (sekä välineitä ja sisältöä) XHTML SVG SMIL EMMA XSL-FO XSLT RDFS, OWL RDF CSS XPath MathML CC/PP P3P XQuery VoiceXML WSDL WAI... XForms SOAP DOM Canonical Base Fragments Encryption Signature Inclusions Events XKMS XLink XPointer... XML 1.0/1.1 Namespaces 1/1.1 XML Schema HTTP Unicode URI 75

12 Johdanto XML-maailmaan 4.11 XML-perheen keskeisiä "standardeja" XML 1.0 (1.1) (*) - merkkauskielioppi, DTD-määrityskieli ja entiteetit (fyysinen rakenne) Namespaces (1.1) (*) - nimiavaruuden käsite (sanastojen yksikäsitteisyys) SAX & DOM (*) - ohjelmointirajapintoja (tapahtuma/mallipohjainen) XML Schema - DTD-kieltä ilmaisuvoimaisempi skeemakieli (sis. mm. std-tietotyypit) XSL (*) - erityisesti XSL-muunnoskieli XSLT (dokumenttiluokkien väliset muunnokset, esim. music xhtml, DocBook xsl-fo,...) (SAX = Simple API to XML, DOM = Document Object Model, XSL[T] = Extensible Stylesheet Language [Transformations]) 76

13 Johdanto XML-maailmaan 4.12 Mihin XML:ää voi käyttää? (1/2) Yksinkertaisimmillaan XML soveltuu HTML:n manttelinperijäksi, ts. kaikki, mitä HTML:llä voidaan tehdä, voidaan (periaatteessa) tehdä paremmin e01 e10 ID XML(-standardiperhee)llä e11 IDREF XML on kuitenkin yleisempi, ns. metakieli, ts. se ei ole rajoittunut vain XHTML-tyyppisten, ainoastaan esitettäväksi tarkoitettujen, jne. dokumenttien merkkaamiseen, vaan XML-dokumentteja voi käyttää miltei mihin tahansa (tietorakenne!) Abstraktin perusluonteensa ansiosta dokumentit voivat sisältää mitä tahansa tietoa mitä viittauksia sisältävällä puumaisella tietorakenteella voidaan ylipäänsä mallintaa, siis myös "tietueista koostuvia relaatioita" Suurin hyöty yleensä saavutetaan kun XML-tekniikat ja rakenteinen dokumentaatio nähdään (teknisenä ja [suunnittelu]menetelmällisenä) osana käsittelyaskelista koostuvia tiedonhallintaprosesseja e00 77

14 Johdanto XML-maailmaan 4.13 Mihin XML:ää voi käyttää? (2/2) Koska XML tarjoaa mahdollisuuden myös dokumenttien täsmälliseen tyypittämiseen, soveltuu XML lähtökohtaisesti - tiedon esitysmuodon standardointiin (XML-tekstiformaatit) - kommunikaation pohjaksi (XML-viestit) - tiedon arkistointitekniikaksi (...koska laite- ja ohjelmistoriippumatonta, periaatteessa helppoa käsitellä ja siten myös helppoa virkistää) XML-ohjelmien ja XML-prosessorirajapintojen ansiosta XML tarjoaa myös taloudellisen pohjan standardoitujen kehysten ja toisen tason metakielten määrittelyyn eri sovelluksiin (vrt. CC/PP, SOAP, RDF) -...ts. sovellushierarkia (tai palvelupino), perustana yksinkertainen XMLtietorakenne 78

15 Johdanto XML-maailmaan 4.14 Webin standardipinon yleisrakenne Saavutettavuus sovellusten sanastot yms. merkkausk. yms. Tiedonsiirto 79

16 Johdanto XML-maailmaan 4.15 Miksi ja mihin XML:ää ei pitäisi käyttää? XML:kään ei kannata ottaa perusteitta käyttöön teknologiavetoisesti, onhan olemassa - csv-tietorakenteita, taulukkolaskentaohjelmia, relaatiotietokantoja, hyviä propietarytekstiformaatteja, jne. XML-perustekniikan pulmina voidaan pitää esim. - tekstimuotoisuutta ja monisanaisuutta (verbose) (Binary XML tulossa...) - rajoittuneita merkkaus- ja tyyppimäärityskieliä (DTD), SGML-taustaa - käsittelyn "hitautta" (verrattuna optimoituihin relaatiotietokantoihin) Näissäkin tapauksissa XML voi kuitenkin tarjota luontevan tavan nimetä ja kehystää tietoa esim. tiedonsiirrossa tarvittavan rajapinta/liimakielen tavoin Osa (teknisistä) pulmista myös ratkeaa hyvällä suunnittelulla ja ottamalla käyttöön muitakin XML-standardiperheen määrityksiä ja kunnon työkaluja 80

17 Johdanto XML-maailmaan 4.16 Mitä XML:n käyttämiseen tarvitaan? (1/3) XML 1.0 on pohjimmiltaan varsin abstrakti ja yleiskäyttöinen määritys, joka kertoo, millaisia XML-dokumentit ovat (std-tietorakenne vs. sen sovellus) Koska tietorakenteen tulee olla kunnossa, tekstinkäsittelytyökalun rinnalla käytetään aina (validoivaa) XML-jäsennintä: - XML-dokumenttien merkkauksen tarkistaminen, so. onko dokumentti ns. hyvin muodostettu (well-formed) - XML-dokumenttien (rakenteen) validointi, so. dokumentin vahvistaminen tiettyyn dokumenttiluokkaan kuuluvaksi 81

18 Johdanto XML-maailmaan 4.17 Mitä XML:n käyttämiseen tarvitaan? (2/3) Tekstinkäsittelytyökalu ja jäsennin voidaan myös yhdistää, tuloksena... - graafinen esitys dokumentin puurakenteesta - XML-merkkauksen syntaksiväritys - elementtien menupohjainen valintatyökalu - tyylieditori ja dokumentin esikatselu,... Editoriin voidaan integroida muutakin, esim. - suunnitteluvälineitä, tyyppikirjastoja - tuki muille XML-standardiperheen välineille - yhteys tietokantajärjestelmään ja (yrityksen tai organisaation) muihin operatiivisiin järjestelmiin, objektieditoreita,... "XML-tuotantoympäristöjä ja -editoreita" ovat esim. - esim. FrameMaker, XML Spy, XMetaL, XRay,... - myös komentorivipohjaisia XML-jäsentimiä löytyy tavallisten tekstieditorien tueksi (esim. Xerces) 82

19 Johdanto XML-maailmaan 4.18 Mitä XML:n käyttämiseen tarvitaan? (3/3) Huom. Graafisten ympäristöjen käyttö on toisinaan "makuasia", toisinaan ei - vrt. "ohjelmointi" - mutta esim. tekniset kirjoittajat ("sisällöntuottajat") eivät ole kiinnostuneita merkkauksen tekniikasta vaan kirjoittamisesta! 83

20 Johdanto XML-maailmaan 4.19 Lopuksi: XML kulissien takaa vs. näyttämöllä Edellä kuvattiin lähinnä XML:ää kehittäjän näkökulmasta (tekniikkaa...) - loppukäyttäjän näkökulmasta XML on kuin mikä tahansa perustekniikka: - "taas uusia tiedostotyyppejä, jolle integroitu ohjelmistotuki" (vrt. Open Office) Rajatuissa sovelluksissa XML-syntaksi on käytännössä tarkoituksenmukaista piilottaa loppukäyttäjiltä, myös kirjoittajilta (vrt. HTML ja esim. Composerin käyttö) Mitä loppukäyttäjät sitten loppujen lopuksi tarvitsevat? - XML:ää hyödyntävän sovellusohjelman, pluginin tms., käyttöohjeineen Lue: loppukäyttäjän näkökulmasta rakenteisten dokumenttien ja esim. XML-tekniikoiden hyödyt ovat vain välillisiä - yhteensopivien ohjelmistojen runsaus, ominaisuudet, hinta (kehitystyön kustannukset), sovellusten hallittavuus ja virheettömyys,... 84

21 5 Merkkaus: XML protokollana XML on siis ns. metakieli, joka käytännössä voidaan tulkita tavaksi merkitä ja tyypittää rakenteisia dokumentteja. Kuten tunnettua, se tarjoaa puitteet esim. XHTML-kielen määrittelylle ja luo pohjaa esim. selainpohjaisille Websovelluksille. XML on kuitenkin ennen kaikkea standardimuotoinen tietorakenne tiedonsiirtoon tietokoneohjelmien välillä. Tästä syystä XMLdokumenttiluokka on määriteltävä tietorakenteena tarkasti. Yksityiskohtainen määrittely pyrkii varmistamaan että XML-perustekniikan varaan rakennettujen sovellusten määrittely on vakaalla pohjalla.... XML

22 5.1 Välisoitto XML 1.0 (1.1) on melko matalan tason protokolla... - määritys on yleiskäyttöinen (...pinomainen määritys) - ei suoraan osoita sovelluksia - määrityksen on oltava teknisesti tarkka - näkyy kenties "vain välineiden läpi" 86

23 5.2 XML-dokumentin lukeminen XML 1.0 (1.1) -spesifikaatio jakaa dokumenttien käsittelyn kaksitasoiseksi prosessiksi, jossa XML-prosessori (processor) lukee XML-dokumentin ja välittää tämän jäsennettynä sovellukselle (application) - XML-prosessori osaa lukea ja jäsentää merkkauskieliopin mukaisia dokumentteja (sis. DTD-tyyppimääritys) - sovellus hyödyntää jäsennettyä tietoa prosessorin toimittaman informaation perusteella (yleensä jäsennyspuun perusteella) <EX> This document is yet <IMG SRC="a"> another TEX My jäsennys EXA CON AUT Bill XML-dokumentti XML-prosessori Sovellus Käyttö (osana "suurempaa" sovellusta) 87

24 5.3 Kyse on hyvin matalan tason määrittelystä XML 1.0 (1.1) on "protokollamainen" Erityisesti, XML 1.0 ei määrittele: - mihin sovellus käyttää XML-dokumentin tietoja - millainen ohjelmointirajapinta prosessorin ja sovelluksen välillä on (käytännössä yleensä kuitenkin "yleensä" SAX tai DOM) XML 1.0 (1.1) -spesifikaatio ei siis määrittele sovelluksen toimintaa käytännössä lainkaan (eikä siten XML-sovellusalueita) vaan keskittyy XML-prosessorin efektiivisen käyttäytymisen (ja virhetilanteiden, erityisesti peruuttamattomien virheiden) kuvailuun Siispä... - XML:n varaan voidaan rakentaa mitä tahansa sovelluksia jotka hyödyntävät elementti- ja attribuuttirakenteista tietoa - Perushyöty: matalan tason yhteensopivuus (merkkauskielioppi) 88

25 5.4 XML-dokumenttien merkkauksesta XML-dokumenttien merkkaus (markup) voi siis olla jotakin seuraavista: - prosessointiohje - dokumentin tyyppimäärittely - elementin alkutagi - elementin lopputagi - tyhjän elementin tagi - entiteettiviittaus - merkkiviittaus - kommentti - merkkidatalohko Kaikki muu tekstisisältö on merkkidataa Merkkaus tuli siis esiteltyä XHTML-dokumenttien esittelyn yhteydessä! - sama merkkauskielioppi on käytössä kaikissa XML-sovelluksissa: XHTML, SVG, DocBook, SOAP, RDF/XML,... ) e01 e00 e10 e11 ID IDREF 89

26 5.5 XML-dokumenttien jäsentäminen (1/2) Merkkauskieliopin täsmällisyydellä tavoitellaan tietenkin XML-dokumenttien ohjelmallisen käsittelyn yksikäsitteisyyttä (jäsennys onnistuu mekaanisesti) Dokumentin d.xml jäsennysyritys voi tuottaa seuraavat lopputulokset ok 1. d.xml sisältää merkkausvirheen d.xml ei ole XML-dokumentti 2. d.xml sisältää tyyppiesittelyn D muttei noudata sitä d.xml ei ole (tyyppi)validi XML-dokumentti #! (kuitenkin hyvin muodostettu XMLdokumentti jos kohta 1 läpäistiin) 3. d.xml sisältää tyyppiesittelyn D ja noudattaa sitä d.xml on validi XMLdokumenttia tyyppiä D 90

27 jäsentäminen (2/2) Huomautuksia - lopputulos 2 voi olla myös toivottu toisinaan dokumentin tyyppimäärittelyä käytetään vain entiteettien määrittelyyn - jäsennin ei kuitenkaan oletuksena ymmärrä dokumentin kirjoittajan tai sovelluksen tavoiteitta jäsentimen raportoimat virheet eivät välttämättä ole kovin kuvaavia (vrt. rxp-esim: 1nimi, tiku&taku, jne.) - XML kieltää "huonosti muodostettujen XML-dokumenttien" käsittelyn! Erilaisten XML-laajennusten myötä tulosten kirjo voi laajentua, erityisesti - noudattaako d.xml nimiavaruuksien kielioppia (joka lisää yhden kerroksen semantiikkaa XML-merkkauskieliopin tulkintaan) - noudattaako d.xml skeemaa D' 91

28 5.7 XML -dokumenttiluokan määritelty XML-dokumentin rakenne on siis määriteltävä täsmällisesti, muuten sen mekaaninen lukeminen ja jäsentäminen ("parsiminen") ei onnistu Väärinymmärrysten välttämiseksi (ja teknisen toteutustyön pohjaksi), XML 1.0 (1.1) on määritelty formaalin kielen tavoin (tuotto)sääntöinä (XML 1.1; 83 kpl) joista kaikki ko. kielen sanat (nyt siis hyvin muodostetut XMLdokumentit) voidaan johtaa; vrt. esim. (XML 1.0) [1] document ::= prolog element Misc* /*...*/ [39] element ::= EmptyElemTag STag content ETag [ WFC: Element Type Match ] [ VC: Element Valid ] XML 1.1:n ero 1.0:aan on lähinnä määrittelytekninen (1.1 lähinnä huomioi alla olevan Unicode-standardin kehityksen ja lisää uuden rivinvaihtomerkin.) 92

29 5.8 Kontekstivapaa kielioppi ja EBNF Kielioppi on määritelty ohjelmointikielistä tuttua BNF-notaatiota mukaillen Extended Backus Naur Form (EBNF) esittää ns. kontekstivapaan kielen kieliopin G = (N, T, N 0, P): - tuottosäännöt (P), välisymbolit (N), loppusymbolit (T), operaattorit, merkkiluokat ja kertojat - ensimmäisenä esiteltävä tuottosääntö N 0 sovitaan kieliopin aksioomaksi josta kaikki ko. formaalin kielen sanat johdetaan - kieli määritellään siten että sanoille löytyy yksikäsitteinen jäsennyspuu - EBNF-muotoiset kieliopit ovat helppolukuisia mutta eivät kovin ilmaisuvoimaisia (täsmennettävä esim. sanallisin lisäyksin) T ::= '(' T O T ')' N N ::= [ ]+ O ::= '+' '-' '*' '/' Nyt EBNF on siis vain väline ns. hyvin muodostettujen XML-dokumenttien määrittelyyn se ei tietenkään "näy" dokumenteissa kuin välillisesti 93

30 5.9 EBNF-sääntöjen rakenne (1/3) Kieliopin määrittely perustuu nyt literaaliviittauksiin, sulkujen käyttöön, operaattoreihin ja kertojiin Merkki ja merkkijonoviittaukset: - #xn (N on halutun merkin indeksi) - [a-za-z],[#xn-#xm] (lueteltu merkkiluokan merkki) - [^abc], [^#xn#xm] (jokin muu merkki kuin lueteltu) - "string", 'string' (vakiomerkkijono) Sulkujen käyttö: - (lauseke) (lausekkeiden ryhmittely esim. kertojien vaikutusalueen asettamiseksi) 94

31 5.10 EBNF-sääntöjen rakenne (2/3) Operaattorit: - A B (B seuraa A:ta) - A B (A tai B muttei molemmat) - A - B (A muttei B:tä) Kertojat: - A? (A esiintyy kerran tai ei ollenkaan) - A+ (A esiintyy yhden tai useamman kerran) - A* (A esiintyy yhden tai useamman kerran tai ei ollenkaan) Loput säännöllisistä lausekkeista tutut operaattorit ja kertojat voidaan konstruoida näistä, esim. "A{3,4}" on sama kuin "A A A A A A A" 95

32 5.11 EBNF-sääntöjen rakenne (3/3) Huom. XML-spesifikaatio esittelee lisäksi muutakin kielen määrittelyyn liittyvää notaatiota, erityisesti ns. rajoitteita (constraint): - /* */ (kommentti) - [ wfc: ] (well-formedness constraint) - [ vc: ] (validity constraint) Näitä tarvitaan teknisistä syistä, koska kontekstivapaa kielioppi (joka nyt siis kirjoitettu EBNF-notaatiota käyttäen) ei ole tarpeeksi vahva tiettyjen relaatioiden (järkevään esittämiseen), esim. - elementin alku- ja lopputagissa esiintyy sama nimi - elementin nimi on esitelty tyyppimäärittelyssä ja se esiintyy vanhemmassaan tämän tyyppiesittelyn mukaisesti 96

33 5.12 Merkitseviä asioita: nimet XML erottelee täsmällisesti merkistöihin, elementtien nimeämiseen ja attribuuttien arvoihin liittyviä termejä, näistä keskeisiä ovat: - nimi (name) - tunnistemerkkijono (name token) [4] NameChar ::= Letter Digit '.' '-' '_' ':' CombiningChar Extender [5] Name ::= (Letter '_' ':') (NameChar)* [7] Nmtoken ::= (NameChar)+ Muut em. tuottosäännöissä esiteltävät käsitteet määrittelevät (luettelevat) ne Unicode-indeksit (merkkiluokat), jotka vastaavat termejä "Letter", "Digit", "CombiningChar" ja "Extender", jne. (XML 1.0 vs. 1.1) Nimiä käytetään tyypillisesti elementtien nimeämiseen, tunnistemerkkijonoja taas esim. attribuuttien arvoalueen rajaamiseen Huom. XML varaa nimien prefixarvot [xx][mm][ll] omaan käyttöönsä - esim. "xml-element" ei siis ole laillinen itse keksityn elementin nimi 97

34 5.13 XML-dokumentin yleisrakenne XML-dokumentti jakautuu siis kahteen osaan: esittelyyn ja esiintymään [1] document ::= prolog element Misc* Esittely (prolog) - XML-versionumero, koodaustapa, riippumattomuusjulistus - dokumentin tyyppijulistus Esiintymä (instance, käytännössä juurielementti) - dokumentin sisältö (dokumentin juurientiteetti) mahdollisen tyyppikuvauksen rajoittaman loogisen rakenteen puitteissa Elementtien muodostama rakenne on hierarkkinen ja siten aidosti sisäkkäinen XML-dokumentti ei määritä omaa semantiikkaansa (merkitystä), vaan ainoastaan paljaan rakenteen, johon informaatio on "ripustettu" 98

35 5.14 XML-merkkauskieliopin määrittelystä (1/4) [22] prolog ::= XMLDecl? Misc* (doctypedecl Misc*)? [27] Misc ::= Comment PI S [23] XMLDecl ::= '<?xml' VersionInfo EncodingDecl? SDDecl? S? '?>' [24] VersionInfo ::= S 'version' Eq ("'" VersionNum "'" '"' VersionNum '"') [80] EncodingDecl ::= S 'encoding' Eq ('"' EncName '"' "'" EncName "'" ) [81] EncName ::= [A-Za-z] ([A-Za-z0-9._] '-')* /* Encoding name contains only Latin characters */ [32] SDDecl ::= S 'standalone' Eq (("'" ('yes' 'no') "'") ('"' ('yes' 'no') '"')) [ VC: Standalone Document Declaration ] Huomautuksia: - XML-esittely (tai julistus), dokumentin tyyppiesittely (tai julistus) - mikäli merkkikoodausta (encoding) ei ilmoiteta, oletetaan UTF-8 (prosessorit tukevan ainakin UTF-8 ja UTF-16, iso Suomessa!) 99

36 5.15 XML-merkkauskieliopin määrittelystä (2/4) Elementeillä on siis aina nimi (itse asiassa elementin tyypin nimi (generic identifier, GI)) ja saman nimen on tietenkin esiinnyttävä sekä elementin alkuettä lopputageissa: [39] element ::= EmptyElemTag STag content ETag [ WFC: Element Type Match ] [ VC: Element Valid ] [40] STag ::= '<' Name (S Attribute)* S? '>' [ WFC: Unique Att Spec ] [42] ETag ::= '</' Name S? '>' Tyhjän elementin tagi on hyvin samanlainen kuin elementin alkutagikin: [44] EmptyElemTag ::= '<' Name (S Attribute)* S? '/>' [ WFC: Unique Att Spec ] Tyhjän elementin saa siis kirjoittaa myös alku- ja lopputagien avulla (tällöin tagien väliin ei saa jäädä edes tyhjämerkkiä): 100

37 5.16 XML-merkkauskieliopin määrittelystä (3/4) Attribuuttien nimet määräytyvät kuten elementeillä, rakennekin on tuttu: [41] Attribute ::= Name Eq AttValue [ VC: Attribute Value Type ] [ WFC: No External Entity References ] [ WFC: No < in Attribute Values ] Attribuutin arvon sijoitusoperaattorina toimii tuttuun tapaan yhtäsuuruusmerkki [25] Eq ::= S? '=' S? XML-dokumenteissa elementeille voidaan pakottaa attribuutteja, antaa näille oletusarvoja sekä kiinnittää attribuuttien arvoalueita 101

38 5.17 XML-merkkauskieliopin määrittelystä (4/4) Entiteetti- ja merkkiviittaukset määritelty odotetusti (lt, gt, amp, apos, quot): [67] Reference ::= EntityRef CharRef [68] EntityRef ::= '&' Name ';' [ WFC: Entity Declared ] [ VC: Entity Declared ] [ WFC: Parsed Entity ] [ WFC: No Recursion ] [66] CharRef ::= '&#' [0-9]+ ';' '&#x' [0-9a-fA-F]+ ';' [ WFC: Legal Character ] Merkkidatalohkot, prosessointiohjeet ja kommentit samoin... [18] CDSect ::= CDStart CData CDEnd [19] CDStart ::= '<![CDATA[' [20] CData ::= (Char* - (Char* ']]>' Char*)) [21] CDEnd ::= ']]>' [16] PI ::= '<?' PITarget (S (Char* - (Char* '?>' Char*)))? '?>' [17] PITarget ::= Name - (('X' 'x') ('M' 'm') ('L' 'l')) [15] Comment ::= '<!--' ((Char - '-') ('-' (Char - '-')))* '-->' 102

39 5.18 Esimerkki: dokumentin looginen rakenne ESITTELY ESIINTYMÄ <?xml version="1.0" encoding="iso "?> <!DOCTYPE example SYSTEM "hellow.dtd"> <example> <title>hei maailma!</title> <content> <text>ensimmäinen XML-dokumentti</text> <author>nn</author> </content><date/> </example> Merkkaus vastaa siis tiettyä loogista rakennetta Huomioita: - esittelyosan tyyppi määrää title "muotin" dokumentille - tyyppi saattaa pakottaa Hei attribuutteja joita ei ole merkattu esiintymäosaan text Ensimmä example content author NN date 103

40 5.19 XML-dokumentti on hyvin muodostettu XML-dokumentti on siis määritelmänsä ansiosta aina hyvin muodostettu (well-formed, WF); spesifikaation mukaan tekstidokumentti on (hyvin muodostettu) XML-dokumentti, jos 1) se voidaan kokonaisuutena johtaa XML-kieliopin documentaksioomasta, 2) se toteuttaa kaikki XML-kieliopin yhteydessä asetetut WFC-rajoitteet JA 3) jokainen tekstientiteetti, johon dokumentissa viitataan, on hyvin muodostettu XML-dokumentti (voi olla, ei ole pakko) lisäksi validi (valid), jos se esittelee tyyppinsä ja toteuttaa tyypin (VC-rajoitteet) - tyyppimäärittelystä voi siis olla hyötyä, vaikka validiuteen ei pyrittäisikään (entiteetit ja attribuuttien pakottaminen) Huomaa termit: esim. "väärin muodostettua" XML-dokumenttia ei siis ole olemassa 104

41 5.20 Huomautuksia jäsentimistä ja prosessoreista Käytännössä XML-dokumentin kirjoitusprosessissa tai tiedonsiirrossa saattaa tapahtua virhe, eikä lopputuloksena olekaan (WF) XML-dokumentti Tyypillinen XML-jäsennin toimii kuten ohjelmointikielen kääntäjä ja ilmoittaa havaitut syntaksivirheet - virheilmoitukset saadaan esim. tekstimuotoisena muodossa "virheen kuvaus, rivi, sarake, korjausehdotus" - paitsi ihmislukijalle, jäsentimen tulostus voidaan ohjata myös XMLsovellukselle (jäsennintä voidaan käyttää myös jonkin ohjelmointirajapinnan läpi) Erilaisia jäsentimiä on todella paljon (komentorivi, sulautettu, API, Web,...); kurssin kontekstissa hyviä ovat esim. Xerces ja RXP Huomaa että yksiä ja samoja jäsentimiä yms. prosessoreita kierrätetään eri ohjelmointiympäristöissä (esim. C-kielisen expatin käyttö PHP:ssä, Perlissä, Pythonissa jne.) 105

5 Merkkaus: XML protokollana

5 Merkkaus: XML protokollana 5 Merkkaus: XML protokollana XML on siis ns. metakieli, joka käytännössä voidaan tulkita tavaksi merkitä ja tyypittää rakenteisia dokumentteja. Kuten tunnettua, se tarjoaa puitteet esim. XHTML-kielen määrittelylle

Lisätiedot

5 Merkkaus: XML protokollana

5 Merkkaus: XML protokollana 5 Merkkaus: XML protokollana XML on siis ns. metakieli, joka käytännössä voidaan tulkita tavaksi merkitä ja tyypittää rakenteisia dokumentteja. XML on kuitenkin ennen kaikkea standardimuotoinen tietorakenne

Lisätiedot

4 Johdanto XML-maailmaan

4 Johdanto XML-maailmaan 4 Johdanto XML-maailmaan Rakenteisia dokumentteja ei voi "ymmärtää" osamaatta niiden perustekniikkaa. Niinpä seuraavaksi kohdistamme huomion tekniikoihin. Rakenteisten dokumenttien yleisiin menetelmiin

Lisätiedot

4 Kommentoitu johdanto XML-maailmaan

4 Kommentoitu johdanto XML-maailmaan 4 Kommentoitu johdanto XML-maailmaan Yksinkertainen XML-merkkauskielioppi on modernin rakenteisen dokumentaation ja mitä monimaisimpien XML-sovellusten pienin yhteinen tekijä. Pelkästä merkkauskielestä

Lisätiedot

9 XML perusteet

9 XML perusteet 9 XML 1.0 - perusteet XML jakaa dokumenttien käsittelyn kaksitasoiseksi prosessiksi, jossa XMLprosessori ([processor]) lukee XML-tiedoston ja välittää tämän parsittuna sovellukselle ([application]). Käytännössä":

Lisätiedot

4 Kommentoitu johdanto XML-maailmaan

4 Kommentoitu johdanto XML-maailmaan è è è Kommentoitu johdanto XML-maailmaan 4 Kommentoitu johdanto XML-maailmaan Yksinkertainen XML-merkkauskielioppi on modernin rakenteisen dokumentaation ja mitä monimaisimpien XML-sovellusten pienin yhteinen

Lisätiedot

9 XML perusteet

9 XML perusteet 9 XML 1.0 - perusteet XML jakaa dokumenttien käsittelyn kaksitasoiseksi prosessiksi, jossa XMLprosessori ([processor]) lukee XML-dokumentin ja välittää tämän jäsennettynä sovellukselle ([application]).

Lisätiedot

9 XML perusteet

9 XML perusteet 9 XML 1.0 - perusteet XML jakaa dokumenttien käsittelyn kaksitasoiseksi prosessiksi, jossa XMLprosessori ([processor]) lukee XML-dokumentin ja välittää tämän jäsennettynä sovellukselle ([application]).

Lisätiedot

3 Verkkosaavutettavuuden tekniset perusteet

3 Verkkosaavutettavuuden tekniset perusteet 3 Verkkosaavutettavuuden tekniset perusteet Saavutettavuuden toteuttaminen edellyttää lähtökohtaisesti tietoa laitteista ja sovelluksista, käyttäjistä ja käyttötavoista, sekä tekniikasta. Tekniikasta on

Lisätiedot

6 DTD ja dokumentin tyyppimääritys

6 DTD ja dokumentin tyyppimääritys 6 DTD ja dokumentin tyyppimääritys Tietojenkäsittelyssä päähuomio ei yleensä ole tiedon matalan tason formaatissa vaan sovelluksissa joissa tietoa käytetään loogisesti jäsennettynä. XML-merkkaus tarjoaa

Lisätiedot

XML johdanto, uusimmat standardit ja kehitys

XML johdanto, uusimmat standardit ja kehitys johdanto, uusimmat standardit ja kehitys Ossi Nykänen Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), W3C Suomen toimisto Esitelmä Hyvin lyhyt versio: on W3C:n suosittama

Lisätiedot

6 DTD ja dokumentin tyyppimääritys

6 DTD ja dokumentin tyyppimääritys 6 DTD ja dokumentin tyyppimääritys Tietojenkäsittelyssä päähuomio ei yleensä ole tiedon matalan tason formaatissa vaan sovelluksissa joissa tietoa käytetään loogisesti jäsennettynä. XML-merkkaus tarjoaa

Lisätiedot

6 DTD ja dokumentin tyyppimääritys

6 DTD ja dokumentin tyyppimääritys 6 DTD ja dokumentin tyyppimääritys XML-merkkaus tarjoaa yhteensopivan ja yksinkertaisen perustan rakenteisten dokumenttien tms. rakenteisen tiedon käsittelyyn. Tietojenkäsittelyn sovelluksissa päähuomio

Lisätiedot

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

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

Lisätiedot

W3C, Web-teknologiat ja XML

W3C, Web-teknologiat ja XML W3C, Web-teknologiat ja XML Ossi Nykänen Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), Hypermedialaboratorio W3C Suomen toimisto Esitelmä Hyvin lyhyt versio: XML on W3C:n

Lisätiedot

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

Sisältö. XML, XHTML ja CSS XML XML. XML:n ja HTML:n ero. XML kieliä XML XHTML CSS XSL. T Hypermediadokumentin laatiminen 2002 , XHTML ja CSS T-111.361 Hypermediadokumentin laatiminen 2002 XHTML CSS XSL Sisältö EXtensible Markup Language W3C Recommendation helmikuu 1998 SGML:n osajoukko Standard Generalized Markup Language Kevyempi

Lisätiedot

XML-evoluutio ja kestävä kehitys

XML-evoluutio ja kestävä kehitys XML-evoluutio ja kestävä kehitys Ossi Nykänen Tampere University of Technology (TUT), Digital Media Institute (DMI), W3C Finnish Office Esitelmä Hyvin lyhyt versio: XML on W3C:n suosittama perhe tekstiformaatteja

Lisätiedot

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

XML prosessori. XML prosessointi. XML:n kirjoittaminen. Validoiva jäsennin. Tapahtumaohjattu käsittely. Tapahtumaohjattu käsittely. XML prosessointi Miten XML dokumentteja luetaan ja kirjoitetaan XML prosessori lukee ja välittää XML dokumentin sovellukselle. Se sisältää entieettikäsittelijän (mahdollisesti) XML jäsentimen Sovellus

Lisätiedot

<Element> <ELEMENT> <element> </element> </ELEMENT> </Element>

<Element> <ELEMENT> <element> </element> </ELEMENT> </Element> EBNF-notaatio tarjoaa selkeän tavan määritellä XML-dokumentin osat yksikäsitteisesti; XML-spesifikaatio määrittelee yhden ja ainutkertaisen 89 (sievennettyä) produktiota sisältävän XML-kieliopin, joka

Lisätiedot

2 Rakenteisten dokumenttien perusteet

2 Rakenteisten dokumenttien perusteet 2 Rakenteisten dokumenttien perusteet Kuten todettua, rakenteinen dokumentaatio tähtää tiedon mallintamiseen käytössä olevien välineiden mahdollisuudet huomioiden (tietokoneet!). Tavoitteet ovat yleensä

Lisätiedot

Johdatus rakenteisiin dokumentteihin

Johdatus rakenteisiin dokumentteihin -RKGDWXVUDNHQWHLVLLQGRNXPHQWWHLKLQ 5DNHQWHLQHQGRNXPHQWWL= rakenteellinen dokumentti dokumentti, jossa erotetaan toisistaan dokumentin 1)VLVlOW, 2) UDNHQQHja 3) XONRDVX(tai esitystapa) jotakin systemaattista

Lisätiedot

7 Kommentoitu johdanto XML:ään

7 Kommentoitu johdanto XML:ään 7 Kommentoitu johdanto XML:ään Kommentoitu johdanto XML:ään HTML:n ja DIV- ja SPAN-elementtien luonteva käyttöönotto dokumenttien rakenteen täsmentämisessä on merkki siitä, että itse keksityille elementeille

Lisätiedot

W3C, XML ja tietojenkäsittely: Ihmisen ja tietokoneen yhteinen ymmärrys suoritettavasta tehtävästä ja XML-standardien merkitys tietosysteemeissä (MH)

W3C, XML ja tietojenkäsittely: Ihmisen ja tietokoneen yhteinen ymmärrys suoritettavasta tehtävästä ja XML-standardien merkitys tietosysteemeissä (MH) W3C, XML ja tietojenkäsittely: Ihmisen ja tietokoneen yhteinen ymmärrys suoritettavasta tehtävästä ja XML-standardien merkitys tietosysteemeissä (MH) Ossi Nykänen Tampereen teknillinen yliopisto (TTY),

Lisätiedot

Paikkatiedot ja Web-standardit

Paikkatiedot ja Web-standardit Paikkatiedot ja Web-standardit Ossi Nykänen Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), Hypermedialaboratorio W3C Suomen toimisto Esitelmä Hyvin lyhyt versio: World Wide

Lisätiedot

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

XML kielioppi. Elementtien ja attribuuttien määrittely. Ctl230: Luentokalvot Miro Lehtonen XML kielioppi Elementtien ja attribuuttien määrittely Ctl230: Luentokalvot 11.10.2004 Miro Lehtonen Dokumenttien mallinnus Säännöt dokumenttityypeille 3Mahdollisten dokumenttirakenteiden määrittely Samassa

Lisätiedot

XML - mahdollisuudet ja kehitys

XML - mahdollisuudet ja kehitys XML - mahdollisuudet ja kehitys Ossi Nykänen Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), W3C Suomen toimisto Esitelmä Hyvin lyhyt versio: W3C on kansainvälinen konsortio

Lisätiedot

W3C-teknologiat ja yhteensopivuus

W3C-teknologiat ja yhteensopivuus W3C-teknologiat ja yhteensopivuus Ossi Nykänen Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), Hypermedialaboratorio W3C Suomen toimisto Esitelmä Hyvin lyhyt versio: W3C asettaa

Lisätiedot

Johdatus XML teknologioihin

Johdatus XML teknologioihin Johdatus XML teknologioihin Metropolia J. Holvikivi XML metakieli Extensible Markup Language rakenteellinen esitystapa tiedon vaihtoon, talletukseen, yhdistämiseen ja julkaisemiseen yleinen rakenteenkuvauskieli,

Lisätiedot

M. Merikanto 2012 XML. Merkkauskieli, osa 2

M. Merikanto 2012 XML. Merkkauskieli, osa 2 XML Merkkauskieli, osa 2 Esimerkki: XML-dokumentti resepti maitokaakao

Lisätiedot

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

6 XML-työkalut 1. 6 XML-työkalut 6 XML-työkalut 1 6 XML-työkalut XML:n periaatteiden tutustumisen jälkeen on helpompi tutustua XML-dokumenttien käsittelyyn ja katseluun suunniteltuja työkaiuja. XML:n yleistymisen pahin pullonkaula on

Lisätiedot

Semanttinen Web. Ossi Nykänen Tampereen teknillinen yliopisto (TTY), DMI / Hypermedialaboratorio W3C Suomen toimisto

Semanttinen Web. Ossi Nykänen Tampereen teknillinen yliopisto (TTY), DMI / Hypermedialaboratorio W3C Suomen toimisto Semanttinen Web Ossi Nykänen ossi.nykanen@tut.fi Tampereen teknillinen yliopisto (TTY), DMI / Hypermedialaboratorio W3C Suomen toimisto Esitelmä "Semanttinen Web" Sisältö Konteksti: W3C, Web-teknologiat

Lisätiedot

W3C ja alueellinen standardointi

W3C ja alueellinen standardointi W3C ja alueellinen standardointi Ossi Nykänen Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), W3C Suomen toimisto Esitelmä Hyvin lyhyt versio: W3C on kansainvälinen konsortio

Lisätiedot

XML ja Web Services update

XML ja Web Services update XML ja Web Services update Ossi Nykänen Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), W3C Suomen toimisto Esitelmä Hyvin lyhyt versio: Extensible Markup Language (XML) ja

Lisätiedot

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

StanForD-XML. Juha-Antti Sorsa, Tapio Räsänen, Vesa Imponen Projektiryhmä StanForD-XML Juha-Antti Sorsa, Tapio Räsänen, Vesa Imponen Rahoittajat Koskitukki Oy, Metsähallitus, Metsäliitto Osuuskunta, Pölkky Oy, Stora Enso Oyj, UPM- Kymmene Oyj, Vapo Timber Oy, Yksityismetsätalouden

Lisätiedot

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

Vaasan yliopiston toimintaa tukevat informaatiopalvelut ovat käytettävissä WWW:n kautta. 1. Julkaisutoiminnan peruskysymyksiä a) Mieti kohderyhmät b) Mieti palvelut c) Mieti palvelujen toteutus Vaasan yliopiston toimintaa tukevat informaatiopalvelut ovat käytettävissä WWW:n kautta. PALVELUKOKONAISUUDET:

Lisätiedot

XML johdatus: DTD. Jaana Holvikivi

XML johdatus: DTD. Jaana Holvikivi XML johdatus: DTD Jaana Holvikivi Dokumenttityypin rakennemäärittely DTD = kielioppi esim. XML- esitykselle Elementit Attribuutit Entiteetit ja notaatiot Prosessointikomennot DTD:n suunnittelu 19.1.2013

Lisätiedot

9.16 XSLT ja nimiavaruudet (1/3): literaali oletusnimiavaruus

9.16 XSLT ja nimiavaruudet (1/3): literaali oletusnimiavaruus 9.16 XSLT ja nimiavaruudet (1/3): literaali oletusnimiavaruus XSL-muunnos voi tietenkin tuottaa myös tiettyyn nimiavaruuteen liittyviä kohdedokumentteja (tarvitaan aina jo esim. XHTML-sovelluksissa!) Helpoimmillaan

Lisätiedot

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

XML, XHTML ja CSS. T-111.361 Hypermediadokumentin laatiminen. Mikko Pohja XML, XHTML ja CSS T-111.361 Hypermediadokumentin laatiminen Mikko Pohja Sisältö XML Yleensä Eri kieliä XHTML CSS XSL XML EXtensible Markup Language W3C Recommendation helmikuu 1998 SGML:n osajoukko Standard

Lisätiedot

Luento 7: XML-ohjelmointirajapinnat

Luento 7: XML-ohjelmointirajapinnat Luento 7: XML-ohjelmointirajapinnat AS-0.110 XML-kuvauskielten perusteet Janne Kalliola 1 XML-ohjelmointirajapinnat Document Object Model (DOM) käyttö rakenne ja versiot perusrajapinnat rajapinnat tarkemmin

Lisätiedot

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

WWW-ohjelmoinnin kokonaisuus. WWW-OHJELMOINTI 1 Merkkauskielet. Merkkauskielten idea. Merkkauskielet (markup languages) Merkkauskielten merkitys WWW-OHJELMOINTI 1 WWW-ohjelmoinnin kokonaisuus SGML, XML, HTML WWW-selaimen sovellusohjelmointi WWW-palvelimen sovellusohjelmointi Eero Hyvönen Tietojenkäsittelytieteen laitos Helsingin yliopisto 26.10.2000

Lisätiedot

Rakenteisten dokumenttien jatkokurssi, syksy 2006

Rakenteisten dokumenttien jatkokurssi, syksy 2006 Rakenteisten dokumenttien jatkokurssi, syksy 2006 MATHM-57200 Rakenteisten dokumenttien jatkokurssi, 5 op opetetaan syksyn 1-2 periodeilla Kotisivu: http://matriisi.ee.tut.fi/hmopetus/rdj/index.html Luennot:

Lisätiedot

2. PEHMEÄ XHTML XRAJAHTML

2. PEHMEÄ XHTML XRAJAHTML Luennot 1. Intro 2. PEHMEÄ XHTML XRAJAHTML Dokumentin (matalan tason) rakenne DOCTYPE ja merkistökoodaukset Elementtien syvät rajat 3. CSS 4. JavaScript 5. JavaScript-kirjastot & AJAX 6. Käytettävyys &

Lisätiedot

Tutkija Mikko Salmenperä. huone: sd109. TTY / Systeemitekniikan laitos. puh: 040-849 0061. email: mikko.salmenpera@tut.fi

Tutkija Mikko Salmenperä. huone: sd109. TTY / Systeemitekniikan laitos. puh: 040-849 0061. email: mikko.salmenpera@tut.fi Tutkija Mikko Salmenperä huone: sd109 TTY / Systeemitekniikan laitos puh: 040-849 0061 email: mikko.salmenpera@tut.fi Luennon sisällys Historiaa ja pohjatietoa Miksi XML tekniikkaa tarvitaan? XML dokumentin

Lisätiedot

XML-tietojenkäsittely

XML-tietojenkäsittely XML-tietojenkäsittely Ossi Nykänen Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), W3C Suomen toimisto Esitelmä Hyvin lyhyt versio: XML tarjoaa välineitä tietojenkäsittelyyn

Lisätiedot

12 Dokumenttiluokan toteuttamisesta

12 Dokumenttiluokan toteuttamisesta 12 Dokumenttiluokan toteuttamisesta Tyypillisiä XML-sovellutuksia ovat esimerkiksi: - annettuun käyttötarkoitukseen räätälöity dokumenttityyppi (esim. painotalon ABC malli käsikirjoituksen rakenteelle)

Lisätiedot

www.hohde.com Hohde Consulting 2004

www.hohde.com Hohde Consulting 2004 Luento 14: Kertaus AS-0.110 XML-kuvauskielten perusteet Janne Kalliola Kertaus XML nimiavaruus validointi XML:n käyttö tietorakenteiden kuvaus ohjelmointi XML-pohjaiset kielet peruskielet muut kurssilla

Lisätiedot

Extensible Stylesheet Language (XSL)

Extensible Stylesheet Language (XSL) Extensible Stylesheet Language (XSL) Tyylitiedostojen määrittely Ctl230:Luentokalvot 25.10.2004 Miro Lehtonen Johdanto Dokumenttien muotoilu tyylitiedostoilla 3XML: yleistetty merkkaus Kuvaa sisällön muttei

Lisätiedot

Luento 12: XML ja metatieto

Luento 12: XML ja metatieto Luento 12: XML ja metatieto AS-0.110 XML-kuvauskielten perusteet Janne Kalliola XML ja metatieto Metatieto rakenne sanasto Resource Description Framework graafikuvaus XML Semanttinen Web agentit 2 1 Metatieto

Lisätiedot

Luento 1: Johdanto merkintäkieliin

Luento 1: Johdanto merkintäkieliin Luento 1: Johdanto merkintäkieliin AS-0.110 XML-kuvauskielten perusteet Janne Kalliola Johdanto merkintäkieliin Merkintäkieliä SGML HTML XML XML:n peruspiirteet XML-dokumentin rakenne XML:n käyttö XML-pohjaisia

Lisätiedot

W3C ja Web-teknologiat

W3C ja Web-teknologiat W3C ja Web-teknologiat Ossi Nykänen Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), W3C Suomen toimisto Esitelmä Hyvin lyhyt versio: World Wide Web Consortium (W3C) on kansainvälinen

Lisätiedot

2 Rakenteisten dokumenttien perusteet

2 Rakenteisten dokumenttien perusteet è è è Rakenteisten dokumenttien perusteet 2 Rakenteisten dokumenttien perusteet Kuten todettua, rakenteinen dokumentaatio tähtää tiedon mallintamiseen käytössä olevien välineiden mahdollisuudet huomioiden

Lisätiedot

Digitaalisen median tekniikat. JSP ja XML Harri Laine 1

Digitaalisen median tekniikat. JSP ja XML Harri Laine 1 Digitaalisen median tekniikat JSP ja XML 28.4.2004 Harri Laine 1 JSP hyvin lyhyesti JSP on Java-pohjainen skriptikieli JSP:llä laadittu sivu käännetään java-servletiksi (sivun toteutus vastaa servlettiluokan

Lisätiedot

W3C & verkkojulkaisun standardit

W3C & verkkojulkaisun standardit W3C & verkkojulkaisun standardit Ossi Nykänen Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), W3C Suomen toimisto Esitelmä Hyvin lyhyt versio: World Wide Web Consortium (W3C)

Lisätiedot

Verkkosisällön saavutettavuusohjeet 2.0: hyviä ohjeita monimuotoisen sisällön suunnitteluun ja arviointiin

Verkkosisällön saavutettavuusohjeet 2.0: hyviä ohjeita monimuotoisen sisällön suunnitteluun ja arviointiin Verkkosisällön saavutettavuusohjeet 2.0: hyviä ohjeita monimuotoisen sisällön suunnitteluun ja arviointiin Ossi Nykänen Tampereen teknillinen yliopisto, Hypermedialaboratorio, W3C Suomen toimisto Terveyden

Lisätiedot

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

Laajuus 5 op Luennot: 12 x 2t Harjoitukset: 7 viikkoharjoitusta harjoitusten tekemiseen saatavissa apua 2 ryhmää / harjoitus Laajuus 5 op Luennot: 12 x 2t 11.3.2014 29.4.2014 Harjoitukset: 7 viikkoharjoitusta harjoitusten tekemiseen saatavissa apua 2 ryhmää / harjoitus Lähiopetuksen jäkeen harjoitustyö ja tentti Aulikki Hyrskykari

Lisätiedot

Semanttinen Web. Ossi Nykänen. Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), Hypermedialaboratorio W3C Suomen toimisto

Semanttinen Web. Ossi Nykänen. Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), Hypermedialaboratorio W3C Suomen toimisto Semanttinen Web Ossi Nykänen Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), Hypermedialaboratorio W3C Suomen toimisto Esitelmä Hyvin lyhyt versio: Semanttinen Web (SW) on

Lisätiedot

Median valinta. Median Esimerkki: ulkoisen tyylitiedoston valinta median mukaan: tai vaihtoehtoisesti, esim:

Median valinta. Median Esimerkki: ulkoisen tyylitiedoston valinta median mukaan: tai vaihtoehtoisesti, esim: CSS2 6 CSS2 CSS2 laajentaa CSS1:stä tuoden muassaan ratkaisun osaan edellisistä ongelmista, CSS2:n uusia piirteitä ovat esim: - media-valitsin (aural, braille, embossed, handheld, print, projection, screen,

Lisätiedot

P e d a c o d e ohjelmointikoulutus verkossa

P e d a c o d e ohjelmointikoulutus verkossa P e d a c o d e ohjelmointikoulutus verkossa XML-kielen perusteet Teoria ja ohjelmointitehtävät XML-kielen perusteet 3 Sisältö YLEISKATSAUS KURSSIN SISÄLTÖIHIN... 7 YLEISKATSAUS KURSSIN SISÄLTÖIHIN...

Lisätiedot

10 XML ja dokumenttien tyyppimäärittely

10 XML ja dokumenttien tyyppimäärittely 10 XML ja dokumenttien tyyppimäärittely XML tarjoaa perussyntaksin dokumenttien mielivaltaista merkkaamista varten Huomionarvoista: - merkkidatan ja merkkauksen koodauksen valinta (sama kaikille XMLdokumenteille)

Lisätiedot

3 XHTML-dokumenttien anatomia

3 XHTML-dokumenttien anatomia 3 XHTML-dokumenttien anatomia XHTML tarjoaa tutun esimerkin rakenteisten dokumenttien opiskelun alkutaipaleelle. Erityisesti, koska XHTML on eräs XML-sovellus: - havainnollistaa se tiedon teknistä merkkausta

Lisätiedot

XML - perusteet. Ctl230: Luentokalvot Miro Lehtonen

XML - perusteet. Ctl230: Luentokalvot Miro Lehtonen XML - perusteet Ctl230: Luentokalvot 4.10.2004 Miro Lehtonen Johdanto Mikä on merkkauskieli? 3Merkkaus (markup): lisätieto dokumentissa Erilaiset kirjasintyylit ja -koot 3Säännöt merkkaukselle Miten merkataan?

Lisätiedot

815338A Ohjelmointikielten periaatteet Harjoitus 2 vastaukset

815338A Ohjelmointikielten periaatteet Harjoitus 2 vastaukset 815338A Ohjelmointikielten periaatteet 2015-2016. Harjoitus 2 vastaukset Harjoituksen aiheena on BNF-merkinnän käyttö ja yhteys rekursiivisesti etenevään jäsentäjään. Tehtävä 1. Mitkä ilmaukset seuraava

Lisätiedot

Verkkopalveluiden saavutettavuus

Verkkopalveluiden saavutettavuus Verkkopalveluiden saavutettavuus Puhuja: Ossi Nykänen Tampereen teknillinen yliopisto, Hypermedialaboratorio, W3C Suomen toimisto Paikka: Helsinki, Tieteiden talo, 24.3.2011 Johdanto Verkkopalvelun saavutettavuus

Lisätiedot

XML-merkkaus. Merkkidata, prosessointikomennot, kommentit

XML-merkkaus. Merkkidata, prosessointikomennot, kommentit XML-merkkaus Merkkidata, prosessointikomennot, kommentit Merkkidata Elementtien ja attribuuttien arvot 3Merkkijonot elementtien tunnisteiden välissä 3Attribuuttien arvot 3Kielletyt merkit < & Voidaan korvata

Lisätiedot

Ctl160 Tekstikorpusten tietojenkäsittely p.1/15

Ctl160 Tekstikorpusten tietojenkäsittely p.1/15 Ctl160 490160-0 Nicholas Volk Yleisen kielitieteen laitos, Helsingin yliopisto Ctl160 490160-0 p.1/15 Lisää säännöllisistä lausekkeista Aikaisemmin esityt * ja + yrittävät osua mahdollisimman pitkään merkkijonoon

Lisätiedot

W3C: teknologia ja (tieto)yhteiskunta

W3C: teknologia ja (tieto)yhteiskunta W3C: teknologia ja (tieto)yhteiskunta Ossi Nykänen Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), W3C Suomen toimisto Esitelmä Hyvin lyhyt versio: World Wide Web Consortium

Lisätiedot

Elementtien tyyppideklaraatiot

Elementtien tyyppideklaraatiot Elementtien tyyppideklaraatiot Kuten tunnettua, XML-dokumenttien loogisen rakenteen peruspalasia ovat elementit, esim: hello world! Elementtien syntaksi seuraa suoraan XML-spesifikaation

Lisätiedot

Digitaalisen median tekniikat. JSP ja XML

Digitaalisen median tekniikat. JSP ja XML Digitaalisen median tekniikat JSP ja 28.4.2004 Harri Laine 1 JSP hyvin lyhyesti JSP on Java-pohjainen skriptikieli JSP:llä laadittu sivu käännetään java-servletiksi (sivun toteutus vastaa servlettiluokan

Lisätiedot

Kurssin aloitus. AS-0.110 XML-kuvauskielten perusteet Janne Kalliola

Kurssin aloitus. AS-0.110 XML-kuvauskielten perusteet Janne Kalliola Kurssin aloitus AS-0.110 XML-kuvauskielten perusteet Janne Kalliola English Summary The lectures will be held in Finnish The slides are in Finnish, too All other material is in English The course book

Lisätiedot

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

HTML & CSS. HTML (HyperText Markup Language) Antti Koivisto. ! HTML on sivujen kuvauskieli. HTML & CSS Antti Koivisto HTML (HyperText Markup Language)! HTML on sivujen kuvauskieli.! Se ei ole ohjelmointikieli.! HTML on merkintäkieli, joka koostuu monista merkintä tägeistä ().! Voidaan

Lisätiedot

3 Verkkosaavutettavuuden tekniset perusteet

3 Verkkosaavutettavuuden tekniset perusteet 3 Verkkosaavutettavuuden tekniset perusteet Saavutettavuuden toteuttaminen edellyttää lähtökohtaisesti tietoa laitteista ja sovelluksista, käyttäjistä ja käyttötavoista, sekä tekniikasta. Tavoitteenamme

Lisätiedot

Esimerkki: ulkoisen tyylitiedoston valinta median mukaan CSS2:n @importkomennolla:

Esimerkki: ulkoisen tyylitiedoston valinta median mukaan CSS2:n @importkomennolla: CSS2 6 CSS2 CSS2 laajentaa CSS1:stä tuoden muassaan ratkaisun osaan edellisistä ongelmista, CSS2:n uusia piirteitä ovat esim: - media-valitsin (aural, braille, embossed, handheld, print, projection, screen,

Lisätiedot

ELM GROUP 04. Teemu Laakso Henrik Talarmo

ELM GROUP 04. Teemu Laakso Henrik Talarmo ELM GROUP 04 Teemu Laakso Henrik Talarmo 23. marraskuuta 2017 Sisältö 1 Johdanto 1 2 Ominaisuuksia 2 2.1 Muuttujat ja tietorakenteet...................... 2 2.2 Funktiot................................

Lisätiedot

XML-pohjaiset rakennemäärittelyt

XML-pohjaiset rakennemäärittelyt -pohjaiset rakennemäärittelyt Ossi Nykänen Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), W3C Suomen toimisto Esitelmä Hyvin lyhyt versio: -perustainen kommunikointi edellyttää

Lisätiedot

Helsingin yliopisto Tietojenkäsittelytieteen laitos XML-metakieli (2011) Harri Laine 1. Jäsennys ja sarjallistaminen

Helsingin yliopisto Tietojenkäsittelytieteen laitos XML-metakieli (2011) Harri Laine 1. Jäsennys ja sarjallistaminen Jäsennys ja sarjallistaminen Tietorakenteen määrittely Hyvinmuodostettu / validi rakenne Rakenteen määrittely DTD XML-jäsentäjä (parser) on työkalu, joka pystyy muodostamaan puurakenteen tekstuaalisesta

Lisätiedot

W3C, Web-teknologiat ja Semanttinen Web

W3C, Web-teknologiat ja Semanttinen Web W3C, Web-teknologiat ja Semanttinen Web Ossi Nykänen Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), Hypermedialaboratorio W3C Suomen toimisto Esitelmä Hyvin lyhyt versio:

Lisätiedot

10 Nykyaikainen WWW-arkkitehtuuri

10 Nykyaikainen WWW-arkkitehtuuri 10 Nykyaikainen WWW-arkkitehtuuri è è è 10 Nykyaikainen WWW-arkkitehtuuri WWW on ylivoimaisesti suosituin hypertekstijärjestelmä. Käydään seuraavaksi läpi nykyaikaisen WWW-arkkitehtuurin perusteet. Vuonna

Lisätiedot

FORMAALI SYSTEEMI (in Nutshell): aakkosto: alkeismerkkien joukko kieliopin määräämä syntaksi: sallittujen merkkijonojen rakenne, formaali kuvaus

FORMAALI SYSTEEMI (in Nutshell): aakkosto: alkeismerkkien joukko kieliopin määräämä syntaksi: sallittujen merkkijonojen rakenne, formaali kuvaus FORMAALI SYSTEEMI (in Nutshell): Formaali kieli: aakkosto: alkeismerkkien joukko kieliopin määräämä syntaksi: sallittujen merkkijonojen rakenne, formaali kuvaus esim. SSM:n tai EBNF:n avulla Semantiikka:

Lisätiedot

2.17 Esimerkki järkevän relaatiotietokannan rakenteesta

2.17 Esimerkki järkevän relaatiotietokannan rakenteesta Rakenteisten dokumenttien perusteet 2.17 Esimerkki järkevän relaatiotietokannan rakenteesta Peruskäsitteitä: taulu/relaatio, monikko/tietue, mallinnus ja normalisointi, kytkös vs. redundanssi, anomaliat

Lisätiedot

Eero Hyvönen. Semanttinen web. Linkitetyn avoimen datan käsikirja

Eero Hyvönen. Semanttinen web. Linkitetyn avoimen datan käsikirja Eero Hyvönen Semanttinen web Linkitetyn avoimen datan käsikirja WSOY:n kirjallisuussäätiö on tukenut teoksen kirjoittamista Copyright 2018 Eero Hyvönen & Gaudeamus Gaudeamus Oy www.gaudeamus.fi Kansi:

Lisätiedot

XML / DTD / FOP -opas Internal

XML / DTD / FOP -opas Internal XML / DTD / FOP -opas Internal Reviewed: - Status: pending approval Approved by: - Author: Sakari Lampinen Revision: 1.0 Date: 15.10.2000 1 Termit DTD (data type definition) on määrittely kielelle, niinkuin

Lisätiedot

13 Nimiavaruudet. kirjoitetaan muotoon (ja koodataan vähän lisätietoa) huomataan heti, mitä kirjoittaja ajaa takaa ja tarkoittaa. Vai huomataanko?

13 Nimiavaruudet. kirjoitetaan muotoon (ja koodataan vähän lisätietoa) huomataan heti, mitä kirjoittaja ajaa takaa ja tarkoittaa. Vai huomataanko? 13 Nimiavaruudet Huomautus: Otsikon voisi kuvaavammin kirjoittaa muodossa "structdoc:section". Syy selviää piakkoin Merkkauksen ideana on helpottaa tiedon ja metatiedon erottelua tarjoamalla dokumenteille

Lisätiedot

XML, standardointi ja kehitys

XML, standardointi ja kehitys XML, standardointi ja kehitys Ossi Nykänen Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), W3C Suomen toimisto Esitelmä Hyvin lyhyt versio: XML on W3C:n suosittama perhe tekstiformaatteja

Lisätiedot

Avoimet standardit ja asiakirjamuodot Suomen julkisessa hallinnossa: teoriasta käytäntöön

Avoimet standardit ja asiakirjamuodot Suomen julkisessa hallinnossa: teoriasta käytäntöön Avoimet standardit ja asiakirjamuodot Suomen julkisessa hallinnossa: teoriasta käytäntöön Airi Salminen Jyväskylän yliopisto http://www.cs.jyu.fi/~airi/ Julkisen alan OS-seminaari 6.4.2006 Airi Salminen,

Lisätiedot

Hohde Consulting 2004

Hohde Consulting 2004 Luento 5: XQuery AS-0.110 XML-kuvauskielten perusteet Janne Kalliola XQuery XQuery uudet funktiot sekvenssit muuttujat Iterointi järjestys suodatus järjestäminen Ehtorakenteet Muita toimintoja www.hohde.com

Lisätiedot

Dokumenttien tietosisällön hallinta

Dokumenttien tietosisällön hallinta Dokumenttien hallinta & Tietojohtaminen 3. rinnakkaisteema: Dokumenttien tietosisällön hallinta Ossi Nykänen Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), W3C Suomen toimisto

Lisätiedot

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

XPages käyttö ja edut Jarkko Pietikäinen toimitusjohtaja, Netwell Oy IBM Collaboration Forum ٨.٣.٢٠١١ XPages käyttö ja edut Jarkko Pietikäinen toimitusjohtaja, Netwell Oy ٢٠١١ IBM Corporation Domino-sovelluskehitys Nopea kehitysympäristö (Rapid application development,

Lisätiedot

Poikkeusinfo XML-rajapinnan kuvaus, rajapinnan versio 2 Seasam Group

Poikkeusinfo XML-rajapinnan kuvaus, rajapinnan versio 2 Seasam Group 1.10.2010 1(15) Poikkeusinfo XML-rajapinnan kuvaus, rajapinnan versio 2 Seasam Group Graanintie 7 Tel. + 358 15 338 800 FIN-50190 MIKKELI Fax + 358 15 338 810 VERSIOHISTORIA Versio Pvm Tekijä Selite 1.0

Lisätiedot

Avoimet standardit ja arkistointi

Avoimet standardit ja arkistointi Avoimet standardit ja arkistointi Ossi Nykänen ossi@w3.org Tampereen teknillinen yliopisto (TTY) Hypermedialaboratorio W3C Suomen toimisto 1 Esitelmä Hyvin lyhyt versio: World Wide Web Consortium (W3C)

Lisätiedot

Sisällönhallinnan menetelmiä

Sisällönhallinnan menetelmiä Sisällönhallinnan menetelmiä Airi Salminen Jyväskylän yliopisto http://www.cs.jyu.fi/~airi/ Suomalaisen lainsäädäntötyön tiedonhallinta: suuntana semanttinen web RASKE2-projektin loppuseminaari Eduskunnassa

Lisätiedot

11 XML-entiteetit. <eg> Using HTML tag <FONT> is not recommended! </eg> <eg> Using HTML tag <FONT> is not recommended! </eg> XML-entiteetit

11 XML-entiteetit. <eg> Using HTML tag <FONT> is not recommended! </eg> <eg> Using HTML tag <FONT> is not recommended! </eg> XML-entiteetit 11 XML-entiteetit Entiteetit ovat tuttuja jo HTML-kielestä - entiteettien avulla dokumenttiin voidaan esim. liittää merkkijonoja, joille on annettu erisnimi Seuraava esimerkki liittää merkkidataan "

Lisätiedot

Tiedon esitys tietokoneessa. Jyry Suvilehto T-110.1100 Johdatus tietoliikenteeseen ja multimediatekniikkaan kevät 2010

Tiedon esitys tietokoneessa. Jyry Suvilehto T-110.1100 Johdatus tietoliikenteeseen ja multimediatekniikkaan kevät 2010 Tiedon esitys tietokoneessa Jyry Suvilehto T-110.1100 Johdatus tietoliikenteeseen ja multimediatekniikkaan kevät 2010 Luennon sisältö 1. Kurssin loppupuolen rakenne 2. Tiedon binääriluonne AD-muunnos 3.

Lisätiedot

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

Rakenteiset dokumentit Mitä hyötyä niistä on? Rakenteiset dokumentit Mitä hyötyä niistä on? AIPA-hankeseminaari Helsinki 28.1.2011 Airi Salminen Jyväskylän yliopisto http://users.jyu.fi/~airi/ Airi Salminen, Rakenteiset dokumentit. Mitä hyötyä? 28-01-2011

Lisätiedot

Tuomas Komulainen LUOVA LOMAKE ANALYSOINTITYÖKALU

Tuomas Komulainen LUOVA LOMAKE ANALYSOINTITYÖKALU Tuomas Komulainen LUOVA LOMAKE ANALYSOINTITYÖKALU Opinnäytetyö Kajaanin ammattikorkeakoulu Tradenomikoulutus Syksy 2007 OPINNÄYTETYÖ TIIVISTELMÄ Koulutusala Luonnontieteiden ala Koulutusohjelma Tietojenkäsittelyn

Lisätiedot

Mikä on semanttinen web?

Mikä on semanttinen web? Mikä on semanttinen web? Airi Salminen Jyväskylän yliopisto http://www.cs.jyu.fi/~airi/ Semanttinen web ja funktionaalinen luettelointi seminaari 3.5.2006 Airi Salminen, Mikä on semanttinen web? 3.5.2006

Lisätiedot

Varmennepalvelu Rajapintakuvaus Kansallisen tulorekisterin perustamishanke

Varmennepalvelu Rajapintakuvaus Kansallisen tulorekisterin perustamishanke Versio 1.0 Varmennepalvelu Rajapintakuvaus Kansallisen tulorekisterin perustamishanke Varmennepalvelu Rajapintakuvaus 2 (13) Versiohistoria Versio Päivämäärä Kuvaus 1.0 Dokumentti julkaistu. Varmennepalvelu

Lisätiedot

11.4. Context-free kielet 1 / 17

11.4. Context-free kielet 1 / 17 11.4. Context-free kielet 1 / 17 Määritelmä Tyypin 2 kielioppi (lauseyhteysvapaa, context free): jos jokainenp :n sääntö on muotoa A w, missäa V \V T jaw V. Context-free kielet ja kieliopit ovat tärkeitä

Lisätiedot

12 Dokumenttiluokkien suunnittelusta

12 Dokumenttiluokkien suunnittelusta 12 Dokumenttiluokkien suunnittelusta XML-sovellusten suunnittelun keskeinen ja toistuva osaalue on dokumenttiluokkien (tai XML-tekstiformaattien) suunnittelu. Työn kärjistetty (ja nyt tarkoituksella rajattu)

Lisätiedot