XML-dokumenttien kommentit ovat samannäköisiä kuin HTMLdokumenteissakin: [15] Comment ::= '<!--' ((Char - '-') ('-' (Char - '-')))* '-- >'

Koko: px
Aloita esitys sivulta:

Download "XML-dokumenttien kommentit ovat samannäköisiä kuin HTMLdokumenteissakin: [15] Comment ::= '<!--' ((Char - '-') ('-' (Char - '-')))* '-- >'"

Transkriptio

1 Kommentit XML-dokumenttien kommentit ovat samannäköisiä kuin HTMLdokumenteissakin: [15] Comment ::= '<!--' ((Char - '-') ('-' (Char - '-')))* '-- >' Esimerkki: <!-- Fix this if boss finds about me using global variables! --> Huomioita: - sisäkkäiset kommentit eivät ole sallittuja - merkkijono "--" ei saa esiintyä kommentin sisällä Huomaa, että kommentin todellakin saa kirjoittaa vain XML-kieliopin osoittamiin kohtiin (sinne missä se XML-produktioissa on erikseen mainittu - käytännössä merkkauksen ulkopuolelle), vrt: [27] Misc ::= Comment PI S Esim. datalohkojen sisälle XML-kommentteja ei voi kirjoittaa RAKENTEISET DOKUMENTIT (kevät 2002) luentorunko ON 176

2 XML-dokumentti on oikein muodostettu XML-dokumentti on aina oikein muodostettu ([well-formed, WF]) Spesifikaation mukaan "tekstuaalinen objekti" on (oikein muodostettu) XMLdokumentti, jos 1) se kokonaisuutena voidaan johtaa XML-kieliopin "document"-aksiomasta, 2) se toteuttaa kaikki XML-kieliopin yhteydessä asetetut WFC-rajoitteet JA 3) jokainen parsittu entiteetti johon dokumentissa viitataan, on oikein muodostettu Tämä tarkoittaa erityisesti, että: 1) XML-dokumentti sisältää aina vähintään yhden elementin 2) XML-dokumentin jäsennyspuulla on aina yksikäsitteinen juurielementti ([root]) joka ei ole minkään toisen elementin lapsi 3) elementit ovat aina aidosti sisäkkäisiä RAKENTEISET DOKUMENTIT (kevät 2002) luentorunko ON 177

3 Huomaa, että kyseessä on "sisäänrakennettu ominaisuus"; ei ole olemassa "väärin muodostettua XML-dokumenttia" - yhtä vähän kuin on olemassa "suorakulmaista ympyrää"; - "XML-wannabee", joka ei ole WF, on "vain" esim. ASCII-dokumentti XML-terminologiasta "puuttuu" muitakin käyttökelpoisia termejä (näihin palataan dokumenttien tyyppimääritysten yhteydessä) Käytännössä XML-dokumentin erottelu puhekielessä "XML-wannabeesta" selviää yleensä asiayhteydestä (esim. jos asiaa on tutkittu XML-parserilla) Yksinkertaisin XML-dokumentti koostuu yhdestä elementistä (prologi on optionaalinen): </shortest-dokument-ever> Lyhyin "järkevä" XML-dokumentti näyttää kuitenkin tältä: <?xml version="1.0?> <mydoc> </mydoc> Yksinkertaisin mahdollinen XML-dokumentti ei kuitenkaan ole validi XMLdokumentti - tämä edellyttää dokumentin tyyppimäärittelyn olemassaoloa RAKENTEISET DOKUMENTIT (kevät 2002) luentorunko ON 178

4 XML-dokumenttien parsimisesta XML-dokumentti on aina syntaktisesti XML-kieliopin mukainen ja siis aina oikein muodostettu ([well-formed, WF]) Käytännössä XML-dokumentin kirjoitusprosessissa kuitenkin saattaa tapahtua virhe, eikä lopputuloksena olekaan (WF) XML-dokumentti Huomaa, että parsimisen yhteydessä puhutaan yleensä hieman harhaanjohtavasti "XML-dokumentin" syntaksin varmistamisesta! XML-dokumentin syntaksin voi varmentaa tietenkin "käsin", mutta järkevämpää on käyttää työhön XML-parseria - parseri toimii kuten ohjelmointikielen kääntäjä ja ilmoittaa havaitut syntaksivirheet - virheilmoitukset saadaan esim. tekstimuotoisena muodossa "virheen kuvaus, rivi, sarake, korjausehdotus" - paitsi ihmislukijalle, parserin tulostus voidaan ohjata myös XMLsovellukselle (parseria voidaan käyttää "kehittyneemmin" myös jonkin ohjelmointirajapinnan läpi - tähän palataan kurssilla myöhemmin) RAKENTEISET DOKUMENTIT (kevät 2002) luentorunko ON 179

5 Mikäli todellakin ollaan kiinnostuneita vain oikein muodostuneisuudesta, riittää ns. ei-validoiva parseri ([non-validating parser]) - periaatteessa muuten sama kuin validoiva parseri, mutta ei tutki VCrajoitteita - teknisesti helpompi toteuttaa - koska "nykyään ohjelmia on jo saatavilla", ei yksinomaan ei-validoivien parserien käyttö välttämättä ole perusteltua (paitsi kenties ohjelmistonkehityksen tai ohjelmien lisensoinnin näkökulmasta) Kannattaa muistaa, että parserikin on vain tietokoneohjelma ja (saattaa siis) sisältää virheitä! - tietokoneet kuitenkin (yleensä) tekevät vain systemaattisia virheitä! - epäselvissä tapauksissa kannattaa kokeilla eri (pohjakooodia käyttäviä) parsereita tai viime kädessä tutkia XML-spesifikaatiota Virheellinen (tai yleensä puutteellinen) toiminnallisuus XML-editoreihin sisältyvissä parsereissa ei ole tavatonta (esim. parametrientiteettien käsittelyn suhteen) RAKENTEISET DOKUMENTIT (kevät 2002) luentorunko ON 180

6 XML-parsereista XML-parseriohjelmistot jakautuvat karkeasti ottaen kolmeen kategoriaan 1) komentoriviparserit 2) sovellusohjelmaan integroidut parserit (esim. XML-editori, XMLkatseluohjelma tai XML-selain) 3) oman ohjelmakoodin kautta parseriohjelman API:n (ohjelmointirajapinta, [Application Programming Interface]) läpi käytettävät parserit "Vakavasti otettavat" parserit tarjoavat "yleensä" myös oman API:nsa, joten em. vaihtoehdot eivät käytännössä ole toisensa poissulkevia Tämän lisäksi on vielä lukemattomia erilaisia tapoja paketoida ("wrapping") komentoriviparsereita osaksi esim. WWW-sivuja Luetellaan seuraavaksi muutamia "suosittuja" (perinteisiä) XML-parsereita (useimmat ladattavina paketteina toimitettavista sisältävät myös "työkalukirjastoja" yms.) RAKENTEISET DOKUMENTIT (kevät 2002) luentorunko ON 181

7 Lark & Larval - Lark on ei-validoiva parseri, Larval myös validoi, molemmat kirjoitettu Javalla - ks. XML for Java - Javalla toteutettu hyvä validoiva XML-parseri - ks. (etsi XML for Java) Java Project X - Javalla toteutettu hyvä validoiva XML-parseri - ks. (etsi Java Project X) TinyXML - Javalla toteutettu pieneen kokoon pyrkivä ei-validoiva XML-parseri - ks RAKENTEISET DOKUMENTIT (kevät 2002) luentorunko ON 182

8 RUWF expat - WWW-pohjainen ei-validoiva XML-parseri verkossa (perustuu Larkkiin) - ks. - standardi-c:llä toteutettu ei-validoiva XML-parseri (Mozilla5) - ks. Maailmalta löytyy myös (paljon, niin paljon) listoja XML-ohjelmistoista, ks. - ("täydellisin SGML/XML-referenssi") - ("selkein" yleiskatsaus XMLohjelmistoihin) - (ilmaiset XML-ohjelmat) Lisäksi uusimmat selaimet sisältävät parsereita sekä ohjelmointirajapintatoteutuksia näihin (esim. IE5, joka "sisältää" vanhan MSXML:n) RAKENTEISET DOKUMENTIT (kevät 2002) luentorunko ON 183

9 Parseriesimerkki: XML for Java Komentoriviparserin käyttäminen on yhtä helppoa kuin ohjelmointikielen komentorivikääntäjänkin, kunhan sopivan parseripaketin on saanut koneelleen asennettua - tarkastellaan seuraavaksi esimerkkiä XML for Java -parserin käyttämisestä XML4J on Javalla toteutettu "XML-työkalupakki" joka sisältää mm. validoivan XML-parserin (paketti löytyy esim. kirjan Goldfarb et al, the XML Handbook mukana toimitettavalta rompulta) Seuraavassa esimerkissä tarkastellaan (vanhaa) XML4J versiota (pelkän parserin käytön näkökulmasta versiolla ei nyt ole niin väliä). Parserin käyttöönoton työvaiheet ovat seuraavat: 1) tarpeelliset luokat, dokumentoinnit yms. sisältyvät pakettiin xml4j zip (1,29MB) joka puretaan kovalevylle, 2) XML4J:n käyttämiseen tarvitaan myös jokin (asennettu) Java-virtuaalikone (esim. JDK 1.1 & Swing 1.1 tai JDK 1.2) 3) parserin käyttäminen tapahtuu suorittamalla parseriluokkia Javavirtuaalikoneen avulla RAKENTEISET DOKUMENTIT (kevät 2002) luentorunko ON 184

10 Olkoon (syntaksivirheitä sisältävä) syötedokumenttimme (mydoc.xml) esim. <?xml version="1.0?"> <mydoc> <P>This element does no have a closing tag &undeclared_entity; <1falsetag/> </mydoc> Dokumentin syntaksivirheiden tutkiminen suoritetaan nyt (Unixissa) komennolla java -classpath 'jar/xml4j_1_1_16.jar:jar/xml4jsamples_1_1_16.jar' samples.xjparse.xjparse mydoc.xml Tällöin XML4J tulostaa: mydoc.xml: 1, 21: "?>" expected. mydoc.xml: 2, 1: Invalid XML version format, "1.0?". mydoc.xml: 2, 1: Invalid document structure. mydoc.xml: 4, 19: Undefined entity reference, "&undeclared_entity;". mydoc.xml: 5, 1: Element name expected. mydoc.xml: 6, 7: "</P>" expected RAKENTEISET DOKUMENTIT (kevät 2002) luentorunko ON 185

11 Virheilmoitukset kuten ohjelmointikielissä ts. ilmoitettu virheen "löytymiskohta" ei välttämättä vastaa intuitiivista käsitystä siitä, mistä virhe aiheutuu - tämän voi todeta esim. poistamalla toisen lainausmerkin testidokumentin ensimmäiseltä riviltä; tällöin XML4J tulostaa: mydoc.xml: 2, 0: Attribute value must not contain '<'. mydoc.xml: 3, 0: Attribute value must not contain '<'. mydoc.xml: 4, 19: Undefined entity reference, "&undeclared_entity;". mydoc.xml: 5, 0: Attribute value must not contain '<'. mydoc.xml: 6, 0: Attribute value must not contain '<'. mydoc.xml: 7, 3: com.ibm.xml.parser.token#getpiattributes(): Unexpected end of file. XML4J on osa IBM:n alphaworks -hanketta, joka pyrkii edistämään uusimman teknologian ja standardien käyttöönottoa tarjoamalla esim. kehitysvaiheen ohjelmistokomponentteja ohjelmistonkehittäjien käyttöön - ks. Vuoden 1999 lopulla IBM lahjoitti XML4J:n xml.apache.org -projektin käyttöön (versionumero tällöin 3.0.x ja parseri muuttui nimelle Xerces) - ks RAKENTEISET DOKUMENTIT (kevät 2002) luentorunko ON 186

12 Lopuksi Huomaa, että XML-dokumentin korrekti syntaksi ja "oikein muodostuneisuus" eivät takaa, että dokumentissa olisi mitään järkeä tai että dokumentti edes toteuttaisi jotain mielekästä semantiikkaa Seuraava ohjelmanpätkä on Javan syntaksin mukainen, mutta ei "järkevä": for (i=2; i<1; ++i) {s+=i;} Seuraava ohjelmanpätkä on HTML:n syntaksin mukainen, mutta ei "järkevä": <IMG SRC="painting.mypicformat" WIDTH=0 HEIGHT=0> Nyrkkisääntönä voidaan sanoa, että "hyvässä XML-dokumentissa (dokumenttiluokassa)": - valitun elementtirakenteen käyttötarkoitus ja idea on selkeästi kuvattu - tagien merkitys ja syntaksi on dokumentoitu (laajemmin kuin pelkillä DTDdeklaraatioilla) - elementtirakenne on rikas ja merkkaus on helposti luettavissa sekä johdonmukaista RAKENTEISET DOKUMENTIT (kevät 2002) luentorunko ON 187

13 Katso myös XML-spesifikaatio 1.0 (ks. XML:n virallinen kuvaus ja nykytilanne (ks. Yleistä XML:stä: XML.COM (ks. XML-ohjelmistoista: XMLSOFTWARE (ks. XML:ään liittyvät konferensseja, tekniikkaa, yms. alan tietoa - Graphic Communications Association (ks. Jos XML:ää haluaa käyttää johonkin sellaiseen, mihin valmisohjelmistoja ei löydy, joutuu ohjelmansa kirjoittamaan itse. Java ei ole hullumpi ratkaisu (ks. esim. Lopuksi on syytä mainita, XML 1.0 spesifikaatiolla "sellaisenaan" ei vielä pitkälle pötkitä - suurin hyöty XML:stä saadaan kun sitä käytetään menetelmänä, osana muita työprosesseja ja -standardeja RAKENTEISET DOKUMENTIT (kevät 2002) luentorunko ON 188

14 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) - dokumentin loogisen rakenteen kuvaaminen omien elementtirakenteiden avulla (XML-suunnittelijan valinnan mukaan XML-syntaksin puitteissa) Kuten jo aikaisemmin todettiin, XML-kielioppi määrittää XML-dokumenttien luokan (=kaikki XML-kieliopin mukaiset "tekstidokumentit") Käytännön sovelluksissa on kuitenkin tarkoituksenmukaista jakaa XMLdokumenttien luokka pienempiin osiin, aliluokkiin, esim. tyyliin: - "kakkureseptit" - "novellit" - "kirjeet" RAKENTEISET DOKUMENTIT (kevät 2002) luentorunko ON 189

15 XML ja dokumenttien tyyppimäärittely Kukin aliluokkia edustavista dokumenteista on edelleen XML-syntaksin mukainen XML-dokumentti, jonka looginen rakenne on ko. aliluokalle tunnusomainen - kakkuresepteihin liitetään yleensä kakun nimi, valmistusaineet, leipomisohje sekä paistoaika - novelleihin liitetään yleensä kertomuksen nimi, kirjoittaja, esipuhe, kääntäjän huomautuksia sekä varsinainen tarina luvuiksi ja kappaleiksi jaoteltuna - kirjeissä on yleensä lähettäjän ja vastaanottajan nimi ja osoite, päivämäärä sekä vapaamuotoista sisältötekstiä Dokumenttiluokan dokumenttien looginen rakenne voi yleensä myös hieman vaihdella ilman että "dokumenttiluokka muuttuu miksikään" (esim. kirjeessä ei välttämättä ole lähettäjän osoitetta) - tällöin voidaan puhua geneerisistä dokumenttiluokista Huomaa, että dokumenttiluokat eivät (välttämättä) ole toisensa poissulkevia (esim. runon ja pienen novellin (geneerinen) looginen rakenne saattaa hyvinkin olla sama) RAKENTEISET DOKUMENTIT (kevät 2002) luentorunko ON 190

16 XML ja dokumenttien tyyppimäärittely Dokumenttien jako aliluokkiin tehdään yleensä niiden loogisen elementtirakenteen pohjalta käytännöllisistä syistä - dokumenttien luokittelu ei kuitenkaan välttämättä heijastele niiden "asiasisältöä" (vaikka tähän tietenkin pyritään) "Elävässä elämässä" dokumenttiluokat määräytyvät yleensä "vallitsevan käytännön" mukaisesti ilman "formalisoituja dokumenttien luokkamäärityksiä" - yritäpä etsiä jostain eksplisiittinen ohje kirjeen kirjoittamiseen! - toki joissain tapauksissa "tavanomaisten" dokumenttiluokkien kuvailuun on olemassa mallipohjia (esim. lomakkeet tai yrityskirjeiden mallit) Periaatteessa tämä riittäisi myös XML-dokumenttien tapauksessa - voimmehan aina sopia (esim. suullisesti tai esimerkkien muodossa) minkä nimisiä elementtejä valitun dokumenttiluokan dokumentit sisältävät ja mitkä ovat elementtien yhdistelyyn käytettävät säännöt Edut - dokumenttien kirjoittaminen "tuosta vain" RAKENTEISET DOKUMENTIT (kevät 2002) luentorunko ON 191

17 XML ja dokumenttien tyyppimäärittely Haitat - dokumenttiluokista tulee epämääräisiä - mikä hankaloittaa osaltaan "halutunlaisten" dokumenttien kirjoittamista ja lukemista - XML on suunniteltu täsmälliseksi tavaksi esittää dokumentteja - miksi moinen vaiva, jos sisältö "lähes mitä vain" Käytännössä XML:ssä dokumenttiluokat ilmaistaan XML-syntaksin mukaisen täsmällisen dokumentin tyyppideklaraation muodossa ([document type declaration]) (vrt. XML-kielen syntaksin esittäminen EBNF-muotoisena XMLkielioppina) - tyyppideklaraatio esittelee elementtien nimet, merkinnät ja dokumentin loogisen rakenteen "tuottosäännöt" XML-dokumentin tyyppideklaraatio koodaa dokumentin tyyppimäärittelyn ([document type definition, DTD]) joka formalisoi intuitiivisen dokumenttiluokan määrittämisen idean: DTD kertoo "minkätyyppisestä dokumentista on kyse" RAKENTEISET DOKUMENTIT (kevät 2002) luentorunko ON 192

18 XML ja dokumenttien tyyppimäärittely Tyyppideklaraation syntaksi Dokumentin tyyppimäärittely (merkinnällisesti siis tyyppideklaraatio) koostuu erityyppisistä merkkausdeklaraatiosta ([markup deklaration]) seuraavasti: - elementin tyyppideklaraatio ([element type declaration]) - attribuuttilistan deklaraatio ([attribute-list declaration]) - entiteettideklaraatio ([entity declaration]) - notaatiodeklaraatio ([notation declaration]) Dokumentin tyyppideklaraatio liitetään aina XML-dokumentin prologiin: [22] prolog ::= XMLDecl? Misc* (doctypedecl Misc*)? Tyyppideklaraatio käyttää SGML:stä tuttua DOCTYPE-koodisanaa (vrt. HTML:n tyyppimäärittely aikaisemmin): [28] doctypedecl ::= '<!DOCTYPE' S Name (S ExternalID)? S? ('[' (markupdecl PEReference S)* ']' S?)? '>' [ VC: Root Element Type ] RAKENTEISET DOKUMENTIT (kevät 2002) luentorunko ON 193

19 XML ja dokumenttien tyyppimäärittely Elementti- attribuutti- entiteetti- ja notaatiodeklaraatioiden ohella tyyppideklaraatioon voi sisällyttää myös prosessointiohjeita ja kommentteja: [29] markupdecl ::= elementdecl AttlistDecl EntityDecl NotationDecl PI Comment [ VC: Proper Declaration/PE Nesting ] [ WFC: PEs in Internal Subset ] Ulkoisen DTD-viittauksen avulla dokumentin tyyppimääritys voidaan kirjoittaa myös tekstitiedostoon, johon viitataan XML-dokumentin tyyppideklaraatiosta: [75] ExternalID ::= 'SYSTEM' S SystemLiteral 'PUBLIC' S PubidLiteral S SystemLiteral Käytännössä tämä tarkoittaa sitä, että dokumentin tyyppimäärittely jakautuu kahteen osaan, jotka yhdessä muodostavat dokumentin tyyppimäärittelyn: - sisänen DTD-osajoukko ([internal DTD-subset]) ja ulkoinen DTDosajoukko ([external DTD-subset]) Jos sekä sisäinen että ulkoinen DTD-osajoukko ovat käytössä, merkkausdeklaraatio yhdistetään ja sisäisen DTD-osajoukon esittelevät entiteetti- ja attribuuttilistadeklaraatiot tulkitaan "vahvemmiksi" kuin ulkoisen osajoukon esittelevät (elementtideklaraation päällekirjoittaminen ei ole mahdollista) RAKENTEISET DOKUMENTIT (kevät 2002) luentorunko ON 194

20 XML ja dokumenttien tyyppimäärittely Esimerkki: XML-dokumentti, jolla tyyppimääritys Seuraava XML-dokumentti sisältää yksinkertaisen dokumentin tyyppimäärityksen: Tiedosto myapplication.ent: <!ENTITY signature "-= life precedes knowledge =-"> Tiedosto testdocument.xml: <?xml version="1.0"?> <!DOCTYPE mydoc SYSTEM "myapplication.ent" [ <!ELEMENT mydoc (title, body)> <!ELEMENT title (#PCDATA)> <!ELEMENT body (#PCDATA)> ]> <mydoc> <title>first XML-doc</title> <body> Hello World! <&signature;> </body> </mydoc> RAKENTEISET DOKUMENTIT (kevät 2002) luentorunko ON 195

21 XML ja dokumenttien tyyppimäärittely Huomioita: - tiedosto testdocument.xml on (oikein muodostettu) XML-dokumentti - tiedosto myapplication.dtd on "vain" tekstitiedosto (tiedosto"päätteeksi" tosin valitaan yleensä jokin seuraavista: dtd, ent, txt) - XML-dokumentin testdocument.xml elementtirakenne sekä notaatio noudatavat DTD:ssä esitettyä (elementtien määrittelyyn palataan pian) - kysesssä on ns. validi XML-dokumentti - kyseisen dokumentin DTD koostuu sekä sisäisestä että ulkoisesta DTDosajoukosta (kumpikaan yksinään ei riitä) - XML-dokumentin prologi sisältää nyt dokumentin tyyppideklaraation - XML-dokumentin esiintymä "muuten kuten (WF) XML-dokumentissa", mutta kyseinen dokumentti ei voi olla WF (eikä siis XML-dokumentti) ilman DTD-deklaraatiota (entiteetti signature pitää esitellä) XML-dokumentin yhteydessä voidaan käyttää myös vain jompaa kumpaa DTD-osajoukkoa (valinta tehdään käytännöllisistä syistä) RAKENTEISET DOKUMENTIT (kevät 2002) luentorunko ON 196

22 XML ja dokumenttien tyyppimäärittely Koko DTD voidaan esitellä myös sisäisen DTD-osajoukon avulla. (Tällöin "osajoukko" on itse asiassa "koko joukko"). <?xml version="1.0"?> <!DOCTYPE mydoc [ <!ELEMENT mydoc (title, body)> <!ELEMENT title (#PCDATA)> <!ELEMENT body (#PCDATA)> ]> <mydoc> <title>first XML-doc</title> <body>hello!</body> </mydoc> Vastaavasti DTD kokonaisuudessaan voidaan "ottaa käyttöön" lukemalla merkkausdeklaraatio ("ulkoinen DTD-osajoukko") tiedostosta tyyliin (huomaa avainsana SYSTEM): <?xml version="1.0"?> <!DOCTYPE mydoc SYSTEM "mydocumentclass.dtd"> <mydoc> <title>first XML-doc</title> <body>hello!</body> </mydoc> Tällöin tekstitiedosto "mydocumentclass.dtd" sisältää rivit: <!ELEMENT mydoc (title, body)> <!ELEMENT title (#PCDATA)> <!ELEMENT body (#PCDATA)> RAKENTEISET DOKUMENTIT (kevät 2002) luentorunko ON 197

23 XML ja dokumenttien tyyppimäärittely Avainsana SYSTEM voidaan korvata myös sanalla PUBLIC - ero on lähinnä siinä, että PUBLIC DTD:t ovat (prosessorin) näkökulmasta "standardoituja" DTD-osajoukkojen avulla dokumenttiluokkien käsittely tehostuu: - ulkoinen DTD-osajoukko mahdollistaa yhden ja saman merkkausdeklaraatiota sisältävän tiedoston käyttämisen usean XMLdokumentin tyyppideklaraatiossa (käytännössä URL-viittauksella) - sisäisen DTD-osajoukon avulla on usein kätevää suunnitella merkkausdeklaraatiota ja toisaalta täsmentää dokumentin tyyppimääritystä (esim. entiteettien ja attribuuttien osalta) Kaikkea mahdollista merkkausdeklaraatiota ei välttämättä ole mahdollista jakaa eri DTD-osajoukkoihin (lähinnä tietyntyyppisiä entiteettejä) Lopuksi on jälleen kerran syytä todeta, että XML sisältää useita "eritasoisia" syntaktisia määrityksiä: - dokumentin merkkikoodaus: Unicode - dokumentin syntaksi: XML-kielioppi ja rajoitteet - dokumentin esiintymän looginen rakenne: DTD-kielioppi - DTD-kieliopin rakenne: suunnitellaan sovelluksen mukaan RAKENTEISET DOKUMENTIT (kevät 2002) luentorunko ON 198

<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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Luonnollisten lukujen laskutoimitusten määrittely Peanon aksioomien pohjalta

Luonnollisten lukujen laskutoimitusten määrittely Peanon aksioomien pohjalta Simo K. Kivelä, 15.4.2003 Luonnollisten lukujen laskutoimitusten määrittely Peanon aksioomien pohjalta Aksioomat Luonnolliset luvut voidaan määritellä Peanon aksioomien avulla. Tarkastelun kohteena on

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

String-vertailusta ja Scannerin käytöstä (1/2) String-vertailusta ja Scannerin käytöstä (2/2) Luentoesimerkki 4.1

String-vertailusta ja Scannerin käytöstä (1/2) String-vertailusta ja Scannerin käytöstä (2/2) Luentoesimerkki 4.1 String-vertailusta ja Scannerin käytöstä (1/2) Vertailuja tehdessä törmätään usein tilanteeseen, jossa merkkijonoa (esimerkiksi merkkijonomuuttujaa) pitää vertailla toiseen merkkijonoon. Tällöin tavanomainen

Lisätiedot

Johdatus diskreettiin matematiikkaan Harjoitus 7, 28.10.2015

Johdatus diskreettiin matematiikkaan Harjoitus 7, 28.10.2015 Johdatus diskreettiin matematiikkaan Harjoitus 7, 28.10.2015 1. Onko olemassa yhtenäistä verkkoa, jossa (a) jokaisen kärjen aste on 6, (b) jokaisen kärjen aste on 5, ja paperille piirrettynä sivut eivät

Lisätiedot

Lisää segmenttipuusta

Lisää segmenttipuusta Luku 24 Lisää segmenttipuusta Segmenttipuu on monipuolinen tietorakenne, joka mahdollistaa monenlaisten kyselyiden toteuttamisen tehokkaasti. Tähän mennessä olemme käyttäneet kuitenkin segmenttipuuta melko

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

Väli- ja loppuraportointi

Väli- ja loppuraportointi Väli- ja loppuraportointi Hyvän raportin merkitys hankkeen tulosten kuvaamisessa Sari Ahvenainen ESR-koordinaattori 25.5.2011 Uudenmaan ELY-keskus Väliraportti (1/8) Miksi väliraportti tehdään? - Tarkoituksena

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

MITÄ JAVASCRIPT ON?...3

MITÄ JAVASCRIPT ON?...3 JavaScript MITÄ JAVASCRIPT ON?...3 YLEISTÄ JAVASCRIPTIN SYNTAKSISTA...3 KÄSKYSANAT JA MUUT VARATUT SANAT...3 MUUTTUJIEN, FUNKTIOIDEN JA LUOKKIEN NIMISSÄ...3 HTML-TAGEIHIN VIITTAAVISSA METODINIMISSÄ...3

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

- Valitaan kohta Asetukset / NAT / Ohjelmallinen palvelin - Seuraavassa esimerkki asetuksista: valitaan käytössä oleva ohjelmistorajapinta

- Valitaan kohta Asetukset / NAT / Ohjelmallinen palvelin - Seuraavassa esimerkki asetuksista: valitaan käytössä oleva ohjelmistorajapinta TW-EAV510: VALVONTAKAMERAN KYTKEMINEN VERKKOON OPERAATTORIN IP-OSOITE - Jotta valvontakameran käyttöä varten saadaan avattua tarvittavat portit, pitää operaattorilta saada julkinen IP-osoite, jotta kaikki

Lisätiedot

X-Robot-sovellus ja ITK222 XML-laboratoriotyö -kurssi

X-Robot-sovellus ja ITK222 XML-laboratoriotyö -kurssi Euroopan Yhteisö INMIDE Informaatioteknologian Keski-Suomen koulutushanke Jyväskylän yliopisto X-Robot-sovellus ja ITK222 XML-laboratoriotyö -kurssi Anne Honkaranta Jy/Digitaalinen media anne.honkaranta@it.jyu.fi

Lisätiedot

Web-teknologiat. XML-datan kysely Topi Sarkkinen

Web-teknologiat. XML-datan kysely Topi Sarkkinen Web-teknologiat XML-datan kysely Topi Sarkkinen Sisältö XML (lyhyesti) XPath XQuery XSLT XML Extensible Markup Language Ihmisten ja koneiden luettava metakieli, jolla voidaan määritellä muitakin kieliä

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

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

5. HelloWorld-ohjelma 5.1

5. HelloWorld-ohjelma 5.1 5. HelloWorld-ohjelma 5.1 Sisällys Lähdekoodi. Lähdekoodin (osittainen) analyysi. Lähdekoodi tekstitiedostoon. Lähdekoodin kääntäminen tavukoodiksi. Tavukoodin suorittaminen. Virheiden korjaaminen 5.2

Lisätiedot

Hae Opiskelija käyttöohje

Hae Opiskelija käyttöohje Hae Opiskelija käyttöohje Yleistä Hae Opiskelija hakuikkunan toiminto on uudistettu tavoitteena saada selkeämpi ja helppokäyttöisempi rakenne. Käyttäjä valitsee ensin, kumpaa hakua haluaa käyttää, Perushaku

Lisätiedot

11 XML-entiteetit. <eg> HTML-elementin <FONT> käyttöä ei suositella! </eg> <eg> HTML-elementin <FONT> käyttöä ei suositella! </eg> XML-entiteetit

11 XML-entiteetit. <eg> HTML-elementin <FONT> käyttöä ei suositella! </eg> <eg> HTML-elementin <FONT> käyttöä ei suositella! </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

Huomaathan, että ohjeessa olevat näytöistä otetut kuvat voivat poiketa sinun koulutuksesi vastaavien sivujen kuvista.

Huomaathan, että ohjeessa olevat näytöistä otetut kuvat voivat poiketa sinun koulutuksesi vastaavien sivujen kuvista. OHJE OPISKELIJALLE MOODLEN KÄYTTÖÖN 1/5 2011/2012 MOODLE KOULUTUKSESSA Työterveyslaitoksella käytetään Moodle -verkko-oppimisalustaa. Potilassiirtojen Ergonomia - koulutus on monimuotokoulutusta, johon

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

Sähköpostiohjeet. Tehokas ja huoleton sähköposti

Sähköpostiohjeet. Tehokas ja huoleton sähköposti Sähköpostiohjeet 1 Uuden PST tiedoston luominen sähköposteille... 3 Tärkeää!... 3 Tiedoston luominen... 3 Kansioiden luominen datatiedostoon... 5 Pikatoimintojen luominen... 8 Odottaa vastausta allekirjoitus...

Lisätiedot

Matematiikan tukikurssi

Matematiikan tukikurssi Matematiikan tukikurssi Kurssikerta 8 1 Derivaatta Tarkastellaan funktion f keskimääräistä muutosta tietyllä välillä ( 0, ). Funktio f muuttuu tällä välillä määrän. Kun tämä määrä jaetaan välin pituudella,

Lisätiedot

Raportointi hankkeen tulosten kuvaajana ja toteutuksen tukena

Raportointi hankkeen tulosten kuvaajana ja toteutuksen tukena Raportointi hankkeen tulosten kuvaajana ja toteutuksen tukena Tiivistelmät, väli- ja loppuraportit Auli Vuorela ESR-koordinaattori Uudenmaan ELY-keskus 6.5.2013 Raportteja, raportteja, raportteja Loppuraportti

Lisätiedot

Viestintäsuunnitelma. 19.10.2015 Student Lifen ohjausryhmä

Viestintäsuunnitelma. 19.10.2015 Student Lifen ohjausryhmä Viestintäsuunnitelma 19.10.2015 Student Lifen ohjausryhmä Sisältö lyhyesti 1. Student Lifen viestinnän lähtökohdat ja nykytilanne 2. Viestinnän tavoitteet ja niiden saavuttaminen 3. Viestinnän kohderyhmät

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

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

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

Laboratoriotyön sisältö. Pareittain tehtävä laboratoriotyö Vaatimukset: Laboratoriotyöskentely Loppuraportti (1 raportti/työ)

Laboratoriotyön sisältö. Pareittain tehtävä laboratoriotyö Vaatimukset: Laboratoriotyöskentely Loppuraportti (1 raportti/työ) Päällystyksen ja pintakäsittelyn kemiaa laboratoriotyöt kevät 2012 n. 15 h labratyöskentelyä Laboratoriotyön sisältö Pareittain tehtävä laboratoriotyö Vaatimukset: Laboratoriotyöskentely Loppuraportti

Lisätiedot

Ohjelmoinnin perusteet, syksy 2006

Ohjelmoinnin perusteet, syksy 2006 Ohjelmoinnin perusteet, syksy 2006 Esimerkkivastaukset 1. harjoituksiin. Alkuperäiset esimerkkivastaukset laati Jari Suominen. Vastauksia muokkasi Jukka Stenlund. 1. Esitä seuraavan algoritmin tila jokaisen

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

Uudistuva RISKINARVIO-ohje

Uudistuva RISKINARVIO-ohje Uudistuva RISKINARVIO-ohje Kommentteja luonnoksesta Terhi Svanström 20.9.2013 30.9.2013 Page 1 Yleisiä huomioita rakenteesta ja käsitteistä Kommentteja riskinarviointi-osuudesta Kehuja 30.9.2013 Page 2

Lisätiedot

Matkahuolto lisäosa WooCommerce alustalle (c) Webbisivut.org

Matkahuolto lisäosa WooCommerce alustalle (c) Webbisivut.org Matkahuolto lisäosa WooCommerce alustalle (c) Webbisivut.org Sisällysluettelo Yleistä...3 Asennus... 4 Asetukset... 4 Toimitustavat... 5 Tilauksen käsittely...6 Huomioitavaa... 7 Lähipaketti toimitustapa...

Lisätiedot

L models. Käyttöohje. Ryhmä Rajoitteiset

L models. Käyttöohje. Ryhmä Rajoitteiset Teknillinen korkeakoulu T-76.115 Tietojenkäsittelyopin ohjelmatyö Lineaaristen rajoitteiden tyydyttämistehtävän ratkaisija L models Käyttöohje Ryhmä Rajoitteiset Versio Päivämäärä Tekijä Muutokset 0.1

Lisätiedot

Ohjelmointikielet ja -paradigmat 5op. Markus Norrena

Ohjelmointikielet ja -paradigmat 5op. Markus Norrena Ohjelmointikielet ja -paradigmat 5op Markus Norrena Ko#tehtävä 4 Viimeistele "alkeellinen kuvagalleria". Käytännössä kaksi sivua Yksi jolla voi ladata kuvia palvelimelle (file upload) Toinen jolla ladattuja

Lisätiedot

Mobiiliturva Palvelun käyttöönotto

Mobiiliturva Palvelun käyttöönotto Mobiiliturva Palvelun käyttöönotto Protecting the irreplaceable f-secure.com Sovelluksen lataus Tilattuaan Mobiiliturva palvelun, asiakas saa Android-laitteeseensa latauslinkin*, jota klikkaamalla sovellus

Lisätiedot

Kehitysohje. ETL-työkalu. ExtraTerrestriaLs / Aureolis Oy

Kehitysohje. ETL-työkalu. ExtraTerrestriaLs / Aureolis Oy Kehitysohje ETL-työkalu Versio Pvm Tekijä Kuvaus 0.1 15.1.2005 Timo Sallinen Ensimmäinen versio 0.2 26.1.2005 Timo Sallinen Täydenetty pohjaa 0.3 06.02.2005 Mika Suvanto Pieniä täydennyksiä ja oikolukua

Lisätiedot

Induktio kaavan pituuden suhteen

Induktio kaavan pituuden suhteen Induktio kaavan pituuden suhteen Lauselogiikan objektikieli määritellään kurssilla Logiikka 1B seuraavasti: 1. Lausemuuttujat p 1, p 2, p 3,... ovat kaavoja. 2. Jos A on kaava, niin A on kaava. 3. Jos

Lisätiedot

CSS - tyylit. 13.11.2000 Seppo Räsänen

CSS - tyylit. 13.11.2000 Seppo Räsänen CSS - tyylit 13.11.2000 Seppo Räsänen Sivu 2 1 CSS-tyylit Dynaaminen HTML tai DHTML on standardi, joiden käyttöä tukevat uusimmat Netscapen ja Microsoftin selaimet. DHTML:n ominaisuuksia ovat tyylitiedostot

Lisätiedot

Taulukkolaskenta II. Taulukkolaskennan edistyneempiä piirteitä

Taulukkolaskenta II. Taulukkolaskennan edistyneempiä piirteitä Taulukkolaskenta II Taulukkolaskennan edistyneempiä piirteitä Edistyneempää taulukkolaskentaa Tekstitiedoston tuonti taulukkolaskentaohjelmaan Lajittelu - taulukon lajittelu pyydettyjen sarakkeiden mukaan

Lisätiedot

Aluksi. 2.1. Kahden muuttujan lineaarinen epäyhtälö

Aluksi. 2.1. Kahden muuttujan lineaarinen epäyhtälö Aluksi Matemaattisena käsitteenä lineaarinen optimointi sisältää juuri sen saman asian kuin mikä sen nimestä tulee mieleen. Lineaarisen optimoinnin avulla haetaan ihannearvoa eli optimia, joka on määritelty

Lisätiedot

Lyhyt kertaus osoittimista

Lyhyt kertaus osoittimista , syksy 2007 Kertausta Luento 10 12.10.2007 Syksy 2007 1 Lyhyt kertaus osoittimista char *p; /* char, int, jne ilmoittavat, minkä tyyppisiä */ Keskusmuisti int *q; /* olioita sisältäviin muistilohkoihin

Lisätiedot

Työtapaturman ilmoittaminen 2016-> Uusi sähköinen lomake, täyttäminen esimies ja palkkahallinto

Työtapaturman ilmoittaminen 2016-> Uusi sähköinen lomake, täyttäminen esimies ja palkkahallinto Työtapaturman ilmoittaminen 2016-> Uusi sähköinen lomake, täyttäminen esimies ja palkkahallinto Aloitus Valitse ensin vahinkotyyppi ja paina Jatka-nappia. Jos avautuu lisäkysymyksiä vakuutukseen liittyen,

Lisätiedot

Pedacode Pikaopas. Java-kehitysympäristön pystyttäminen

Pedacode Pikaopas. Java-kehitysympäristön pystyttäminen Pedacode Pikaopas Java-kehitysympäristön pystyttäminen Pikaoppaan sisältö Pikaoppaassa kuvataan, miten Windowstyöasemalle asennetaan Java-ohjelmoinnissa tarvittavat työkalut, minkälaisia konfigurointeja

Lisätiedot

Luento 6. June 1, 2015. Luento 6

Luento 6. June 1, 2015. Luento 6 June 1, 2015 Normaalimuodon pelissä on luontevaa ajatella, että pelaajat tekevät valintansa samanaikaisesti. Ekstensiivisen muodon peleissä pelin jonottaisella rakenteella on keskeinen merkitys. Aluksi

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

II- luento. Etiikan määritelmiä. Eettisen ajattelu ja käytänteet. 1 Etiikka on oikean ja väärän tutkimusta

II- luento. Etiikan määritelmiä. Eettisen ajattelu ja käytänteet. 1 Etiikka on oikean ja väärän tutkimusta II- luento Eettisen ajattelu ja käytänteet Etiikan määritelmiä 1 Etiikka on oikean ja väärän tutkimusta 2. Etiikka ei ole samaa kuin moraali, se on moraalin tutkimusta 3. Etiikka ei ole tutkimusta siitä,

Lisätiedot

monissa laskimissa luvun x käänteisluku saadaan näyttöön painamalla x - näppäintä.

monissa laskimissa luvun x käänteisluku saadaan näyttöön painamalla x - näppäintä. .. Käänteisunktio.. Käänteisunktio Mikäli unktio : A B on bijektio, niin joukkojen A ja B alkioiden välillä vallitsee kääntäen yksikäsitteinen vastaavuus eli A vastaa täsmälleen yksi y B, joten myös se

Lisätiedot

http://www.microsoft.com/expression/

http://www.microsoft.com/expression/ Verkkojulkaisuharjoitus1 TAVOITE Harjoituksen tarkoituksena on opiskella käyttämään verkkojulkaisueditoria (Microsoft Expression Web) ja käynnistämään verkkosivu internetissä. VERKKOSIVUEDITORIN KÄYTTÖOHJEITA

Lisätiedot

4.1 Mitä autopaikalle saa pysäköidä?

4.1 Mitä autopaikalle saa pysäköidä? 4 Autopaikan ja autotallin käyttö 4.1 Mitä autopaikalle saa pysäköidä? Välillä taloyhtiöissä esiintyy erimielisyyttä siitä, saako autopaikalle pysäköidä esimerkiksi matkailuajoneuvon, pakettiauton tai

Lisätiedot

Testitapaukset. Hannu Hautakangas Nikolai Koudelia Joel Lehtonen Johan Nysten. Versio 0.1 Julkinen 8.1.2009

Testitapaukset. Hannu Hautakangas Nikolai Koudelia Joel Lehtonen Johan Nysten. Versio 0.1 Julkinen 8.1.2009 Testitapaukset Hannu Hautakangas Nikolai Koudelia Joel Lehtonen Johan Nysten Versio 0.1 Julkinen 8.1.2009 Jyväskylän yliopisto Tietotekniikan laitos Jyväskylä Hyväksyjä Päivämäärä Allekirjoitus Nimenselvennys

Lisätiedot

PROJEKTIN DOKUMENTOINTI JOUNI HUOTARI, ESA SALMIKANGAS

PROJEKTIN DOKUMENTOINTI JOUNI HUOTARI, ESA SALMIKANGAS PROJEKTIN DOKUMENTOINTI JOUNI HUOTARI, ESA SALMIKANGAS MIKSI DOKUMENTOINTI ON TÄRKEÄÄ? MITÄ ASIOITA DOKUMENTOIDAAN? Pohdi ensin yksin ja sitten parin kanssa tai pienryhmässä: miksi dokumentointi on niin

Lisätiedot

Matematiikan tukikurssi 3.4.

Matematiikan tukikurssi 3.4. Matematiikan tukikurssi 3.4. Neliömuodot, Hessen matriisi, deiniittisyys, konveksisuus siinä tämän dokumentin aiheet. Neliömuodot ovat unktioita, jotka ovat muotoa T ( x) = x Ax, missä x = (x 1,, x n )

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

ASCII-taidetta. Intro: Python

ASCII-taidetta. Intro: Python Python 1 ASCII-taidetta All Code Clubs must be registered. Registered clubs appear on the map at codeclubworld.org - if your club is not on the map then visit jumpto.cc/18cplpy to find out what to do.

Lisätiedot

Sonera Hosted Mail -palvelun käyttöohje 12.05.2011

Sonera Hosted Mail -palvelun käyttöohje 12.05.2011 Sonera Hosted Mail -palvelun käyttöohje 12.05.2011 Sonera Hosted Mail -palvelun käyttöohje 1. Johdanto Hosted Mail on yrityskäyttöön suunniteltu sähköposti- ja ryhmätyösovelluspalvelu. Se perustuu Microsoft

Lisätiedot

KURSSIVALINNAT & YLIOPPILASKIRJOITUKSET

KURSSIVALINNAT & YLIOPPILASKIRJOITUKSET KURSSIVALINNAT & YLIOPPILASKIRJOITUKSET Ohjeita kurssivalintojen tekemiseen ylioppilaskirjoitusten näkökulmasta Tämän koonnin tavoitteena on auttaa Sinua valitsemaan oikeat kurssit oikeaan aikaan suhteessa

Lisätiedot

2.2 Täydellinen yhtälö. Ratkaisukaava

2.2 Täydellinen yhtälö. Ratkaisukaava . Täydellinen yhtälö. Ratkaisukaava Tulon nollasäännöstä näkee silloin tällöin omituisia sovellutuksia. Jotkut näet ajattelevat, että on olemassa myöskin tulon -sääntö tai tulon "mikä-tahansa"- sääntö.

Lisätiedot

Diskreetit rakenteet

Diskreetit rakenteet Diskreetit rakenteet 811120P 5 op 7. Oulun yliopisto Tietojenkäsittelytieteiden laitos 2015 / 2016 Periodi 1 Mikä on verkko? verkko (eli graafi) koostuu solmuista ja väleistä, jotka yhdistävät solmuja

Lisätiedot

Harjoitus 1 -- Ratkaisut

Harjoitus 1 -- Ratkaisut Kun teet harjoitustyöselostuksia Mathematicalla, voit luoda selkkariin otsikon (ja mahdollisia alaotsikoita...) määräämällä soluille erilaisia tyylejä. Uuden solun tyyli määrätään painamalla ALT ja jokin

Lisätiedot

OULUN SEUDUN AMMATTIKORKEAKOULU TEKNIIKAN YKSIKKÖ TIETOTEKNIIKAN OSASTO OHJELMISTOKEHITYKSEN SUUNTAUTUMISVAIHTOEHTO

OULUN SEUDUN AMMATTIKORKEAKOULU TEKNIIKAN YKSIKKÖ TIETOTEKNIIKAN OSASTO OHJELMISTOKEHITYKSEN SUUNTAUTUMISVAIHTOEHTO OULUN SEUDUN AMMATTIKORKEAKOULU TEKNIIKAN YKSIKKÖ TIETOTEKNIIKAN OSASTO OHJELMISTOKEHITYKSEN SUUNTAUTUMISVAIHTOEHTO TUOTEKEHITYSPAINOTTEISET OPINNOT JA YRITYSYHTEISTYÖN MAHDOLLISUUDET EERO NOUSIAINEN eero.nousiainen@oamk.fi

Lisätiedot

OHJ-1151 Ohjelmointi IIe

OHJ-1151 Ohjelmointi IIe Tampereen teknillinen yliopisto Ohjelmistotekniikan laitos OHJ-1151 Ohjelmointi IIe Harjoitustyö Tomaattisota Välipalautus / Loppudokumentaatio Assistentin nimi Välipalautusaika (päivä ja kellonaika) ja

Lisätiedot

PROJEKTIN OHJAUS JA SEURANTA JOUNI HUOTARI, ESA SALMIKANGAS

PROJEKTIN OHJAUS JA SEURANTA JOUNI HUOTARI, ESA SALMIKANGAS PROJEKTIN OHJAUS JA SEURANTA JOUNI HUOTARI, ESA SALMIKANGAS PROJEKTIN JOHTAMINEN ON YKSINKERTAISTA PUUHAA Projektin suunnittelua Projektin toteutusta Listaa tehtävät Tehkää tehtävät Projektin ohjausta

Lisätiedot

Tutkimusdatanhallinnan suunnittelu ja DMPTuuli-työkalu

Tutkimusdatanhallinnan suunnittelu ja DMPTuuli-työkalu Tutkimusdatanhallinnan suunnittelu ja DMPTuuli-työkalu KIRJASTON NEUVOTTELUKUNNAT MARI ELISA (MEK) KUUSNIEMI, TUULIN PROJEKTIPÄÄLLIKKÖ, TUTKIMUKSEN PALVELUT, HELSINGIN YLIOPISTON KIRJASTO Tutkimusprojektin

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

Asteri Kirjanpito Dos ALV% nousu 1 %-yksiköllä Vuosipäivitys 26.11.2012

Asteri Kirjanpito Dos ALV% nousu 1 %-yksiköllä Vuosipäivitys 26.11.2012 Asteri Kirjanpito Dos ALV% nousu 1 %-yksiköllä Vuosipäivitys 26.11.2012 Atsoft Oy Mäkinen www.atsoft.fi Puh. (09) 350 75 30 Päivystys: atsoft@atsoft.fi Fax (09) 351 55 32 0400 316 088 Viime hetken tiedot

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

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

Prosessit etyön kehittämisessä

Prosessit etyön kehittämisessä Prosessit etyön kehittämisessä Hanna Alila, Oulun yliopisto 15.4.2011 Hanke lyhyesti eprosessit-hankkeen päätavoitteena on tutkia empiirisesti vuorovaikutus- ja etäteknologoita caseorganisaatioiden johtamisessa

Lisätiedot

Hieman linkkejä: http://cs.stadia.fi/~kuivanen/linux/kom.php, lyhyt ohje komentoriviohjelmointiin.

Hieman linkkejä: http://cs.stadia.fi/~kuivanen/linux/kom.php, lyhyt ohje komentoriviohjelmointiin. Linux-harjoitus 9 Linuxin mukana tulevat komentotulkit (mm. bash, tcsh, ksh, jne ) sisältävät ohjelmointikielen, joka on varsin tehokas ja ilmaisuvoimainen. Tähän yhdistettynä unix-maailmasta tutut tehokkaat

Lisätiedot

Digitaalisen median tekniikat xhtml - jatkuu

Digitaalisen median tekniikat xhtml - jatkuu Digitaalisen median tekniikat xhtml - jatkuu 26.3.2004 Harri Laine 1 Lomakkeet mahdollistavat tiedon välityksen asiakkaalta (selaimesta) tiedon vastaanottajalle Vastaanottaja voi olla sähköpostiosoite

Lisätiedot

Digitaalisen median tekniikat xhtml - jatkuu Harri Laine 1

Digitaalisen median tekniikat xhtml - jatkuu Harri Laine 1 Digitaalisen median tekniikat xhtml - jatkuu 30.4.2004 Harri Laine 1 XHTML lomakkeet Lomakkeet mahdollistavat tiedon välityksen asiakkaalta (selaimesta) tiedon vastaanottajalle Vastaanottaja voi olla sähköpostiosoite

Lisätiedot

JWT 2016 luento 11. to 21.4.2016 klo 14-15. Aulikki Hyrskykari. PinniB 1097. Aulikki Hyrskykari

JWT 2016 luento 11. to 21.4.2016 klo 14-15. Aulikki Hyrskykari. PinniB 1097. Aulikki Hyrskykari JWT 2016 luento 11 to 21.4.2016 klo 14-15 Aulikki Hyrskykari PinniB 1097 1 Viime luennolla o AJAX ja JSON, harjoitustyön tehtävänanto, vierailuluento avoimesta datasta Tänään o APIt rajapinnoista yleisesti

Lisätiedot

Massaeditorikoulutus 8.12.2015. KANSALLISKIRJASTO - Kirjastoverkkopalvelut

Massaeditorikoulutus 8.12.2015. KANSALLISKIRJASTO - Kirjastoverkkopalvelut Massaeditorikoulutus 8.12.2015 Massaeditoinnin toimintaperiaate Kokoelman tai hakutuloksen tietueet (itemit) voidaan eksportoida CSV-tiedostona omalle työasemalle taulukkomuodossa CSV:tä muokataan Libre/OpenOfficen

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

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

TILASTOLLINEN LAADUNVALVONTA

TILASTOLLINEN LAADUNVALVONTA 1 Aki Taanila TILASTOLLINEN LAADUNVALVONTA 31.10.2008 2 TILASTOLLINEN LAADUNVALVONTA Tasalaatuisuus on hyvä tavoite, jota ei yleensä voida täydellisesti saavuttaa: asiakaspalvelun laatu vaihtelee, vaikka

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 15.3.2010 T-106.1208 Ohjelmoinnin perusteet Y 15.3.2010 1 / 56 Tiedostoista: tietojen tallentaminen ohjelman suorituskertojen välillä Monissa sovelluksissa ohjelman

Lisätiedot

Itä-Suomen. työturvallisuuskilpailu. Kuopio Iso-Valkeinen 30.3.2016

Itä-Suomen. työturvallisuuskilpailu. Kuopio Iso-Valkeinen 30.3.2016 Itä-Suomen työturvallisuuskilpailu 2016 Kuopio Iso-Valkeinen 30.3.2016 ITÄ-SUOMEN TYÖTURVALLISUUSKILPAILU 2016 Kilpailu ajoittuu välille 04/16-10/16 Jokaisen jäsenyrityksen jokainen työmaa on automaattisesti

Lisätiedot

Johdatus L A TEXiin. 6. Omat komennot ja lauseympäristöt Markus Harju. Matemaattiset tieteet

Johdatus L A TEXiin. 6. Omat komennot ja lauseympäristöt Markus Harju. Matemaattiset tieteet Johdatus L A TEXiin 6. Omat komennot ja lauseympäristöt Markus Harju Matemaattiset tieteet Omat komennot I a L A TEXin valmiiden komentojen lisäksi kirjoittaja voi itse määritellä omia komentojaan. Tämä

Lisätiedot