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

Koko: px
Aloita esitys sivulta:

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

Transkriptio

1 13 Nimiavaruudet Huomautus: Otsikon voisi kuvaavammin kirjoittaa muodossa "structdoc:section". Syy selviää piakkoin Merkkauksen ideana on helpottaa tiedon ja metatiedon erottelua tarjoamalla dokumenteille selkeä rakenne Esimerkki: kun teksti Leevi and the Leavings: Mitä kuuluu, Marja-Leena? Teuvo, maanteiden kuningas Mieletön Melinda kirjoitetaan muotoon (ja koodataan vähän lisätietoa) <RECORD AUTHOR="Leevi and the Leavings"> <ITEM LEN="3.42">Mitä kuuluu, Marja-Leena?</ITEM> <ITEM LEN="4.09">Teuvo, maanteiden kuningas</item> <ITEM LEN="3.14">Mieletön Melinda</ITEM> </RECORD> huomataan heti, mitä kirjoittaja ajaa takaa ja tarkoittaa. Vai huomataanko? RAKENTEISET DOKUMENTIT (kevät 2004) luentorunko ON & JH 318

2 Ongelmaa syntyy, kun samoilla elementtien nimillä on useita järkeviä tulkintoja. Asiaa on hyvin vaikea välttää etukäteen Esimerkki: entäpä jos meillä olisi annettuna vielä toinenkin dokumentti: <RECORD AUTHOR="Matti Nykänen"> <ITEM LEN="80">pieni mäki</item> <ITEM LEN="245">lentomäki</ITEM> </RECORD> Mitäs nämä sitten tarkoittavat? Ilmeisestikin eri asioita kuin edellä, mutta millä se huomataan? Entäpä jos elementin ITEM sisältö olisi vielä erilainen? On suuri kiusaus sanoa, että dokumentit erotetaan niiden sisältämän tiedon perusteella. Tietokoneelle tehtävä on kuitenkin auttamattomasti liian vaikea, koska ihminenkään ei erottelua aina pysty tekemään Esimerkki: entäpä jos dokumentit pitäisi vielä syystä tai toisesta yhdistää? Olkoon siis dokumentti, joka listaa laulaja Matti Nykäsen kappaleita ja mäkihyppyennätyksiä. Mistä elementit ITEM nyt erotetaan? <RECORD AUTHOR="Matti Nykänen"> <ITEM LEN="80">pieni mäki</item> <ITEM LEN="3.42">Yllätysten yö</item> </RECORD> RAKENTEISET DOKUMENTIT (kevät 2004) luentorunko ON & JH 319

3 Kurssin alkupuolella samantyyppiseen ongelmaan törmättiin HTMLelementtien semantiikan (ulkoasun näkökulmasta) kanssa: on tilanteita, jossa elementti P tarkoittaa yhtä ja toisaalla toista. Ongelma ratkaistiin CSSattribuutin CLASS avulla seuraavasti: <P CLASS="std">Tämä on tavallinen tekstikappale</p> <P CLASS="add">Tämä tekstikappale sisältää lisätietoja</p> XML ratkaisi kömpelön CLASS-attribuuttien käytön tarjoamalla mahdollisuuden omannimisten (-tyyppisten) elementtien määrittelyyn Edellä ongelma olisi siis voitu ratkaista XML:n avulla vaikkapa muodossa <stdp>tämä on tavallinen tekstikappale</stdp> <addp>tämä on erikoinen tekstikappale</addp> ts. kirjoittamalla kaikki tieto suoraan elementin nimeen. Tämä ei kuitenkaan poista ongelmaa, jossa eri kirjoittajat keksivät samannimisiä elementtejä (ja yhdistelevät elementtirakenteitaan) Edellä artisti-mäkihyppääjän tapauksessa ongelma voitaisiin yrittää ratkaista järkevästi keksimällä riittävän kuvaavia elementin nimiä, esim. tyyliin <SKIJUMPITEM LEN="80">pieni mäki</skijumpitem> <MUSICITEM LEN="3.42">Yllätysten yö</musicitem> RAKENTEISET DOKUMENTIT (kevät 2004) luentorunko ON & JH 320

4 Periaatteessa ratkaisu on hyvä, mutta jäljelle jää vielä hankalia ongelmia: - täsmällisistä elementtien nimistä tulee helposti mahdottoman pitkiä (SKIJUMPITEMFOROSSINYKANENSAPPLICATIONATTUTINFINLAND) - ja silti vaarana on, että joku toinen ottaa käyttöön juuri saman elementin eri merkityksessä, koska nimeämiskäytäntöä ei hallinnoida keskitetysti XML-nimiavaruudet ([XML Namespaces]) periaatteessa ratkaisee em. ongelmat: 1) elementtien ja attribuuttien nimet nimetään yksikäsitteisesti mv. pitkien tunnistemerkkijonojen avulla (jotka juuri määrittävät nimiavaruuden), 2) nimiavaruudet annetaan erityisen attribuutin avulla, jonka tulkinta on kiinteä (xmlns), 3) pitkien nimien aiheuttamat hankaluudet pyritään minimoimaan ottamalla käyttöön nimille lyhennysmerkinnät (prefiksit) ja 4) tunnistemerkkijonojen hallinta sidotaan olemassa olevaan yksikäsitteiseen tiedon nimeämiskäytäntöön (URI) RAKENTEISET DOKUMENTIT (kevät 2004) luentorunko ON & JH 321

5 XML-nimiavaruudet tarjoaa mahdollisuuden kiinnittää elementtien ja attribuuttien nimiin yksikäsitteisen nimilapun, jonka avulla kaikkien maailman elementtien ja attribuuttien nimien erottaminen toisistaan on mahdollista Esimerkki: XML-nimiavaruuksien käytön avulla ITEM-elementtien erottamisen ongelma ratkeaa nyt esim. muodossa (kun nimiavaruuksien merkitys sovitaan) <RECORD AUTHOR="Matti Nykänen"> <ITEM LEN="80" xmlns=" pieni mäki</item> <ITEM LEN="3.42" xmlns=" Yllätysten yö</item></record> Esimerkki: samaan päästään myös kvalifioitujen nimien ([qualified names]) prefiksikoodauksen avulla. Tällöin dokumentti tulee esim. muotoon <RECORD AUTHOR="Matti Nykänen" xmlns:ski=" xmlns:music=" <ski:item LEN="80"> pieni mäki </ski:item> <music:item LEN="3.42">Yllätysten yö</music:item></record> Jos tarkkoja ollaan, tilanne attribuuttien suhteen jää nimiavaruuksien näkökulmasta vielä epäselväksi (aiheeseen palataan pian) RAKENTEISET DOKUMENTIT (kevät 2004) luentorunko ON & JH 322

6 Peruskäsitteitä XML-nimiavaruudet tarjoaa siis keinon nimetä kokoelman elementtien ja attribuuttien nimiä jossakin sovelluksessa (dokumentissa). Näitä nimiä kutsutaan ko. sovelluksen sanastoksi ([vocabulary]) Esimerkki: seuraavan dokumentin sanasto on (EXAMPLE, TYPE, STRONG); samannimisten elementtien ja attribuuttien nimet osataan erottaa toisistaan <EXAMPLE TYPE="simple">Tämä on <STRONG/> tekstiä.</example> Ei-toivottua tilannetta, jossa kahden eri sanaston samoja sanoja käytetään eri merkityksessä kutsutaan törmäykseksi ([collision]) (edellä ITEMit törmäsivät) XML-nimiavaruudet -spesifikaation ([Namespaces in XML]) perusta käsittelee juuri sanastojen nimeämiskäytäntöä tavoitteena törmäysten välttäminen (ks. XML-nimiavaruus ([XML Namespace]) on kokoelma sovelluksen elementtien ja attribuuttien niminä käytettäviä nimimerkkijonoja, joka identifioidaan URImerkkijonon avulla Nimiavaruuden nimi on sitä vastaavan URI-merkkijonon arvo RAKENTEISET DOKUMENTIT (kevät 2004) luentorunko ON & JH 323

7 Esimerkki: asetetaan (oletus)nimiavaruus, jonka nimi on " <EXAMPLE xmlns=" Viittaukset nimiavaruuksiin ovat identtisiä mikäli niitä vastaavien nimiavaruuksien nimet ovat tavallisina merkkijonoina samoja URI-merkkijonoilla ei nimiavaruuksien niminä ole nimilappuna toimivan merkkijonon lisäksi muuta tulkintaa (ts. niiden ei esim. ole pakko viitata oikeisiin tiedostoihin verkossa, tms.) Esimerkki: seuraavat merkkijonot viittaavat WWW-selainten käytännön URLsemantiikan mukaisesti samaan HTML-dokumenttiin, mutta nimiavaruuksien yhteydessä tarkoittavat eri nimiavaruuksien nimiä matriisi.ee.tut.fi/hmopetus/ Nimiavaruuksien sisältämät nimet esiintyvät XML-dokumenteissa jommassakummassa kahdesta perusmuodostaan: - kvalifioituna nimenä ([qualified name]) tai - lokaalina (kvalifioimattomana) nimenä (koostuen vain nimen lokaaliosasta [local name]) RAKENTEISET DOKUMENTIT (kevät 2004) luentorunko ON & JH 324

8 Kvalifioitu nimi koostuu kahdesta kaksoispisteellä ":" erotetusta osasta: nimiavaruuden prefiksistä ja lokaaliosasta ([namespace prefix], [local part]) Esimerkki: kvalifioitu nimi elementin nimenä <ex:element>esimerkki</ex:element> Kvalifioidussa nimessä on aina täsmälleen yksi kaksoispiste ja se on ylläkuvatussa roolissa Huomaa, että XML 1.0 -spesifikaation näkökulmasta kvalifioitu nimi on tavallinen XML-nimi - ts. kaksoispisteellä ei XML 1.0:n näkökulmasta ole erityistä tulkintaa (joskaan kaksoispisteitä ei elementtien ja attribuuttien nimissä siis kannata käyttää, johtuen kaksoispisteen tulkinnasta nimiavaruuksien yhteydessä) Kvalifioidun nimen prefiksi, joka assosioidaan halutun URI-merkkijonon kanssa, valitsee nimiavaruuden Lokaali (kvalifioimaton) nimi sidotaan oletusnimiavaruuteen, perii vanhempansa nimiavaruuden tai ei kuulu mihinkään nimiavaruuteen Kvalifioidun nimen prefiksin (esim. ex) kiinnittäminen halutun nimiavaruuden kanssa suoritetaan xmlns-attribuutin avulla (esim. xmlns:ex="nimiavaruuden nimi") RAKENTEISET DOKUMENTIT (kevät 2004) luentorunko ON & JH 325

9 Nimiavaruusjulistuksen perusteet: oletusnimiavaruudet Oletusnimiavaruus ([default namespace]) määritellään nimiavaruusjulistuksen ([namespace declaration]) avulla. Käytännössä nimiavaruusjulistus tehdään XML-dokumentin esiintymäosassa xmlns-attribuutin avulla. Esimerkki: valitaan nimiavaruus " <EX xmlns=" <CONTENT ATTR="Attribuutilla ei oletuksena nimiavaruutta"> Elementin lapset perivät elementin oletusnimiavaruuden </CONTENT> </EX> Määrittelyn idea on edellä se, että attribuutti xmlns kertoo sen nimiavaruuden nimen, jonka sanastoon määrittelyn vaikutusalueella (määrittelyalueella [scope]) sijaitsevat elementit kuuluvat. Vaikutusalue selviää nimiavaruuden yksikäsitteisten periytymissääntöjen perusteella Koska nimiavaruuksien nimet ovat universaaleja (mikä siis on koko homman tavoite), ei pitäisi jäädä epäselvyyttä siitä, mikä on elementtien EX ja CONTENT rooli dokumentissa (ei törmäyksiä) RAKENTEISET DOKUMENTIT (kevät 2004) luentorunko ON & JH 326

10 XML-nimiavaruudet -spesifikaatio ei kerro miten elementtien semantiikka tulee antaa, vaan osoittaa ainoastaan menetelmän jolla elementeille voidaan valita universaalit nimet. Dokumentin sanaston semantiikka voidaan kertoa esim. sanallisesti ja esimerkkien avulla URI-viittauksen päässä olevassa HTMLdokumentissa, mutta spesifikaatio ei tätä edellytä Edellinen yksinkertainen esimerkki on vain erikoistapaus nimiavaruuksien määrittelystä. Kirjataan esimerkistä joitain huomioita: - sanaston sanojen EX, CONTENT ja ATTR nimet ovat lokaaleja nimiä (ei kvalifioituja) - attribuutti xmlns asettaa oletusnimiavaruuden arvoksi " ". Nimiavaruus asetetaan elementin EX ja sen lapsielementtien nimiavaruudeksi - koska elementti CONTENT on EX:n sisällä elementti CONTENT perii oletusnimiavaruuden (mutta attribuutti ATTR ei, johtuen sovituista perintäsäännöistä) RAKENTEISET DOKUMENTIT (kevät 2004) luentorunko ON & JH 327

11 Määrittely XML-nimiavaruudet -spesifikaatio määrittelee nimiavaruuksien käytön syntaktisen rakenteen EBNF-tuottosääntöjen muodossa (vrt. XML) Nimiavaruuksien spesifikaatio esittelee 18 tuottosääntöä, jotka yhdistetään XML 1.0 -spesifikaation kanssa Osa XML-nimiavaruudet -spesifikaation tuottosäännöistä jatkuu XMLspesifikaation tuottosääntöinä (joita ei esitellä uudelleen). Osa XMLnimiavaruudet -tuottosäännöistä taas päällekirjoittaa XML 1.0 -tuottosääntöjä, joten XML-nimiavaruudet tavallaan siis määrittää XML 1.0:n uudelleen! Ao. otteen numerointi seuraa spesifikaatiota [1] NSAttName ::= PrefixedAttName DefaultAttName [2] PrefixedAttName ::= 'xmlns:' NCName [ NSC: Leading "XML" ] [3] DefaultAttName ::= 'xmlns' [4] NCName ::= (Letter '_') (NCNameChar)* /* An XML Name, minus the ":" */ [5] NCNameChar ::= Letter Digit '.' '-' '_' CombiningChar Extender RAKENTEISET DOKUMENTIT (kevät 2004) luentorunko ON & JH 328

12 Nimiavaruusjulistus annetaan siis tehtävään varatun NSAttName-muotoisen attribuutin avulla Tuottosääntöä PrefixedAttName ([2]) vastaavan attribuutin nimen osa NCName assosioidaan attribuutin arvoksi annettavaa nimiavaruuden nimeä vastaavan nimiavaruuden prefiksiksi ([namespace prefix]) (attribuutin arvo ei tällöin saa olla tyhjä) Nimiavaruuden nimen tulee olla URI-syntaksin mukainen merkkijono (Uniform Resource Identifier ks. esim. Nimi on siis pelkkä syntaktinen nimilappu jolla ei ole URIn semantiikkaa (siis ei tarvitse olla, joskin voi olla) Oletusnimiavaruuksien käyttäminen on siis vain yksi tapa, jolla sitoa elementin nimiavaruus. Toinen (monipuolisempi) tapa on tehdä se juuri nimiavaruuksien prefiksien avulla Esimerkki: valitaan nimiavaruus " ja sille prefiksi ex <ex:example xmlns:ex=" <ex:content ex:attr="nyt attribuutillakin on nimiavaruus"> CONTENT-elementin nimiavaruus määritelty ex-prefiksin avulla </ex:content> </ex:example> RAKENTEISET DOKUMENTIT (kevät 2004) luentorunko ON & JH 329

13 Huomaa, että nimiavaruus ex otetaan käyttöön vasta kvalifioitujen elementtien ja attribuuttien nimien muodossa (xmlns:ex-julistus vain esittelee prefiksin) Nimiavaruuden prefiksiä ei ole pakko esitellä siinä elementissä, jossa prefiksiä käytetään, vaan määrittely voidaan antaa myös elementin vanhemmassa Esimerkki: nimiavaruudet ja niiden prefiksit <?xml version="1.0"?> <edi:x xmlns:edi=" <!-- edi-prefiksi viittaa nimiavaruuteen, jonka nimi on " Prefiksiä voidaan käyttää elementissä x ja kaikissa sen jälkeläisissä --> <edi:sub> <!-- nimiavaruus valittu edi-prefiksillä --> </edi:sub> <sub> <!-- nimiavaruus sama kuin edellisellä elementillä mutta nyt se on peritty elementiltä x --> </sub> <edi:sub xmlns:edi=" <!-- edi-prefiksi viittaa tässä elementissä ja sen jälkeläisissä nimiavaruuteen, jonka nimi on " --> </edi:sub> </edi:x> RAKENTEISET DOKUMENTIT (kevät 2004) luentorunko ON & JH 330

14 Kvalifioitujen nimien käyttäminen mahdollistaa erityisesti: - nimiavaruudet attribuuteille (attribuuttien nimiavaruus määrätään aina prefiksien avulla) - merkintöjen sieventämisen, jos sisäkkäiset elementit viittaavat eri nimiavaruuksiin Attribuutit, joilla ei ole nimiavaruuden prefiksiä eivät kuulu mihinkään nimiavaruuteen Esimerkki: type-attribuutin nimiavaruuden määrittely <x xmlns:xlink=" x ei kuulu mihinkään nimiavaruuteen <sub xlink:type="simple">sub-elementillä ei nimiavaruutta</sub> </x> Nimiavaruusjulistus annetaan aina XML-dokumentin esiintymäosassa (DTD:ssä julistus voidaan tuottaa välillisesti antamalla attribuuteille oletusarvoja) Tuottosääntöä DefaultAttName ([3]) vastaavan attribuutin arvo valitsee oletusnimiavaruuden ([default namespace]). Tällöin attribuutin arvo voi olla myös tyhjä (mikä tarkoittaa sitä, että nimiavaruutta ei valita lainkaan) RAKENTEISET DOKUMENTIT (kevät 2004) luentorunko ON & JH 331

15 Periytyminen, määrittelyalue ja attribuutit Nimiavaruus periytyy kvalifioimattomille elementeille Esimerkki: valitaan oletusnimiavaruudeksi " <?xml version="1.0" encoding="iso "?> <EXAMPLE xmlns=" <CONTENT ATTR="attribuutilla ei nimiavaruutta"> <!-- CONTENT perii EXAMPLE:n nimiavaruuden --> <SUB xmlns=""> <!-- SUB ei kuulu mihinkään nimiavaruuteen... --> <ITEM> <!--... eikä ITEM siksi peri nimiavaruutta --> </ITEM> </SUB> </CONTENT> <ITEM> <!-- Tämä ITEM perii EXAMPLE:n nimiavaruuden --> </ITEM> </EXAMPLE> Kvalifioimattomien elementtien tapauksessa periytyminen on siis suoraviivaista: elementti perii vanhempansa nimiavaruuden ellei toisin mainita RAKENTEISET DOKUMENTIT (kevät 2004) luentorunko ON & JH 332

16 Jos elementtejä kvalifioidaan, periytyminen on hieman monimutkaisempaa Esimerkki: valitaan oletusnimiavaruudeksi " <?xml version="1.0" encoding="iso "?> <EXAMPLE xmlns=" xmlns:foo=" xmlns:zap=" matriisi.ee.tut.fi/zap/"> <foo:content attr="attribuutilla ei oletusnimiavaruutta"> <!-- CONTENT kuuluu foo-nimiavaruuteen --> <SUB xmlns=""> <!-- Tällä SUB:lla ei nimiavaruutta --> </SUB> <SUB zap:attr="attribuutti zap-nimiavaruudessa"> <!-- Tämä SUB perii EXAMPLE:n oletusnimiavaruuden --> </SUB> </foo:content> <ITEM foo:attr="attribuutti foo-nimiavaruudessa"> <!-- ITEM perii EXAMPLE:n oletusnimiavaruuden --> </ITEM> </EXAMPLE> Kuten edellisessä esimerkissä, nimiavaruuksien nimet ja niitä vastaavat kvalifioitujen nimien prefiksit yleensä samaistetaan kielenkäytössä RAKENTEISET DOKUMENTIT (kevät 2004) luentorunko ON & JH 333

17 Elementin nimiavaruus määräytyy siis joko tämän kvalifioidun nimen, oletusnimiavaruuden tai jälkimmäisen perinnän perusteella Esimerkki: elementin ex nimiavaruuden asettaminen kahdella eri tavalla <!-- TAPA 1: oletusnimiavaruus --> <ex xmlns=" Nimiavaruudet <!-- TAPA 2: nimiavaruuden prefiksin julistus ja käyttö --> <myns:ex xmlns:myns=" Nimiavaruus periytyy aina kvalifioimattomalle elementille tämän vanhemmilta (vanhemman [perimä] oletusnimiavaruus) ellei elementti itse aseta omaa oletusnimiavaruutta. Kvalifioitu elementti ei koskaan peri nimiavaruutta, vaan prefiksi kertoo sen. Attribuuteilla perintää ei tapahdu koskaan, vaan attribuutin nimiavaruus määräytyy aina kvalifioidun nimen perusteella Tyhjän oletusnimiavaruuden antamisella nimiavaruuksien vaikutus voidaan siis kytkeä pois päältä Oletusnimiavaruuksien avulla elementtejä voidaan sitoa nimiavaruuksiin ilman, että niiden nimet täytyy kirjoittaa kvalifioidussa muodossa (tästä on suurta hyötyä esim. DTD:n määrittelyn näkökulmasta) RAKENTEISET DOKUMENTIT (kevät 2004) luentorunko ON & JH 334

18 Nimiavaruudet ja XML DTD: luvassa käytännön ongelmia Toistaiseksi nimiavaruuksien käsittelyn yhteydessä on puhuttu XMLdokumenteista mutta ei valideista XML-dokumenteista (ts. dokumenteista, jotka sisältävät dokumentin tyyppijulistuksen ja noudattavat sitä) Miten nimiavaruudet sitten pitää ottaa huomioon validien XML-dokumenttien suhteen? Vastaus: teoriassa ei mitenkään - kaikki XML DTD:stä tähän mennessä sanottu on sellaisenaan voimassa myös nimiavaruuksien suhteen! Tämä tarkoittaa seuraavaa: - nimiavaruudet ja DTD eivät yleensä ole käyttökelpoisia yhdessä - kvalifioidut nimet ovat XML 1.0-spesifikaation näkökulmasta tavallisia nimiä (nimiavaruuden ilmoittava prefiksi ja kaksoispiste on osa nimeä) - attribuutti xmlns on niinikään tavallinen attribuutti muiden joukossa (jonka järkevä tyyppi on yleensä CDATA) Seuraukset dokumenttien tyyppijulistusten näkökulmasta ovat selkeitä, mutta työläitä - jos nimiavaruuksia hyödyntävä dokumentti halutaan määrittää validiksi, pitää kaikki sallitut prefiksin käyttötavat esitellä DTD:ssä RAKENTEISET DOKUMENTIT (kevät 2004) luentorunko ON & JH 335

19 Esimerkki: seuraava pieni validi XML-dokumentti havainnollistaa nimiavaruuksien ja XML DTD:n välistä suhdetta Nimiavaruudet <?xml version="1.0" encoding="iso "?> <!DOCTYPE mydoc [ <!ELEMENT mydoc (foo:ex,zap:ex)> <!ELEMENT foo:ex (#PCDATA zap:ex ex)*> <!ELEMENT zap:ex (#PCDATA)> <!ELEMENT ex (#PCDATA)> <!ATTLIST mydoc xmlns:zap CDATA #IMPLIED xmlns:foo CDATA #IMPLIED> <!ATTLIST ex xmlns CDATA #IMPLIED> ]> <mydoc xmlns:zap=" xmlns:foo=" <foo:ex><!-- kuuluu ex-nimiavaruuteen --> <zap:ex><!-- kuuluu zap-nimiavaruuteen --></zap:ex> <ex><!-- perii foo-nimiavaruuden --></ex> <ex xmlns=" <!-- kuuluu määrittelemäänsä oletusnimiavaruuteen --> </ex> <ex xmlns=""><!-- ei nimiavaruutta --></ex> </foo:ex> <zap:ex><!-- kuuluu zap-nimiavaruuteen --></zap:ex> </mydoc> RAKENTEISET DOKUMENTIT (kevät 2004) luentorunko ON & JH 336

20 On kuitenkin erittäin todennäköistä, että tietty prefiksi halutaan aina sitoa tietyn nimiseen nimiavaruuteen. Tällöin prefiksin määräävä attribuuttilistan julistus on ilmeisen järkevää kiinnittää valmiiksi jo DTD:ssä Esimerkki: edellisessä esimerkissä olisi todennäköisesti perusteltua asettaa <!ATTLIST mydoc xmlns:zap CDATA #FIXED " xmlns:foo CDATA #FIXED " Ilmeisesti tilanne on DTD:n näkökulmasta paljon yksinkertaisempi jos tyydytään käyttämään pelkkiä oletusnimiavaruusjulistuksia - tällöin hintana on kuitenkin se, että XML-prosessorin mahdollisuudet syntaktisten virheiden löytämiseen heikkenevät entisestään (edellä nimien ja nimiavaruuksien prefiksien väärinkäyttö olisi huomattu dokumenttia validoitaessa) Vakioarvojen pakottaminen on itse asiassa niin järkevää, että monet XMLnimiavaruuksia tukevat XML-jäsentimet tätä (vastoin XML-nimiavaruudet - spesifikaatiota) vaativatkin (esim. IE5 ja XML Spy) Tilanne on käytännössä todella ongelmallinen; mikäli sovelluksissa tarvitaan monipuolisesti nimiavaruuksia, on järkevämpää määritellä dokumenttiluokan looginen rakenne XML-skeeman avulla RAKENTEISET DOKUMENTIT (kevät 2004) luentorunko ON & JH 337

21 Nimiavaruuksien käyttö edellyttää tietenkin että XML-prosessori osaa tulkita nimiavaruuksien semantiikan On erittäin tärkeätä huomata, että edellisissä esimerkeissä XML 1.0- spesifikaation näkökulmasta XML-nimiavaruuksien käsitteet kuuluvat XML 1.0:n ulkopuoliseen maailmaan (esim. "foo:ex" on vain elementin nimi siinä missä "mydoc" on elementin nimi) Erityisesti tämä tarkoittaa sitä, että joissain tilanteissa XML-nimiavaruuksien näkökulmasta kaksi eri XML 1.0:n nimeä tarkoittaa samaa asiaa (viittaavat saman sanaston samaan sanaan) Esimerkki: eri nimet mutta saman sanaston samat sanat <foo:ex xmlns:foo=" <zap:ex xmlns:zap=" Attribuuttien nimien suhteen tämä tarkoittaa sitä, että XML-kielioppia on sanastojen näkökulmasta mahdollista rikkoa ilman että XML 1.0 -prosessori tajuaa asiaa RAKENTEISET DOKUMENTIT (kevät 2004) luentorunko ON & JH 338

22 Esimerkki: seuraavassa dokumentissa on virhe (sama attribuutti ei saa esiintyä alkutagissa kuin kerran) <foo:ex xmlns:foo=" xmlns:zap=" foo:attr="attribuutti ok" zap:attr="laiton attribuutti!"/> XML-dokumenttien prosessoinnin näkökulmasta XML-nimiavaruudet tuo mukanaan vielä lisää vaikeuksia: ei-validoiva XML-jäsennin kun ei välttämättä näe aina koko XML-dokumenttia (lähinnä ulkoisten tekstientiteettien tapaus ja attribuuteille annettavat oletusarvot DTD:ssä) - tällöin voi käydä niin, että esim. prefiksijulistus jää huomiotta ja tuloksena on laiton kvalifioitu nimi XML-nimiavaruuksia tukevat jäsentimet luonnollisestikin yrittävät tarjota ratkaisua ongelmaan Esitellään lopuksi XML-nimiavaruudet -spesifikaation tuottosäännöt. Seuraavat tuottosäännöt täsmentävät aikaisemmin esiteltyjä käsitteitä (kvalifioitu nimi) [6] QName ::= (Prefix ':')? LocalPart [7] Prefix ::= NCName [8] LocalPart ::= NCName RAKENTEISET DOKUMENTIT (kevät 2004) luentorunko ON & JH 339

23 Kvalifioituja nimiä käytetään XML-nimiavaruuksien merkkausjulistuksessa kuten XML 1.0 -spesifikaation DTD:ssä (päällekkäisyys XML 1.0:n kanssa) [13] doctypedecl ::= '<!DOCTYPE' S QName (S ExternalID)? S? ('[' (markupdecl PEReference S)* ']' S?)? '>' [14] elementdecl ::= '<!ELEMENT' S QName S contentspec S? '>' [15] cp ::= (QName choice seq) ('?' '*' '+')? [16] Mixed ::= '(' S? '#PCDATA' (S? ' ' S? QName)* S? ')*' '(' S? '#PCDATA' S? ')' [17] AttlistDecl ::= '<!ATTLIST' S QName AttDef* S? '>' [18] AttDef ::= S (QName NSAttName) S AttType S DefaultDecl Kvalifioidut nimet vaikuttavat luonnollisesti merkkauksen kirjoittamiseenkin [9] STag ::= '<' QName (S Attribute)* S? '>' [10] ETag ::= '</' QName S? '>' [11] EmptyElemTag ::= '<' QName (S Attribute)* S? '/>' [12] Attribute ::= NSAttName Eq AttValue QName Eq AttValue [ NSC: Prefix Declared ] RAKENTEISET DOKUMENTIT (kevät 2004) luentorunko ON & JH 340

24 Huomautuksia XML-nimiavaruudet on todella keskeinen spesifikaatio XML-stdperheessä: lähes kaikki muu rakentuu juuri uniikkien sanastojen idean varaan Ei ole yllättävää, että XML-nimiavaruudet -spesifikaation keskeisenä tavoitteena on, että käytettävien nimiavaruuksien nimet: 1) ovat ainutkertaisia ja pysyviä ja 2) ne omistaa niitä vastaavia URIa hallinnoiva taho Mikään virallinen taho ei tietenkään hallitse tätä (vielä?), vaan kyse on käytännöllisestä sopimuksesta ja uskottavuudesta Huomaa, että attribuutin xmlns nimen suhteen ei tapahdu törmäyksiä, koska xml-alkuiset nimet on varattu W3C:n omaan käyttöön XML-nimiavaruuksien oma nimiavaruus on oletusarvoisesti Tämä sitoo automaattisesti kaikki xml-alkuiset nimet. Nimiavaruuden prefiksi pitää siis määritellä nimiavaruusjulistuksessa kaikille muille prefikseille paitsi merkkijonoille "xml" ja "xmlns" RAKENTEISET DOKUMENTIT (kevät 2004) luentorunko ON & JH 341

25 XML 1.0 -spesifikaatio ei tunnista nimiavaruuksien olemassaoloa, mikä käytännössä näkyy ongelmina XML DTD -määrittelyissä (erityisesti prefiksien osalta). XML 1.0 -prosessori ei siis (välttämättä) tiedä nimiavaruuksista mitään, eikä siten myöskään löydä nimiavaruuksien käyttöön liittyviä virheitä Ikävien yllätysten välttämiseksi kannattaakin käyttää nimiavaruuksien prefikseinä aina spesifikaatioiden antamia esimerkkiprefiksejä, mikäli suinkin mahdollista (ts. jos tämä ei aiheuta törmäyksiä oman sanaston kanssa) Esimerkki: yksinkertainen XML-hypertekstilinkki määritellään tyypillisesti näin: <element xmlns:xlink=" <link xlink:type="simple" xlink:href="def.xml">määritelmä</link> </element> määrittely olisi kuitenkin voitu antaa yhtä hyvin esim. (identtisessä) muodossa (huonosti toteutettu XML-selain ei kuitenkaan nyt välttämättä huomaa linkkiä) <element xmlns:z=" <link z:type="simple" z:href="def.xml">määritelmä</link> </element> Esimerkin vaikutukset ovat selvät: linkit toteuttavan XML-prosessorin näkökulmasta on helpompaa etsiä avainsanoja xlink:type jne. kuin toteuttaa XML-nimiavaruudet -spesifikaatio (erityisesti kvalifioitujen nimien semantiikka) RAKENTEISET DOKUMENTIT (kevät 2004) luentorunko ON & JH 342

26 XML-perusteet on käsitelty: mitäs seuraavaksi? Kun tarkoituksena on esitellä XML-standardiperhettä hypermedian näkökulmasta loogisessa järjestyksessä, olisi seuraavaksi toisen keskeisen spesifikaation, XPathin tarkan läpikäymisen vuoro. Kurssin aikataulu ei tähän mahdollisuuksia tarjoa, ikävä kyllä. Kurssin ideana on luoda tikapuut, kiivetä näillä tikapuilla talon katolle ja ihailla maisemaa. Jotta maisemasta ehdittäisiin kurssin puitteissa saada edes jonkinnäköinen aavistus, pitää tahtia jatkossa kiristää. Maiseman ihailuun nyt kannattaa tikapuiden jämäkkyyden kustannuksellakin ilmeisesti pyrkiä. Käytännössä tämä tarkoittaa sitä, että esityksen tarkkuudesta tingitään kurssin loppua kohden entistä enemmän. W3C:n XML-standardiperheeseen liittyvän suunnitelman näkökulmasta XMLnimiavaruudet ja XPath ovat vain välietappeja matkalla kohti edistyneempiä tavoitteita, kuten esim. XML-hypertekstiä (XLink) ja muunnoksia (XSLT). Tämä on suunta, johon useimmat XML-kehittäjät pyrkivät. Motivaationa on tyypillisesti hyvä hinta/laatu-suhde; käyttöön saadaan tätä kautta rikasta menetelmäkoneistoa suhteellisen vähäisellä tieto- ja työmäärällä RAKENTEISET DOKUMENTIT (kevät 2004) luentorunko ON & JH 343

27 Paljaan XML 1.0:n näkökulmasta toinen keskeinen looginen kehityksen suunta on kohti prosessoriohjelmointia. Tällöin ideana on kirjoittaa XML-dokumentteja käsittelevät (ja tulkitsevat) ohjelmat itse. Tähänkään työhön ei tarvitse ryhtyä puhtaalta pöydältä, sillä myös näitä menetelmiä on standardoitu ja jäsentimiin on tarjolla valmiita ohjelmointirajapintoja (vähentää uudelleenkeksimistä suuresti). Ao. kuva hahmottaa XML-soveltajan työn suuntia OMA PROSESSOINTI- TOTEUTUS (ESIM. SAX/DOM) MUUT RÄÄTÄLÖIDYT SOVELLUKSET VUOROVAIKUTUS XML LÄHDE- DOKU- MENTTI MUUNTAMI- NEN (XSLT) VIIMEISTELY (ESIM. CSS) XML KOHDE- DOKU- MENTTI VIIMEISTELY (ESIM. XSL-FO) KATSELEMINEN & NAVIGOIMINEN XML-STANDARDIEN MUKAISESTI OMAN RIIPPUMATTOMAN SOVELLUSKEHITYKSEN ALUE: SOVELLUKSET KIRJOITETAAN ITSE (JAVA, C++, VB, Perl, ). TYÖN TUKENA ESIMERKIT JA VALMIIT RAJAPINNAT XML-STANDARDIPERHEEN ALUE: KÄYTTÖSSÄ VALMIITA SOVELLUKSIA JA OHJELMISTOJA (ESIM. SELAIMET JA MUUT XML- JA XSLT-OHJELMISTOT) Visiot on taas visioitu. On aika jatkaa konkreettisempien asioiden käsittelyä RAKENTEISET DOKUMENTIT (kevät 2004) luentorunko ON & JH 344

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

13 XML-standardiperhe

13 XML-standardiperhe XML-standardiperhe 13 XML-standardiperhe Tähän mennessä lienee käynyt jo selväksi, mitä XML tarkoittaa: kyseessä on "vain" standardi tapa esittää puumaiseksi rakenteeksi jäsennettyä tietoa Perusmuodossaan

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

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

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

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

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

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

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

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

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

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

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 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

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

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

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

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

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

7 DTD ja entiteetit: dokumentin fyysinen rakenne

7 DTD ja entiteetit: dokumentin fyysinen rakenne è è è DTD ja entiteetit: dokumentin fyysinen rakenne 7 DTD ja entiteetit: dokumentin fyysinen rakenne Tietojenkäsittelyssä kaikki tieto talletetaan jonnekin. XML-dokumenttien fyysinen rakenne määräytyy

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

XML standardeja. nimiavaruudet, namespaces XHTML XML Schema linkitys. 26.3.2015 Jaana Holvikivi 1

XML standardeja. nimiavaruudet, namespaces XHTML XML Schema linkitys. 26.3.2015 Jaana Holvikivi 1 XML standardeja nimiavaruudet, namespaces XHTML XML Schema linkitys 26.3.2015 Jaana Holvikivi 1 Namespaces - ongelma mr. President zaphod

Lisätiedot

Luento 2: XML:n syntaksi

Luento 2: XML:n syntaksi Luento 2: XML:n syntaksi AS-0.110 XML-kuvauskielten perusteet Janne Kalliola XML:n syntaksi Peruskäsitteitä Rakennepalaset elementit leipäteksti attribuutit Nimiavaruudet Dokumentin rakenteen määrittely

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

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

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

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

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

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

CSE-A1200 Tietokannat

CSE-A1200 Tietokannat CSE-A1200 Tietokannat Osa kalvoista perustuu Juha Puustjärven luentokalvoihin kurssilta T-76.1143 sekä kurssin oppikirjaan 3.5.2016 CSE-A1200 Tietokannat 3.5.2016 1 / 39 Oppimistavoitteet: tämän luennon

Lisätiedot

11 XML-entiteetit. Edellisistä laillisia ominaisuusyhdistelmiä ovat siis vain aikaisemmin luetellut viisi:

11 XML-entiteetit. Edellisistä laillisia ominaisuusyhdistelmiä ovat siis vain aikaisemmin luetellut viisi: 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

XML-saatavuuskysely. XML-tiedoston kuvaus. versio 1.3.3 04.02.2008

XML-saatavuuskysely. XML-tiedoston kuvaus. versio 1.3.3 04.02.2008 XML-saatavuuskysely XML-tiedoston kuvaus versio 1.3.3 04.02.2008 Ecom Oy 2004-2008 XML-saatavuuskysely Versio 1.3.3 2/15 Sisällysluettelo Historia...3 Rakenteen hierarkinen esitys...4 Elementtien kuvaukset...5

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

Pysyvät tunnukset ja niiden hyödyntäminen

Pysyvät tunnukset ja niiden hyödyntäminen Pysyvät tunnukset ja niiden hyödyntäminen Arkistopalvelut uuteen nousuun 15.9.2015 Esa-Pekka Keskitalo, orcid.org/0000-0002-4411-8452 URN:NBN:fi-fe2015091511591 Sisältö Millaisista tunnuksista on puhe?

Lisätiedot

Apuja ohjelmointiin» Yleisiä virheitä

Apuja ohjelmointiin» Yleisiä virheitä Apuja ohjelmointiin» Yleisiä virheitä Ohjelmaa kirjoittaessasi saattaa Visual Studio ilmoittaa monenlaisista virheistä "punakynällä". Usein tämä johtuu vain siitä, että virheitä näytetään vaikket olisi

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

<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

XML merkintäkielten perusteet. Luento 3 Pekka Aarnio

XML merkintäkielten perusteet. Luento 3 Pekka Aarnio XML merkintäkielten perusteet Luento 3 Pekka Aarnio 1 Luennon sisältö OSA 1: XML-Schema OSA 2: XML-Schema ja nimiavaruudet 2 Osa 1: sisältö Osa 1 1. Mikä on XML-Schema-kieli 2. Tietotyypit ja elementtien

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

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

Tietokoneohjelmien käyttö laadullisen aineiston analyysin apuna

Tietokoneohjelmien käyttö laadullisen aineiston analyysin apuna Tietokoneohjelmien käyttö laadullisen aineiston analyysin apuna Laadullinen, verbaalinen, tulkinnallinen aineisto kootaan esimerkiksi haastattelemalla, videoimalla, ääneenpuhumalla nauhalle, yms. keinoin.

Lisätiedot

Rajapinnasta ei voida muodostaa olioita. Voidaan käyttää tunnuksen tyyppinä. Rajapinta on kuitenkin abstraktia luokkaa selvästi abstraktimpi tyyppi.

Rajapinnasta ei voida muodostaa olioita. Voidaan käyttää tunnuksen tyyppinä. Rajapinta on kuitenkin abstraktia luokkaa selvästi abstraktimpi tyyppi. 11. Rajapinnat 11.1 Sisällys Johdanto. Abstrakti luokka vai rajapinta? Rajapintojen hyötyjä. Kuinka rajapinnat määritellään ja otetaan käyttöön? Eläin, nisäkäs, kissa ja rajapinta. Moniperiytyminen rajapintojen

Lisätiedot

XML merkintäkielten perusteet. Luento 3 Pekka Aarnio

XML merkintäkielten perusteet. Luento 3 Pekka Aarnio XML merkintäkielten perusteet Luento 3 Pekka Aarnio 1 Luennon sisältö OSA 1: XML-Schema OSA 2: XML-Schema ja nimiavaruudet 2 Osa 1: sisältö Osa 1 1. Mikä on XML-Schema-kieli 2. Tietotyypit ja elementtien

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

7 DTD ja entiteetit: dokumentin fyysinen rakenne

7 DTD ja entiteetit: dokumentin fyysinen rakenne DTD ja entiteetit: dokumentin fyysinen rakenne 7 DTD ja entiteetit: dokumentin fyysinen rakenne Tietojenkäsittelyssä kaikki tieto talletetaan jonnekin. XML-dokumenttien fyysinen rakenne määräytyy ns. entiteettien

Lisätiedot

Helsingin yliopisto / TKTL XML-Metakieli XML Schema

Helsingin yliopisto / TKTL XML-Metakieli XML Schema W3C:n tavoite kehittää parempi määrittelykieli ilmaisuvoimaisempi XML-rakenteinen itsedokumentoiva yksinkertainen Tekniseltä kannalta tuki nimiavaruuksille käyttäjän omat tietotyypit määritysten perintä

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

Sisällys. 11. Rajapinnat. Johdanto. Johdanto

Sisällys. 11. Rajapinnat. Johdanto. Johdanto Sisällys 11. ajapinnat. bstrakti luokka vai rajapinta? ajapintojen hyötyjä. Kuinka rajapinnat määritellään ja otetaan käyttöön? Eläin, nisäkäs, kissa ja rajapinta. Moniperiytyminen rajapintojen avulla.

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

4 Johdanto XML-maailmaan

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

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

Julkishallinnon XML-skeemat v0.5 JHS-suositus

Julkishallinnon XML-skeemat v0.5 JHS-suositus Julkishallinnon XML-skeemat v0.5 JHS-suositus Keskustelutilaisuus 22.10.2008, Kansallismuseon auditorio Lasse Akselin TietoEnator lasse.akselin@tietoenator.com Sisällys Johdanto Nimeämissäännöt Skeemojen

Lisätiedot

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

H T M L eli kuinka laadin itselleni päheät kotisivut. Janne Käki 13.9.2006 H T M L eli kuinka laadin itselleni päheät kotisivut Janne Käki 13.9.2006 Mikä ihmeen HTML? HyperText Markup Language hypertekstiä eli toisiinsa linkitettyjä dokumentteja merkintäkieli, perustuu erilaisiin

Lisätiedot

SÄHKE-hanke. Tekninen mallintaminen SÄHKE-metatietojen XML Schema

SÄHKE-hanke. Tekninen mallintaminen SÄHKE-metatietojen XML Schema 04.02.2005 1 (5) SÄHKE-hanke SÄHKE-metatietojen XML Schema Versio ja pvm Laatinut Tarkpvm Tarkastanut Hyvpvm Hyväksynyt 2.0 / 04.02.2005 Anneli Rantanen 15.02.2005 Markus Merenmies 18.02.2005 Ohjausryhmä

Lisätiedot

C++11 Syntaksi. Jari-Pekka Voutilainen Jari-Pekka Voutilainen: C++11 Syntaksi

C++11 Syntaksi. Jari-Pekka Voutilainen Jari-Pekka Voutilainen: C++11 Syntaksi 1 C++11 Syntaksi Jari-Pekka Voutilainen 13.4.2012 2 Range-for Iteroi säiliön kaikki alkiot for-silmukassa. Säiliöltä vaaditaan begin- ja end-iteraattorit. Pätee kaikille C++11 STL-säiliöille, taulukoille,

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

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

Tietojen toimittaminen Skeemat Käsittelypalautteen kysely Kansallisen tulorekisterin perustamishanke

Tietojen toimittaminen Skeemat Käsittelypalautteen kysely Kansallisen tulorekisterin perustamishanke Versio 1.0 Tietojen toimittaminen Skeemat Käsittelypalautteen kysely Kansallisen tulorekisterin perustamishanke Tietojen toimittaminen Skeemat Käsittelypalautteen kysely 2 (7) Versiohistoria Versio Päivämäärä

Lisätiedot

SÄHKE-hanke. Abstrakti mallintaminen Tietomallin (graafi) lukuohje

SÄHKE-hanke. Abstrakti mallintaminen Tietomallin (graafi) lukuohje 04.02.2005 1 (6) SÄHKE-hanke Versio ja pvm Laatinut Tarkpvm Tarkastanut Hyvpvm Hyväksynyt 2.0 / 04.02.2005 Anneli Rantanen 15.02.2005 Markus Merenmies 18.02.2005 Ohjausryhmä 04.02.2005 2 (6) Muutoshistoria

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

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

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

Tietojen toimittaminen Skeemat Käsittelypalautteen kysely Kansallisen tulorekisterin perustamishanke

Tietojen toimittaminen Skeemat Käsittelypalautteen kysely Kansallisen tulorekisterin perustamishanke Versio 1.05 Tietojen toimittaminen Skeemat Käsittelypalautteen kysely Kansallisen tulorekisterin perustamishanke Tietojen toimittaminen Skeemat Käsittelypalautteen kysely 2 (8) Versiohistoria Versio Päivämäärä

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

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

XHTML - harjoitus. Tehtävä1: Tee xhtml tiedosto käyttäen notepad (muistio) ohjelmaa. Tiedoston tallennus notepad (muistio) ohjelmassa: XHTML - harjoitus Tehtävä1: Tee xhtml tiedosto käyttäen notepad (muistio) ohjelmaa Tiedoston tallennus notepad (muistio) ohjelmassa: Jokaisen XHTML-dokumentin tulisi alkaa XML-määrittelyllä(engl.XML-prologue),

Lisätiedot

Tentti erilaiset kysymystyypit

Tentti erilaiset kysymystyypit Tentti erilaiset kysymystyypit Kysymystyyppien kanssa kannatta huomioida, että ne ovat yhteydessä tentin asetuksiin ja erityisesti Kysymysten toimintatapa-kohtaan, jossa määritellään arvioidaanko kysymykset

Lisätiedot

Helsingin yliopisto/tktl XML-metakieli XPath

Helsingin yliopisto/tktl XML-metakieli XPath XML-perusrakenteen ympärille on kehitetty tekniikoita ja standardeja kuvaamaan XML-rakenteisen tiedon käsittelyä sekä tietojen välisiä kytkentöjä. Näissä keskeinen tarve on pystyä osoittamaan operaatioiden

Lisätiedot

Tentti erilaiset kysymystyypit

Tentti erilaiset kysymystyypit Tentti erilaiset kysymystyypit Monivalinta Monivalintatehtävässä opiskelija valitsee vastauksen valmiiden vastausvaihtoehtojen joukosta. Tehtävään voi olla yksi tai useampi oikea vastaus. Varmista, että

Lisätiedot

Tietojen toimittaminen Skeemat Viestit Kansallisen tulorekisterin perustamishanke

Tietojen toimittaminen Skeemat Viestit Kansallisen tulorekisterin perustamishanke Versio 1.0 Tietojen toimittaminen Skeemat Viestit Kansallisen tulorekisterin perustamishanke Tietojen toimittaminen Skeemat Viestit 2 (14) Versiohistoria Versio Päivämäärä Kuvaus 1.0 12.6.2017 Dokumentti

Lisätiedot

Verkkosivut perinteisesti. Tanja Välisalo 11.2.2009

Verkkosivut perinteisesti. Tanja Välisalo 11.2.2009 Verkkosivut perinteisesti Tanja Välisalo 11.2.2009 WWW-sivujen vieminen omaan kotisivutilaan yliopiston mikroverkossa https://salasana.jyu.fi Klikkaa painiketta Activate WWW Klikkaa painiketta Activate

Lisätiedot

Tietojen jakelu Skeemat Palvelupyyntö Kansallisen tulorekisterin perustamishanke

Tietojen jakelu Skeemat Palvelupyyntö Kansallisen tulorekisterin perustamishanke Versio 1.0 Tietojen jakelu Skeemat Palvelupyyntö Kansallisen tulorekisterin perustamishanke Tietojen jakelu Skeemat Palvelupyyntö 2 (9) Versiohistoria Versio Päivämäärä Kuvaus 1.0 12.6.2017 Dokumentti

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

Luento 4: XPath ja XLink

Luento 4: XPath ja XLink Luento 4: XPath ja XLink AS-0.110 XML-kuvauskielten perusteet Janne Kalliola XPath ja XLink XPath lausekkeet joukko-oppi askeleet siirtymät solmutestit ehdot funktiot XPathin käyttö XLink XML Base XPointer

Lisätiedot

BlueJ ohjelman pitäisi löytyä Development valikon alta mikroluokkien koneista. Muissa koneissa BlueJ voi löytyä esim. omana ikonina työpöydältä

BlueJ ohjelman pitäisi löytyä Development valikon alta mikroluokkien koneista. Muissa koneissa BlueJ voi löytyä esim. omana ikonina työpöydältä Pekka Ryhänen & Erkki Pesonen 2002 BlueJ:n käyttö Nämä ohjeet on tarkoitettu tkt-laitoksen mikroluokan koneilla tapahtuvaa käyttöä varten. Samat asiat pätevät myös muissa luokissa ja kotikäytössä, joskin

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

JHS XXX Paikkatiedon yksilöivät tunnisteet Liite 1: URI:n muodostamisen prosessi

JHS XXX Paikkatiedon yksilöivät tunnisteet Liite 1: URI:n muodostamisen prosessi JHS XXX Paikkatiedon yksilöivät tunnisteet Liite 1: URI:n muodostamisen prosessi Versio: 2014-11-10 Julkaistu: Voimassaoloaika: 1 Johdanto... 1 2 Paikallisen tunnisteen luominen tietokantaan... 1 3 Yksilöivän

Lisätiedot

Tietojen toimittaminen Skeemat Mitätöintitiedot Kansallisen tulorekisterin perustamishanke

Tietojen toimittaminen Skeemat Mitätöintitiedot Kansallisen tulorekisterin perustamishanke Versio 1.0 Tietojen toimittaminen Skeemat Mitätöintitiedot Kansallisen tulorekisterin perustamishanke Tietojen toimittaminen Skeemat Mitätöintitiedot 2 (10) Versiohistoria Versio Päivämäärä Kuvaus 1.0

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

ARVI-järjestelmän ohje arvioinnin syöttäjälle 13.4. 2015

ARVI-järjestelmän ohje arvioinnin syöttäjälle 13.4. 2015 ARVI-järjestelmän ohje arvioinnin syöttäjälle 13.4. 2015 Sisältö ARVI-menettelyn perusteet... 1 Arvioinnin syöttäminen... 2 Arvion lähettäminen TE-toimistoon... 5 Sovelluksen sulkeminen... 6 Virhetilanteiden

Lisätiedot

8 XSLT-muunnoskieli XSLT-muunnoskieli

8 XSLT-muunnoskieli XSLT-muunnoskieli 8 XSLT-muunnoskieli 51 8 XSLT-muunnoskieli XML-dokumentti kuvaa siis vain tiedon sisältöä eikä määritä ulkoasua mitenkään. CSS on suunniteltu HTML-dokumenttien ulkoasun kuvaamiseen eli tiedon esittämiseen

Lisätiedot

HELIA 1 (17) Outi Virkki Tiedonhallinta

HELIA 1 (17) Outi Virkki Tiedonhallinta HELIA 1 (17) Luento 4.1 Looginen suunnittelu... 2 Relaatiomalli... 3 Peruskäsitteet... 4 Relaatio... 6 Relaatiokaava (Relation schema)... 6 Attribuutti ja arvojoukko... 7 Monikko... 8 Avaimet... 10 Avain

Lisätiedot

TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 30. marraskuuta 2015

TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 30. marraskuuta 2015 TIEA241 Automaatit ja kieliopit, syksy 2015 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 30. marraskuuta 2015 Sisällys t Väitöstilaisuus 4.12.2015 kello 12 vanhassa juhlasalissa S212 saa tulla 2 demoruksia

Lisätiedot

è è è RDF-perusteet 7 RDF-perusteet

è è è RDF-perusteet 7 RDF-perusteet 7 RDF-perusteet Semanttisen Webin määrittelyteknisen ytimen muodostaa siis Resource Description Framework (RDF) -määritys. Tarkastellaan seuraavassa lyhyesti kielen (kaikille sovelluksille yhteisiä) primitiivejä

Lisätiedot

Tietojen jakelu Skeemat Palvelupyyntö Kansallisen tulorekisterin perustamishanke

Tietojen jakelu Skeemat Palvelupyyntö Kansallisen tulorekisterin perustamishanke Versio 1.05 Tietojen jakelu Skeemat Palvelupyyntö Kansallisen tulorekisterin perustamishanke Tietojen jakelu Skeemat Palvelupyyntö 2 (11) Versiohistoria Versio Päivämäärä Kuvaus 1.0 12.6.2017 Dokumentti

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

Kuva-aineistojen arkisto XUA-allekirjoituksen määritys

Kuva-aineistojen arkisto XUA-allekirjoituksen määritys 1 (6) Kuva-aineistojen arkisto XUA-allekirjoituksen 31.10.2017 Muokkauspäivä Versio Muutos Tekijä 31.10.2017 1.01 Muokattu Kvarkki-termi -> Kuva-aineistojen Pekka Rinne arkistoksi. Ei teknisiä muutoksia

Lisätiedot

Tietojen toimittaminen Skeemat Vastaanottokuittaus Kansallisen tulorekisterin perustamishanke

Tietojen toimittaminen Skeemat Vastaanottokuittaus Kansallisen tulorekisterin perustamishanke Versio 1.02 Tietojen toimittaminen Skeemat Vastaanottokuittaus Kansallisen tulorekisterin perustamishanke Tietojen toimittaminen Skeemat Vastaanottokuittaus 2 (10) Versiohistoria Versio Päivämäärä Kuvaus

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

JHS XXX Julkishallinnon XML-skeemat

JHS XXX Julkishallinnon XML-skeemat JHS XXX Julkishallinnon XML-skeemat Versio: 0.5 Julkaistu: Voimassaoloaika: Sisällys 1 Johdanto... 2 2 Soveltamisala... 2 3 Termit ja määritelmät... 2 4 Sanastotyön ja XML-skeemojen yhteys... 2 5 XML-rakenteiden

Lisätiedot

Oliotietokannat. Nääsvillen Oliopäivät Pekka Kähkipuro Kehitysjohtaja, FT

Oliotietokannat. Nääsvillen Oliopäivät Pekka Kähkipuro Kehitysjohtaja, FT Oliotietokannat Nääsvillen Oliopäivät 2004 15.12.2004 Pekka Kähkipuro Kehitysjohtaja, FT pekka.kahkipuro@sysopen.fi Oliotietokanta Idea: pysyvän tiedon tallentaminen suoraan oliomuodossa Tietosisältö ja

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

17/20: Keittokirja IV

17/20: Keittokirja IV Ohjelmointi 1 / syksy 2007 17/20: Keittokirja IV Paavo Nieminen nieminen@jyu.fi Tietotekniikan laitos Informaatioteknologian tiedekunta Jyväskylän yliopisto Ohjelmointi 1 / syksy 2007 p.1/10 Tavoitteita

Lisätiedot

XML:n käyttö hakkuukoneen tiedonsiirtostandardissa

XML:n käyttö hakkuukoneen tiedonsiirtostandardissa Ryhmähanke XML:n käyttö hakkuukoneen tiedonsiirtostandardissa Tuomo Vuorenpää Juha-Antti Sorsa Metsätehon raportti 88 30.3.2000 XML:n käyttö hakkuukoneen tiedonsiirtostandardissa Tuomo Vuorenpää Juha-Antti

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 20.1.2010 T-106.1208 Ohjelmoinnin perusteet Y 20.1.2010 1 / 40 Arvon pyytäminen käyttäjältä Käyttäjän antaman arvon voi lukea raw_input-käskyllä. Käskyn sulkujen

Lisätiedot

10 Ohjelmoinnista Semanttisessa Webissä

10 Ohjelmoinnista Semanttisessa Webissä 10 Ohjelmoinnista Semanttisessa Webissä Semanttista Webiä (SW) on sivuttu kurssilla useaan otteeseen. Nyt tavoitteena on käydä tiiviisti läpi Semanttisen Webin tekninen perusta, esitellä muutamia esimerkkejä

Lisätiedot

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

H T M L eli kuinka laadin itselleni päheät kotisivut. Janne Käki H T M L eli kuinka laadin itselleni päheät kotisivut Janne Käki 13.9.2006 Mikä ihmeen HTML? HyperText Markup Language hypertekstiä eli toisiinsa linkitettyjä dokumentteja merkintäkieli, perustuu erilaisiin

Lisätiedot

Tietojen toimittaminen Skeemat Vastaanottokuittaus Kansallisen tulorekisterin perustamishanke

Tietojen toimittaminen Skeemat Vastaanottokuittaus Kansallisen tulorekisterin perustamishanke Versio 1.0 Tietojen toimittaminen Skeemat Vastaanottokuittaus Kansallisen tulorekisterin perustamishanke Tietojen toimittaminen Skeemat Vastaanottokuittaus 2 (10) Versiohistoria Versio Päivämäärä Kuvaus

Lisätiedot

Suvi Junes/Pauliina Munter Tampereen yliopisto / tietohallinto 2014

Suvi Junes/Pauliina Munter Tampereen yliopisto / tietohallinto 2014 Wiki Wiki-työkalu mahdollistaa dokumenttien työstämisen kurssilla yhteisesti siten, että opettaja ja opiskelija/opiskelijat voivat muokata samaa dokumenttia. Opettaja voi luoda Jokaiselle opiskelijalle

Lisätiedot