XML merkintäkielten perusteet. Luento 2 - XSLT Pekka Aarnio

Koko: px
Aloita esitys sivulta:

Download "XML merkintäkielten perusteet. Luento 2 - XSLT Pekka Aarnio"

Transkriptio

1 XML merkintäkielten perusteet Luento 2 - XSLT Pekka Aarnio

2 Luennon sisältö OSA 1: XSLT-kieli OSA 2: XML Nimiavaruudet (OSA 3: AutomationML lyhyt kuvaus harjoitustehtävän tueksi)

3 Luento 2: OSA1 XSL-MUUNNOKSET

4 OSA 1-Sisältö XSLT:n käyttö tietointegroinnissa XSLT-prosessoinnin vaiheet Tietosisältöjen käsittelysäännöt Value-of For-each ja sort ehtolauseet Rakenteiden luontisäännöt Rakenteiden kopiointi Uusien elementtien ja attribuuttien luonti Sapluunat eli templatet Edistyneet piirteet

5 XSLT:N KÄYTTÖSOVELLUKSET

6 (Luento 1: XML:n käyttösovellukset) XSLTdoc. Sovellus 1 XSLTprosessori XMLprosessori XMLdoc1. XMLdoc2. Sovellus 2 XML:a voidaan käyttää perustuen valmiiseen kielioppiin (esim. AutomationML, B2MML, MathML) käyttäen omaa sovelluskohtaista kielioppia Järjestelmien tietointegraatiossa tarvitaan muunnoksia kielestä toiseen Eri organisaatioiden tietojärjestelmät käyttävät usein erilaista XMLesitystapaa samankin sovellusalueen tietojen esittämiseen XSLT-prosessori muuntaa dokumentin (doc1.xml) toiseen muotoon (doc2.xml) lukemansa XSLT-dokumentin sääntöjen ohjaamana (ks. Kuva)

7 Tietointegraatio XML tiedonsiirto XSLTdoc. XML-tiedonsiirto kahden organisaation välillä: XSL-muunnos voidaan tehdä lähettävässä päässä (a) tai vastaanottavassa päässä (b) tai keskitetysti ns. hub:ssa (c) Sovellus 1 XSLTprosessori XMLprosessori XMLdoc1. XMLdoc2. Sovellus 2 XSLTdoc. Sovellus 1 XMLprosessori XMLdoc1. XSLTprosessori XMLdoc2. Sovellus 2 XSLTdoc. Message Hub Sovellus 1 XMLprosessori XMLdoc1. XSLTprosessori XMLdoc2. Sovellus 2

8 Integraatio-ongelma N erillistä organisaatiota, jotka kaikki käyttävät omaa erityistä XML-tiedon esitysmuotoa. Jokaisen organisaation täytyy tehdä N-1 erilaista muunnosta vastaanottaessaan muiden lähettämiä xml-dokumentteja (olettaen, että kaikki lähettävät omassa esitysmuodossaan) XSLT 4-1 XSLT 3-1 XSLT 2-1 XSLT 1-2 XSLT 4-2 XSLT 3-2 XSLT 1-4 XSLT 2-4 XSLT 3-4 XSLT 4-3 XSLT 1-3 XSLT 2-3

9 Tietointegraatio Standardoitu tiedonsiirto XSLTdoc. Sovellus 1 XSLTprosessori XMLprosessori XMLdoc1. XML- STD Sovellus 2 XSLTdoc. XMLprosessori XSLTprosessori XMLdoc3. Sovellus 3 XMLprosessori Sovellus 4

10 Tietointegraatio Standardoitu tiedonsiirto N erillistä organisaatiota, jotka kaikki käyttävät tiedonsiirrossa standardia XMLesitysmuotoa. Jokaisen organisaation täytyy tehdä vain 0-1 erilaista muunnosta sekä vastaanottaessaan että lähettäessään standardeja xml-dokumentteja (muunnoksia ei tarvita lainkaan, jos std-muotoa käytetään myös organisaation sisällä) XSLT STD - 1 XSLT STD - 2 XML STD XSLT STD - 4 XSLT STD - 3

11 XSLT-TYYLISIVU JA PROSESSOINTI Online xslt tool:

12 XSLT-prosessointi (1/2) XSLT-tyylisivu XSLTdoc. Sisään luettava lähtödokumentti XSLTprosessori XMLdoc1. XMLdoc2. Tuotettava tulosdokumentti XSLT-prosessori muuntaa lähtödokumentin (doc1.xml) uuteen muotoon tulosdokumentiksi (doc2.xml) XSLT-dokumentin sisältämien sääntöjen ohjaamana. Yleensä tavoitteena on lähtödokumentin tietosisällön esittäminen jossain uudessa rakennemuodossa Uuteen dokumenttiin voidaan luoda aivan toisenlainen rakenne uusine elementteineen, attribuutteineen ja tekstisisältöineen Toisaalta uuteen dokumenttiin voidaan myös kopioida lähdedokumentin elementtejä ja attribuutteja tietosisältöineen Uuden dokumentin rakenne ja tietosisältö voi siis olla (melkein) minkälainen tahansa Sen ei tarvitse olla edes XML-dokumentti Se voi olla html-dokumentti tai pelkkä tekstidokumentti

13 XSLT-prosessointi (2/2) XSLTprosessori XSLTdoc. XMLdoc1. XMLdoc2. XSLT-prosessoinnin vaiheet 1. XSLT-prosessori lukee XML-dokumentin ja XSLT-tyylisivun (XSLT-stylesheet) 2. Se analysoi ja jäsentää XML-dokumentin solmupuuksi (node-tree) 3. Se käy läpi solmupuuta solmu kerrallaan aloittaen juurisolmusta (/) 4. Ohjeet/säännöt ko. solmun käsittelyyn se hakee XSLT-tyylisivun ko. solmun käsittelyyn tarkoitetusta sapluunasta/mallinteesta (template) 5. Sapluunan match-attribuutin XPath-lauseke määrittää sen solmun/solmujoukon, jonka käsittelyyn sapluunan säännöt on tarkoitettu 6. Prosessori aloittaa sääntöjen lukemisen juuri-sapluunasta (root template), joka on oltava jokaisessa XSLT-dokumentissa: <xsl:template match= / > 7. Säännöt voivat ohjata joko kirjoitusta tulosdokumenttiin tai käsiteltävän solmujoukon jatkoprosessointia ali-sapluunakutsuineen: <xsl:apply-templates select= sub-node >

14 Tyylisivun rakenne (1/2) XSLT-tyylisivu koostuu joukosta määrityksiä ja sapluunoita (template) Määrityksillä muokataan tyylisivun tuottamaan dokumenttiin liittyviä asioita tai määritellään muuttujia myöhempää käyttöä varten Sapluunat sisältävät dokumentin muunnossa käytettävät säännöt, sisään luetun dokumentin käsittelyohjeita ja tuotetun dokumentin elementtejä sana sapluuna" kuvaa toimintaa melko hyvin: osa tuotettavan dokumentin elementeistä on määritelty pysyvästi näiden elementtien väliin tuotetaan lisää sisältöä käsittelyohjeiden pohjalta [Frosterus] 14

15 Tyylisivun rakenne (2/2) Tyylisivun kaikki elementit ovat elementin <xsl:stylesheet> sisällä <xsl:stylesheet version="1.0 xmlns:xsl=" </xsl:stylesheet> Tyylisivun tulostusmuoto määritellään <xsl:output> elementillä Metodiksi voidaan määritellä: xml, html tai text Indent-attribuutilla voidaan tulostus sisentää < xsl:output method="html indend= true /> Tyylisivujen sisältämät sapluunat määritellään <xsl:template > elementeillä <xsl:template match= Xpath-expression"> Muunnettavan XML-dokumentin alussa viitataan tyylisivuun prosessointiohjeella <?xml-stylesheet type="text/xsl" href="ihmeet_lec2ex1.xsl"?> 15

16 Juurisapluuna - root template XSLT muunnos aloitetaan juurisapluunan (root template) prosessoinnilla. <xsl:template match= / > muunnossääntöjä.</xsl:template > Se on oltava jokaisessa xslt-dokumentissa Se määrittää miten xml-dokumentin juurisolmua prosessoidaan Sen sisällä voi olla ali-sapluunoita Muunnossääntöjen prosessointi jatkuu viimeiseen juuri-sapluunan sääntöön asti Se voi sisältää muiden sapluunoiden soveltamiskäskyjä <xsl:apply-templates select= xpath-exp /> (Huom: Sapluunoista lisää myöhemmissä kalvoissa)

17 Esimerkki1: XSLT tyylisivu html-dokumentin luonti Ihmeet_lec2ex1.xsl [

18 template Esimerkki1: XSLT tyylisivu html-dokumentin luonti XML1: Ihmeet_lec2ex1.xml XSLT: Ihmeet_lec2ex1.xsl tulostusmuoto XSLTprosessori XML2: Ihmeet_lec2ex1.html

19 Esimerkki1: XSLT tyylisivu html-dokumentin luonti XSL-muunnoksen voi ajaa XML-editorilla, jolloin se tuottaa tuloksena htmltiedoston (ihmeet_lec2ex1.html), jonka voi avata katseltavaksi internet-selaimella Internet-selaimet (Firefox, Chrome, IE, jne.) osaavat myös suoraan tehdä XSLmuunnoksen, jos avattavan XML-tiedoston alussa on viittaus XSLT-tiedostoon Tulosdokumentti Ihmeet_lec2ex1.html Tulosdokumentin selainnäkymä

20 TEKSTISISÄLTÖJEN KÄSITTELYSÄÄNNÖT

21 Arvojen poimiminen XSLT-tyylisivuissa yleensä poimitaan suuri joukko arvoja sisään luettavasta dokumentista ja sijoitetaan tuotettavaan dokumenttiin Elementtien tekstisisältöjä ja attribuuttien arvoja siirretään tai kirjoitetaan näkyviin Arvojen poiminta tapahtuu elementillä <xsl:value-of select="xpath-lauseke"/> elementti poimii XPath-lausekkeen mukaisen arvon ja sijoittaa sen tuotettavaan dokumenttiin Huomaa, että Xpath-lausekkeen määrittämän solmujoukon ensimmäisen solmun arvo tulostetaan mikäli arvoa ei ole, elementti ei tuota mitään Online xpath tool: [Frosterus] 22

22 Toisto XSLT sisältää hyvin yksinkertaisen toistorakenteen se voi toistaa tietyn sapluunan osan kaikille tietyllä XPath-lausekkeella valituille solmuille ei ole mahdollisuutta toistaa asioita esimerkiksi viittä kertaa toistojen määrä riippuu aina sisään luettavasta dokumentista Toisto toteutaan elementillä <xsl:for-each> elementissä on XPath-lauseke sääntönä ja elementin sisällä oleva XSLT-koodi toistetaan kaikille säännön valitsemille elementeille: <xsl:for-each select="name"> <xsl:value-of <xsl:value-of <br/> </xsl:for-each> [Frosterus] 10/06/09 23

23 Esimerkki: XML-dokumentti Polygons_with_size.xml <?xml version="1.0" encoding="utf-8"?> <?xml-stylesheet type="text/xsl" href= to_square.xsl"?> <polygons> <circle color="blue" size= 5">ympyra1</circle> <circle color="blue" size= 5">ympyra2</circle> <circle color="blue" size="5">ympyra3</circle> <circle color="blue" size= 5">ympyra4</circle> <circle color="blue" size= 5">ympyra5</circle> </polygons> ympyrä1 ympyrä2 ympyrä3 ympyrä1 ympyrä5 Kuva: Lähtödokumentin polygons_doc1.xml rakenne.

24 xsl:value-of & xsl:for-each xsl:value-of Huom: palauttaa vain XPathsolmujoukon ensimmäisen solmun arvon* xsl:for-each Mahdollistaa kaikkien solmujen läpikäynnin luupissa ympyrä1 ympyrä2 ympyrä3 ympyrä1 ympyrä5

25 Järjestäminen XSLT tarjoaa mahdollisuuden järjestää sisään luettavan dokumentin elementit uuteen järjestykseen ennen sapluunan valintaa käytetään elementtiä <xsl:sort select="..."> järjestäminen tapahtuu select-lausekkeen tuottamien arvojen pohjalta elementille voi antaa useita lisäattribuutteja järjestämisen ohjaamiseksi Järjestäminen tapahtuu joko <xsl:apply-templates> tai <xsl:for-each> elementtien sisällä <xsl:apply-templates select="sect1/title"> <xsl:sort select="text()"/> </xsl:apply-templates> Järjestämiselementtejä voi olla useita peräkkäin [Frosterus] 26

26 For-each & sort Kuva 1: Lähtödokumentin polygons_doc1.xml rakenne. Kuva 2: XSLT-tyylisivu.xsl. Kuva 3: Tulosdokumentin POLYGONS_doc2.xml rakenne.

27 Ehdolliset osiot XSLT:ssa on kaksi rakennetta ehdollisten osioiden laatimiseksi (IF ja CHOOSE) molemmissa käytetään samaa testirakennetta testinä on XPath-lauseke ja se läpäistään, jos lausekkeessa oleva ehto toteutuu lauseke evaluoituu ei-tyhjäksi joukoksi (ei erillistä ehtoa) ehtoina ovat normaalit =, <, > ja!= HUOM: < ja > pitää kirjoittaa XML-syntaksin takia < ja > Online xpath tool: [Frosterus] 28

28 If-lauseke If-lauseke on yksinkertaisempi ehdoista sen sisällä oleva mallineen osa suoritetaan ehdon toteutuessa <xsl:if > 10"> <xsl:attribute name="target"> <xsl:value-of </xsl:attribute> </xsl:if> HUOM: IF lausekkeessa ei ole else if tai edes else osaa (toteutetaan käytännössä uusilla iflausekkeilla) 29

29 Choose-lauseke Choose-lauseke mahdollistaa usean ehtolausekkeen yhdistämisen vain yksi ehtolausekkeista suoritetaan ensimmäisen onnistuneen testin jälkeen jatketaan choose-lausekkeen jälkeisistä elementeistä lausekkeessa voi olla myös erillinen vaihtoehto tilanteella, jossa yksikään testi ei toteutunut 30

30 Choose-esimerkki Choose When Otherwise 31

31 RAKENTEIDEN LUONTISÄÄNNÖT

32 Elementtien Kopiointi XSLT mahdollistaa myös kopioinnin sisään luettavasta dokumentista tuotettavaan dokumenttiin kopioinnissa dokumenttisirpale (document fragment) kopioidaan sellaisenaan ei tarvita erillisiä sääntöjä jokaiselle osaselle toisaalta ei voida myöskään vaikuttaa lopputulokseen Kopiointi on osa sapluunaa kopiointi suoritetaan elementillä <xsl:copy-of> elementti voi määritellä myös XPath-lausekkeen, joka määrää kopioitavat elementit <xsl:copy-of select="..."/> jos lauseketta ei määritellä, kopioidaan nykyinen solmu elementillä <xsl:copy> kopioidaan vain nykyinen elementti ilman sen attribuutteja ja lapsia 33

33 Elementtien ja attribuuttien luonti XSLT mahdollistaa elementtien luonnin dynaamisesti käytetään elementtiä <xsl:element> <xsl:element name= new-element-name"> <xsl:apply-templates/> </xsl:element> Vastaavasti myös attribuutteja voidaan luoda lennossa Käyttäen elementtiä <xsl:attribute> attribuutti liitetään viimeksi määritellyn elementin sisällä ESIM1: <a> <xsl:attribute name="href"> <xsl:value-of 2) /> </xsl:attribute> <xsl:value-of </a> ESIM2: <xsl:template match="circle > <xsl:element name="square"> <xsl:attribute name="color">red</xsl:attribute> </xsl:element> </xsl:template> 34

34 SAPLUUNAT (TEMPLATES)

35 Sapluunat Sapluuna koostuu kahdesta osasta 1. sapluunan laukaiseva sääntö 2. sapluunan sisältö Sääntö määritetään XPath-lausekkeella Sapluunan sisällön rakenteen määrää tuotettavan dokumentin rakenne ja sisältö sapluuna voi tuottaa uusia elementtejä ja attribuutteja, muun muassa, tuotettuun dokumenttiin sapluuna voi valita sisään luetun dokumentin elementtejä kutsua uusia mallineita elementtien pohjalta käsitellä elementit itse sapluuna voi sisältää ehtoja ja toistoja [Frosterus] 36

36 Sapluunoiden valinnan ohjaus Sapluuna voi käynnistää sapluunan haun mille tahansa XML-dokumentin osalle (solmulle tai solmujoukolle), joka määritellään Xpath-lausekkeella <xsl:apply-templates select= Xpath-lauseke /> Prosessori käsittelee solmut dokumenttijärjestyksessä (document order) Myös attribuutti, tekstisirpale tai muu XML-dokumentin osa voidaan valita yleisin tapaus on käsitellä nykyisen solmun alla (sisällä) olevat solmut: <xsl:apply-templates/> (*) voidaan myös valita vain tietyt solmut käsittelyyn: <xsl:apply-templates select="name street city postal-code"/> valinta voi kohdistua muualla oleviin solmuihin: <xsl:apply-templates select="//distant"/> Valinta voidaan tehdä myös ehdolliseksi <xsl:apply-templates &lt 800]"/> (*) Huom: Oletus-sapluuna: Jos kutsutaan sapluunoita ilman select-valintaa, prosessori hakee kullekin solmulle sopivimman löytämänsä sapluunan. Jos sapluunaa ei löydy käytetään oletus-sapluunaa, joka tulostaa elementtien tekstisisällöt. 37

37 Sapluunoiden valinnan ohjaus Huomaa, että xslt-prosesori käy läpi kaikki Xpath-lausekkeella (select) valitut solmut kutsuen niihin sopivaa sapluunaa (match) ja toteuttaa sapluunan sisältämät toiminnot (tulosdokumenttiin kirjoittamisen) jokaiselle solmujoukon solmulle Eli xsl:for-each luuppeja ei tarvitse erikseen kirjoittaa Esimerkki: Select-lauseke valitsee sapluunan <xsl:template match= circle > Tämän templaten sääntöjä sovelletaan kaikkien square-elementtien kaikkiin circle-elementteihin (7 kpl) <xsl:template match= /"> <xsl:apply-templates select="/polygons/square/circle"/> </xsl:template> <xsl:template match= square"> </xsl:template> v <xsl:template match= circle"> </xsl:template>

38 Esimerkki: Template Kuva 1: Lähtödokumentin polygons_doc1.xml rakenne. Kuva 1: Tulosdokumentin POLYGONS_doc2.xml rakenne.

39 Esimerkki: Tulosdokumentti <?xml version="1.0" encoding="utf-8"?> <POLYGONS> <square> </square> <square> </square> <square> </square> <square> </square> <square> </square> <circle color="red" size="4"/> <circle color="red" size="2"/> <circle color="red" size="5"/> <circle color="red" size="1"/> <circle color="red" size="3"/> </POLYGONS> Kuva 1: Tulosdokumentin POLYGONS_doc2.xml rakenne.

40 Esimerkki: Template rekursiivinen kutsu Kuva 1: Lähtödokumentin polygons_doc1.xml rakenne. Kuva 1: Tulosdokumentin POLYGONS_doc3.xml rakenne.

41 EDISTYNEET PIIRTEET

42 Edistyneemmät piirteet Edellä esitelyillä toiminnoilla pystyy muuntamaan XML-dokumentin muodosta toiseen keinot kuitenkin loppuvat, jos sisään luetun dokumentin elementtejä pitää käsitellä useasti tai lopputulos riippuu luetun dokumentin attribuuttien arvoista vastaavasti XSLT-tyylisivun toimintaa saatetaan haluta ohjata ulkopuolelta Ratkaisuja on useita erilaisia toisto muuttujien käyttö ehdolliset osiot sapluunoissa erilaisten moodien käyttö sapluunoiden nimeäminen ja kutsuminen ilman säännön laukeamista [Frosterus] 43

43 Edistyneemmät piirteet Moodit Muuttujat ja Parametrit (Nimetyt sapluunat) (numerointi)

44 Moodit Joskus sama XML-dokumentin osa halutaan käsitellä useita kertoja eri konteksteissa (ks. harjoitustehtävä) hyvä esimerkki on sisällysluettelon automaattinen laatiminen sisällysluettelo rakentuu otsikoista, jotka täytyy esittää myös leipätekstin sisällä Mallineeseen voidaan liittää moodi (mode) <xsl:template mode="toc">... </xsl:template> mallinnetta ei voida valita, ellei myös moodia ole asetettu käynnistettäessä mallineen etsintää: <xsl:apply-templates mode="toc"/> [Frosterus] 45

45 Muuttujat (1/2) Tyylisivulla voi olla käytössä muuttujia muuttujat asetetaan elementillä <xsl:variable name="..."> ja niiden arvoa ei voi muuttaa myöhemmin (ks. alla) muuttujat ovat käytössä koko tyylisivulla muuttujiin viitataan syntaksilla $nimi muuttujiin voidaan viitata myös {$nimi} sapluunan elementtien sisällä, vrt. attribuutit Muuttujat ovat näppäriä laadittaessa helposti säädettäviä tyylisivuja muokattavat tiedot sijoitetaan muuttujiin, joita säätämällä tyylisivun toiminta tai tuotettava dokumentti muuttuu Vaikka muuttujan arvoa ei voi muuttaa, se voidaan määrittää uudelleen alemmalla tasolla uusi arvo piilottaa aiemman arvon aiempi arvo on käytössä palattaessa takaisin ylemmälle tasolla 46

46 Muuttujat (2/2) Example: <xsl:variable name="domain">aalto.fi</xsl:variable>... <xsl:attribute name="href"> select="$domain"/>/</xsl:attribute>... <info domain="{$domain}">aalto</info> Example2: <xsl:variable name="bodytextsize">10pt</xsl:variable> <xsl:template match="product"> <i><font size="{$bodytextsize}"> <xsl:apply-templates/></font></i><br/> </xsl:template> 47

47 XSLT param (1/2) <xsl:param> Element Declares a named parameter for use within an <xsl:stylesheet> element or an <xsl:template> element. Allows specification of a default value. Attributes: name= param_name Select= expression (returns the default value) Remarks: The value specified on the <xsl:param> element is a default value for binding. When the template or style sheet containing <xsl:param> is invoked, parameters are passed that are used in place of the default values. The <xsl:param> element must be declared as a direct child of an <xsl:template> element.

48 XSLT param (2/2) Example: <xsl:template name="getcount"> <xsl:param name="counted"> <xsl:value-of select="count(//book)"/> </xsl:param> <xsl:element name="strong"> Total Book Count: <xsl:value-of select="$counted"/> </xsl:element> See:

49 xsl:param vs. xsl:variable Difference between xsl:param and xsl:variable The value of an xsl:param could be set outside the context in which it is declared. For example: <xsl:template...> <xsl:param name="p" select="'x'" /> <xsl:variable name="v" select="'y'" /> then you know that $v will always give you the string 'y'. But for $p the string 'x' is only a default: you will see a different value if the template is invoked with either xsl:apply-templates or xsl:call-template which contains an instruction such as: <xsl:with-param name="p" select="'not x'" />

50 OSA 2 NIMIAVARUUDET

51 Tietointegraatio tiedon yhdistäminen Luennon alun esimerkissä kuvattiin tiedonsiirtoa eri organisaatioiden välillä ja tarpeesta muuntaa vaihdettavaa XML-dokumentia muodosta toiseen käyttäen XSL-muunnoksia Tietointegraatiossa ei ole kuitenkaan kysymys vain tiedon rakenteen ja esitystavan muunnoksista vaan tarpeesta yhdistää (merge) eri sisällöntuottajien kokoamaa tietoa Tiedon yhdistämisessä tulee ongelmia, kun eri lähteet käyttävät samaa termiä/nimeä eri merkityksessä (homonym) (tai eri termejä merkitsemään samaa käsitettä (synonym)) XML-dokumenttien tietoja yhdistettäessä tämä ongelma näkyisi samannimisinä elementteinä tai attribuutteina, joiden merkitys ei kuitenkaan olisi sama Eri merkintäkielien käyttämien nimien tulee siis olla täysin (globaalisti) yksikäsitteisiä, jotta tietojen yhdistäminen ei aiheuta sekaannusta.

52 XML Nimiavaruudet XML Namespaces Keskeisin laajennos XML speksiin. XML-dokumentti voi sisältää elementtejä, jotka noudattavat eri rakenne määrityksiä (eri XML Scheman määrittelemää kielioppia), mutta ovat saman nimisiä. Törmäykseksi sanotaan tilannetta jossa kaksi elementtiä on nimetty samoin. Nimiavaruudet poistavat törmäysten aiheuttamat ongelmat. Johdonmukaisuuden ja yksikäsitteisyyden säilyttämiseksi pitää eri merkityksen omaavat elementit erotella toisistaan omiin ryhmiinsä, vaikka niiden nimi olisikin sama. jokainen kielioppi kuuluu omaan nimiavaruuteensa dokumentin elementit kytketään nimiavaruuksiin, jolloin elementin täydellinen nimi (nimiavaruuden nimen ja lokaalin nimen yhdistelmä) on globaalisti yksikäsitteinen. oletusarvoisesti attribuutti kuuluu samaan nimiavaruuteen kuin elementti, mutta myös attribuutin nimen eteen voi liittää nimiavaruuden

53 XML Nimiavaruudet XML Namespaces speksi ratkaisee saman nimisten elementtien aiheuttaman ongelman lisäämällä nimiavaruuden käsitteen elementtiin. Nimiavaruus on yksilöllinen tunnistemerkkijono URI (Uniform Resource Identifier) Nimiavaruus johdetaan yleensä olemassa olevasta yksikäsitteisestä URLnimestä (Uniform Resource Locator, www-osoite), joka liittyy nimen määrittelijään* Nimiavaruuden nimen tyypillinen rakenne: Protokolla; domain-nimi [;ns-hakemisto][;ns kuvaus] [;versio] *HUOM: Nimiavaruus URI:n ei tarvitse viitata mihinkään tiettyyn dokumenttiin

54 Nimiavaruuden määrittely Käytetään attribuuttia xmlns <pline:production_line xmlns:pline=" Määritellään nimiavaruus ja sen prefix-lyhenne ja käytetään sitä elementissä Esimerkissä nimiavaruus on Esimerkissä nimiavaruuden prefix-lyhenne on pline Prefix erotetaan elementistä kaksoispisteellä : <pline:module>elevator</pline:module> Yleensä nimiavaruudet määritetään dokumentin juurielementissä käytettävissä tämän jälkeen kaikissa elementeissä Laajennettua nimeä, joka on nimiavaruuden ja elementin nimen yhdistelmä, kutsutaan kvalifioiduksi nimeksi (qualified name, Qname)

55 Perusnimiavaruus ja perintä Oletusnimiavaruuden yksinkertaistaa määrittelyjä Kaikki elementit eivät välttämättä määrittele nimiavaruutta dokumentissa voidaan määritellä oletusnimiavaruus (default namespace), jolloin kaikki määrittelyalueen sisällä (elementti ja kaikki sen jälkeläiset) olevat ilman prefixiä nimetyt elementit kuuluvat ko. nimiavaruuteen. määrittely juurielementissä attribuuttilla xmlns (ilman prefixiä) <root xmlns= > Aloitus-tagissa määritelty nimiavaruus on käytössä kyseisen elementin loppu-tagiin asti Jos nimiavaruuden lyhenne on sama kuin aiemmin määritellyssä, korvaa uusi nimiavaruus vanhan elementin loppu-tagiin asti

56 Nimiavaruus esimerkki 1 Perusnimiavaruus (default namespace) [

57 Nimiavaruus esimerkki 2 Perusnimiavaruus (default namespace) Nimiavaruuden prefix-lyhenne [

58 Nimiavaruus esimerkki 3 Perusnimiavaruus (default namespace) Nimiavaruuden prefix-lyhenne Attribuuttien nimiavaruusmäärittely xmlns:wow= [

59 OSA 3: Sisältö Välikommentti: ID ja IDREF ja IDREFS AutomationML

60 ID ja IDREF ja IDREFS Attribuuttityyppi ID Käytetään elementin yksikäsitteiseen identifiointiin ID-attribuutin arvon on oltava yksikäsitteinen koko xml-dokumentissa Elementillä saa olla vain yksi ID-tyypin attribuutti Sen arvon tulee noudattaa XML-nimien sääntöjä* Attribuuttityyppi IDREF Toinen elementti voi tällöin viitata yksikäsitteisesti ID:llä identifioituun elementtiin Viittaamiseen käytetään IDREF-tyyppistä attribuuttia, jonka arvon on oltava jonkun samassa dokumentissa olevan elementin ID-tyyppisen attribuutin arvo Attribuuttityyppi IDREFS Useaan ID:llä identifioituun elementtiin voi viitata IDREFS-tyypin attribuutilla Attribuutin arvona on joukko ID arvoja välilyönnillä erotettuina <production_line> <unit> <lift_module modid="lm001"> <name>päätynostin PN1</name> </lift_module > <connection fromidref= LM001" toidref= SM001"/> </unit> <unit> <starter_module modid="sm001"> <name>starter-moduuli ST1</name> </starter_module> <connection fromidref="sm001" toidref="lm001"/> </unit> <connected_modules setidrefs= LM001 SM001 /> </production_line> *HUOM: ID:n arvo (ja elementin nimi) saa alkaa vain kirjaimella tai alaviivalla. Nimi saa sisältää kirjaimia, numeroita, alaviivoja ja pisteitä mutta se ei saa sisältää välilyöntejä (white space) HUOM: Attribuutin tyyppi määritellään XML Schemassa (Ks. 3. luento)

61 Puurakenne Suunnattu graafi ID ja IDREF-tyypin* attribuuteilla saadaan aikaan viittauksia xml-solmupuun haarojen välillä Näin voidaan esittää puu-rakennetta monimutkaisempia tietorakenteita kuten suunnattuja verkkoja *HUOM: Attribuutin tyyppi määritellään XML Schemassa (Ks. 3. luento)

62 OSA 3 [AutomationML] AUTOMATIONML

63 AutomationML Architecture Automation Markup Language is an XML schema-based data format designed for the vendor independent exchange of plant engineering information. The goal is to interconnect engineering tools from the existing heterogeneous tool landscape in their different disciplines, e.g. mechanical plant engineering, electrical design, process engineering, process control engineering, HMI development, PLC programming, robot programming etc. [AutomationML]

64 Relations in AutomationML Parent-Child Relation Class-Instance Relation Inheritance Relation Instance-Instance Relation

65 Parent-child-relation Parent-child-relations between object instances are used to represent hierarchical object structures and describe a consist-of-relation.

66 (luento1: XML Esimerkki) AutomationML InstanceHierarchy (parent-child/consists-of-relation)..prosessit koostuvat osa-prosesseista

67 Class-Instance-Relations Class-Instance-Relations Instances represent individual objects and are characterized by a unique identifier and parameter set. An AutomationML object shall be modelled as CAEX InternalElement as part of the CAEX InstanceHierarchy tree. The source class shall be indicated in the CAEX tag RefBaseSystemUnitPath of the instance. This tag shall comprise the full path and name of the source class. Instance of

68 Inheritance-Relations Inheritance-Relations Inheritance between classes shall be defined according to the IEC If inheritance is required, the parent class shall be specified using the CAEX tag RefBaseClassPath comprising the full path of the class according to IEC Sub-class of

69 Instance-Instance-Relations Instance-Instance-Relations are relations between two interfaces of arbitrary AutomationML objects. Instance-Instance-Relations shall be stored by means of the CAEX InternalLink functionality. InternalLinks should be stored at the InternalElement which is the lowest common parent of the corresponding connected CAEX objects. Instance-Instance-Relations shall be defined only between corresponding CAEX ExternalInterfaces The ExternalInterfaces should be derived directly or indirectly from one of the AutomationML standard interface classes.

70 Instance-Instance-Relations Link between

71 Inheritance Relation Production_line_AML.aml - SystemUnitClassLib Sub-class of Sub-class of

72 Parent-Child Relation & Class-Instance Relation Production_line_AML.aml - InstanceHierarchy Instance of

73 AutomationML - Rakennehierarkia Rakennehierarkiassa, jokainen objekti/osa esitetään InternalElementnimisenä elementtinä ja kokonaisuus-osa suhde esitetään sisäkkäisinä InternalElement-elementteinä. InternalElement-elementin attribuutit ovat Name ID RefBaseSystemUnithPath

74 AutomationML - Luokkahierarkia Laiteluokkakirjasto SystemUnitClassLib listaa laiteluokat, joihin rakennehierarkiassa InternalElement elementteinä esitetyt laiteinstanssit viittaavat. Jokainen laiteluokka esitetään yhtenä SystemUnitClass-elementtinä ja luokkien nimet esitetään sen Name-attribuutin arvona. Luokkien perintähierarkia esitetään viittauksena attribuutin RefBaseClassPath arvolla <SystemUnitClassLib Name="ProdLineSystemUnitClassLib"> <SystemUnitClass Name="GenericModule"/> Instance of <SystemUnitClass Name="GenericConveyor"/> <SystemUnitClass Name="BANDconveyor RefBaseClassPath= "ProdLineSystemUnitClassLib/GenericConveyor"/>

75 XSL-muunnos: PL.xml -> AML.xml kohdedokumentin (AML.xml) InternalElement:n Name-attribuutti saa arvokseen ko. rakenneosan nimen lähdedokumentissa (PL.xml), jos se on siinä esitetty. Muussa tapauksessa Name-attribuutin arvo muodostetaan PL.xml:n ko. rakenneosan elementtinimestä täydennettynä elementin paikkanumerolla (position()).

76 XSL-muunnos: PL.xml -> AML.xml Esimerkki: Production_line.xml:n elementtien muunnos InstanceHierarchy:n ja InternalElement:tien attribuuttien arvoiksi <production_line> <unit> <lift_module modid="lm001"> <name>päätynostin PN1</name> <conveyor type="belt" level="down" feed="in"> <InstanceHierarchy Name="production_line > <InternalElement Name="unit_1" ID="d0e9"> <InternalElement Name="Päätynostin PN1" ID="LM001 RefBaseSystemUnitPath="ProdLineSystemUnitClassLib/lift_module"> <InternalElement Name="conveyor_1" ID="d0e9 RefBaseSystemUnitPath="ProdLineSystemUnitClassLib/BELTconveyor"/>

77 Harjoitustehtävä U2E2-E3 Vinkkejä Suositus: käytä template-tekniikkaa mahdollisimman paljon mieluummin kuin for-eachluuppeja, koska se XSLT:n keskeinen tekniikka Tulosdokumentin tulee koostua kahdesta pääosasta: SystemUnitClassLib InstanceHierarchy. Ne kannattaa muodostaa täysin erillisillä template-joukoilla sotkeutumisen välttämiseksi Toisistaan riippumattomat template-joukot voit toteuttaa käytäen eri nimiä modeattribuuttien arvoina Ks. Viereinen esimerkki:

78 Harjoitustehtävä U2E2-E3 Vinkkejä Voit käyttää xsl:variable määrityksiä lyhentämään usein toistuvia tekstipätkiä: <xsl:stylesheet version="1.0" xmlns:xsl=" <xsl:output method="xml" indent="no" encoding="utf-8"/> <xsl:variable name="classlibpath">prodlinesystemunitclasslib</xsl:variable> <xsl:template match="/"> <xsl:element name="automationmllibrary"> <xsl:apply-templates select="production_line" mode="classlibmode"/> </xsl:element> </xsl:template> <xsl:template match="production_line" mode="classlibmode"> <xsl:element name="systemunitclasslib"> <xsl:attribute name="name"> <xsl:value-of select="$classlibpath"/> </xsl:attribute> <xsl:attribute name="refbaseclasspath"> <xsl:value-of select="concat($classlibpath,'/','genericmodule')"/> </xsl:attribute>

79 Lähdeviitteet Kurssikirja: Goldberg, K.,H XML-Visual QuickStart Guide. 2.e. Peachpit Press XML. : Introduction, Ch1, Ch2, Ch3, Ch4, Ch9, Ch10, Ch11, Ch12, Ch13, Ch14, Ch15. (E-book: Beginning XML, (4th ed.) by David Hunter et al., Wrox Press (Ch 1-3, 5,7,8 )) Muita lähteitä: W3C:n Määrittelyt: AutomationML. Part 1 AutomationML Architecture, State: May 10. Available at: AutomationML%20Whitepaper%20Part%201%20-%20AutomationML%20Architecture%20V%201.4.pdf Tools Online tool: xpath, xslt, schema validate: Online tool: Regular Expression Tester: Command line tool: Xmlstarlet command line XML toolkit: Download for windows: XML editors EditX Lite free version: MindFusion XML Viewer on Ilmainen editori. Sopii ainakin XSLT-muunnoksien harjoitteluun.

Hohde Consulting 2004

Hohde Consulting 2004 Luento 6: XSLT AS-0.110 XML-kuvauskielten perusteet Janne Kalliola XSL Transformations XSLT tyylisivun rakenne mallineet nykyinen solmu Edistyneemmät piirteet toisto muuttujat nimetyt mallineet ehdolliset

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

Helsingin yliopisto/tktl XML-metakieli XSLT XSL - extensible stylesheet language XSLT

Helsingin yliopisto/tktl XML-metakieli XSLT XSL - extensible stylesheet language XSLT XSL - extensible stylesheet language XSL kehitettiin xml aineistojen esitysmuodon määrittelyyn (T ~ Transformations) dokumentin rakenteen tai sisällön muunnokset 1.0 (http://www.w3.org/tr/xslt) 1999 2.0

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

XSL-muunnokset. 9 XSL-muunnokset

XSL-muunnokset. 9 XSL-muunnokset 9 XSL-muunnokset XML-dokumenttien keskeinen rooli on välittää tietoa sovellusten välillä. Yksinkertaisimmillaan tämä tarkoittaa sitä että tieto tuotetaan suoraan tietyn sovelluksen tekstiformaattiin. Lähestymistavan

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

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

XSLT - ohjelmaesimerkkejä. Jaana Holvikivi Metropolia

XSLT - ohjelmaesimerkkejä. Jaana Holvikivi Metropolia XSLT - ohjelmaesimerkkejä Jaana Holvikivi Metropolia XML source XSLT source Source tree Transformation Stylesheet tree Result tree Serialize XML XHTML text Lajittelu, Sorting

Lisätiedot

Digitaalisen median tekniikat. JSP ja XML Harri Laine 1

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

Lisätiedot

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

XSLT - ohjelmoinnin perusteet. Jaana Holvikivi Metropolia

XSLT - ohjelmoinnin perusteet. Jaana Holvikivi Metropolia XSLT - ohjelmoinnin perusteet Jaana Holvikivi Metropolia Johdanto: Muunnetaan XML-dokumentti HTML-muotoon (transformation)

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

Digitaalisen median tekniikat. JSP ja XML

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

Lisätiedot

Ensimmäiset XPath-lausekkeet

Ensimmäiset XPath-lausekkeet Ensimmäiset XPath-lausekkeet Kaavat ja predikaatit Ctl230: Luentokalvot 8.11.2004 Kontekstiin perustuva muotoilu Elementin sijainti dokumentissa 3 3Sama elementti, eri

Lisätiedot

XSL-muunnokset. 9 XSL-muunnokset

XSL-muunnokset. 9 XSL-muunnokset 9 XSL-muunnokset XML-dokumenttien keskeinen rooli on välittää tietoa sovellusten välillä. Yksinkertaisimmillaan tämä tarkoittaa sitä että tieto tuotetaan suoraan tietyn sovelluksen tekstiformaattiin. Lähestymistavan

Lisätiedot

è è è XSL-muunnokset 9 XSL-muunnokset

è è è XSL-muunnokset 9 XSL-muunnokset 9 XSL-muunnokset XML-dokumenttien keskeinen rooli on välittää tietoa sovellusten välillä. Yksinkertaisimmillaan tämä tarkoittaa sitä että tieto tuotetaan suoraan tietyn sovelluksen tekstiformaattiin. Lähestymistavan

Lisätiedot

1.3Lohkorakenne muodostetaan käyttämällä a) puolipistettä b) aaltosulkeita c) BEGIN ja END lausekkeita d) sisennystä

1.3Lohkorakenne muodostetaan käyttämällä a) puolipistettä b) aaltosulkeita c) BEGIN ja END lausekkeita d) sisennystä OULUN YLIOPISTO Tietojenkäsittelytieteiden laitos Johdatus ohjelmointiin 81122P (4 ov.) 30.5.2005 Ohjelmointikieli on Java. Tentissä saa olla materiaali mukana. Tenttitulokset julkaistaan aikaisintaan

Lisätiedot

7.4 Variability management

7.4 Variability management 7.4 Variability management time... space software product-line should support variability in space (different products) support variability in time (maintenance, evolution) 1 Product variation Product

Lisätiedot

1.3 Lohkorakenne muodostetaan käyttämällä a) puolipistettä b) aaltosulkeita c) BEGIN ja END lausekkeita d) sisennystä

1.3 Lohkorakenne muodostetaan käyttämällä a) puolipistettä b) aaltosulkeita c) BEGIN ja END lausekkeita d) sisennystä OULUN YLIOPISTO Tietojenkäsittelytieteiden laitos Johdatus ohjelmointiin 811122P (5 op.) 12.12.2005 Ohjelmointikieli on Java. Tentissä saa olla materiaali mukana. Tenttitulokset julkaistaan aikaisintaan

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

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

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

C++11 seminaari, kevät Johannes Koskinen

C++11 seminaari, kevät Johannes Koskinen C++11 seminaari, kevät 2012 Johannes Koskinen Sisältö Mikä onkaan ongelma? Standardidraftin luku 29: Atomiset tyypit Muistimalli Rinnakkaisuus On multicore systems, when a thread writes a value to memory,

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

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

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

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

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

TIEKE Verkottaja Service Tools for electronic data interchange utilizers. Heikki Laaksamo

TIEKE Verkottaja Service Tools for electronic data interchange utilizers. Heikki Laaksamo TIEKE Verkottaja Service Tools for electronic data interchange utilizers Heikki Laaksamo TIEKE Finnish Information Society Development Centre (TIEKE Tietoyhteiskunnan kehittämiskeskus ry) TIEKE is a neutral,

Lisätiedot

Luento 5. Timo Savola. 28. huhtikuuta 2006

Luento 5. Timo Savola. 28. huhtikuuta 2006 UNIX-käyttöjärjestelmä Luento 5 Timo Savola 28. huhtikuuta 2006 Osa I Shell-ohjelmointi Ehtolause Lausekkeet suoritetaan jos ehtolausekkeen paluuarvo on 0 if ehtolauseke then lauseke

Lisätiedot

Interfacing Product Data Management System

Interfacing Product Data Management System Interfacing Product Data Management System Tekijä: Työn valvoja: Mats Kuivalainen Timo Korhonen Esitelmän sisältö Työn suorituspaikka - Ideal Product Data Oy Käsitteitä Työn tavoitteet Työn tulokset 1/5

Lisätiedot

Helsingin yliopisto/tktl XML-metakieli XSL-FO XSL-FO. XSL-FO sivut

Helsingin yliopisto/tktl XML-metakieli XSL-FO XSL-FO. XSL-FO sivut sivut XSL-Formating objects on suositus tiedon esitystavan määrittelyyn Osa XSL-suositusta XSLT:n tapaan on XML-rakenteinen ja hyvin raskas käyttää ilman sopivia työkaluja Tyypillistä: määrityksiä generoidaan

Lisätiedot

812336A C++ -kielen perusteet, 21.8.2010

812336A C++ -kielen perusteet, 21.8.2010 812336A C++ -kielen perusteet, 21.8.2010 1. Vastaa lyhyesti seuraaviin kysymyksiin (1p kaikista): a) Mitä tarkoittaa funktion ylikuormittaminen (overloading)? b) Mitä tarkoittaa jäsenfunktion ylimääritys

Lisätiedot

XML-datan kysely. Topi Sarkkinen. Seminaarityö. Helsinki HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

XML-datan kysely. Topi Sarkkinen. Seminaarityö. Helsinki HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos XML-datan kysely Topi Sarkkinen Seminaarityö Helsinki 18.3.2015 HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos HELSINGIN YLIOPISTO HELSINGFORS UNIVERSITET UNIVERSITY OF HELSINKI Tiedekunta Fakultet

Lisätiedot

Helsingin yliopisto/tktl XML-metakieli XSL-FO XSL - extensible stylesheet language XSL-FO

Helsingin yliopisto/tktl XML-metakieli XSL-FO XSL - extensible stylesheet language XSL-FO XSL - extensible stylesheet language XSL kehitettiin XML aineistojen esitysmuodon märittelyyn XSLT (T ~ Transformations) dokumentin rakenteen tai sisällön muunnokset XSLT 1.0 (http://www.w3.org/tr/xslt)

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

Digitaalisen median tekniikat css tyylimääritykset

Digitaalisen median tekniikat css tyylimääritykset Digitaalisen median tekniikat css tyylimääritykset 26.3.2004 Harri Laine 1 Sisällön ja ulkoasun erottaminen toisistaan tavoiteltavaa sama sisältö pitäisi voida esittää erilaisilla alustoilla esim. esittää

Lisätiedot

DOORSin Spreadsheet export/import

DOORSin Spreadsheet export/import DOORSin Spreadsheet export/import 17.10.2006 SoftQA Oy http/www.softqa.fi/ Pekka Mäkinen Pekka.Makinen@softqa.fi Tietojen siirto DOORSista ja DOORSiin Yhteistyökumppaneilla ei välttämättä ole käytössä

Lisätiedot

On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31)

On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31) On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31) Juha Kahkonen Click here if your download doesn"t start automatically On instrument costs

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

Digitaalisen median tekniikat css tyylimääritykset Harri Laine 1

Digitaalisen median tekniikat css tyylimääritykset Harri Laine 1 Digitaalisen median tekniikat css tyylimääritykset 30.4.2004 Harri Laine 1 Sisällön ja ulkoasun erottaminen toisistaan tavoiteltavaa sama sisältö pitäisi voida esittää erilaisilla alustoilla esim. esittää

Lisätiedot

815338A Ohjelmointikielten periaatteet Harjoitus 2 vastaukset

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

Lisätiedot

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

FinFamily PostgreSQL installation ( ) FinFamily PostgreSQL

FinFamily PostgreSQL installation ( ) FinFamily PostgreSQL FinFamily PostgreSQL 1 Sisällys / Contents FinFamily PostgreSQL... 1 1. Asenna PostgreSQL tietokanta / Install PostgreSQL database... 3 1.1. PostgreSQL tietokannasta / About the PostgreSQL database...

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

On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31)

On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31) On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31) Juha Kahkonen Click here if your download doesn"t start automatically On instrument costs

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

National Building Code of Finland, Part D1, Building Water Supply and Sewerage Systems, Regulations and guidelines 2007

National Building Code of Finland, Part D1, Building Water Supply and Sewerage Systems, Regulations and guidelines 2007 National Building Code of Finland, Part D1, Building Water Supply and Sewerage Systems, Regulations and guidelines 2007 Chapter 2.4 Jukka Räisä 1 WATER PIPES PLACEMENT 2.4.1 Regulation Water pipe and its

Lisätiedot

Capacity Utilization

Capacity Utilization Capacity Utilization Tim Schöneberg 28th November Agenda Introduction Fixed and variable input ressources Technical capacity utilization Price based capacity utilization measure Long run and short run

Lisätiedot

Paikkatietorajapinnat IT arkkitehtuurin näkökulmasta 21.12.200 7

Paikkatietorajapinnat IT arkkitehtuurin näkökulmasta 21.12.200 7 Paikkatietorajapinnat IT arkkitehtuurin näkökulmasta 21.12.200 7 Mikä on IT arkkitehtuuri? Liiketoimintamalli määrittelee IT arkkitehtuurin IT arkkitehtuuri ottaa kantaa sovelluksen laadullisiin vaatimuksiin

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

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

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

XML Technologies and Applications - harjoitustyö -

XML Technologies and Applications - harjoitustyö - XML Technologies and Applications - harjoitustyö - TURUN YLIOPISTO Informaatioteknologian laitos Tietojenkäsittelytiede Harjoitustyö Helmikuu 2009 Jyri Lehtonen (72039) jyri.lehtonen@utu.fi (yksin tehty

Lisätiedot

Digitaalisen median tekniikat css tyylimääritykset

Digitaalisen median tekniikat css tyylimääritykset Digitaalisen median tekniikat css tyylimääritykset 18.9.2007 Harri Laine 1 Sisällön ja ulkoasun erottaminen toisistaan tavoiteltavaa sama sisältö pitäisi voida esittää erilaisilla alustoilla esim. esittää

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

Rekisteröiminen - FAQ

Rekisteröiminen - FAQ Rekisteröiminen - FAQ Miten Akun/laturin rekisteröiminen tehdään Akun/laturin rekisteröiminen tapahtuu samalla tavalla kuin nykyinen takuurekisteröityminen koneille. Nykyistä tietokantaa on muokattu niin,

Lisätiedot

ELEC-C1210 Automaatio 1 ELEC-C1220 Automaatio 2. Kurssien esittely lukukausi

ELEC-C1210 Automaatio 1 ELEC-C1220 Automaatio 2. Kurssien esittely lukukausi ELEC-C1210 Automaatio 1 ELEC-C1220 Automaatio 2 Kurssien esittely lukukausi 2016-17 Tavoitteet. Automaatio 1 ja 2 Opiskelija tuntee erilaisten sovellusalueiden automaatioratkaisujen erot, ymmärtää automaatiojärjestelmien

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

Vaatimusten versiointi DOORSissa

Vaatimusten versiointi DOORSissa Vaatimusten versiointi DOORSissa 01.06.2004 SoftQA Pekka Mäkinen Pekka.Makinen@softqa.fi Miten ylläpitää versiotietoa? Vaatimusten versiotiedoissa on kaksi ylläpidettävää tietoa: Itse vaatimusten hyväksytty

Lisätiedot

Alkuarvot ja tyyppimuunnokset (1/5) Alkuarvot ja tyyppimuunnokset (2/5) Alkuarvot ja tyyppimuunnokset (3/5)

Alkuarvot ja tyyppimuunnokset (1/5) Alkuarvot ja tyyppimuunnokset (2/5) Alkuarvot ja tyyppimuunnokset (3/5) Alkuarvot ja tyyppimuunnokset (1/5) Aiemmin olemme jo antaneet muuttujille alkuarvoja, esimerkiksi: int luku = 123; Alkuarvon on oltava muuttujan tietotyypin mukainen, esimerkiksi int-muuttujilla kokonaisluku,

Lisätiedot

BDD (behavior-driven development) suunnittelumenetelmän käyttö open source projektissa, case: SpecFlow/.NET.

BDD (behavior-driven development) suunnittelumenetelmän käyttö open source projektissa, case: SpecFlow/.NET. BDD (behavior-driven development) suunnittelumenetelmän käyttö open source projektissa, case: SpecFlow/.NET. Pekka Ollikainen Open Source Microsoft CodePlex bio Verkkosivustovastaava Suomen Sarjakuvaseura

Lisätiedot

ELEC-C1220 Automaatio 2 - XML

ELEC-C1220 Automaatio 2 - XML ELEC-C1220 Automaatio 2 - XML XML merkintäkielten perusteet Luento1 Pekka Aarnio Luento 1: OSA1 XML MERKINTÄKIELTEN PERUSTEET Luennon sisältö OSA 1 1. XML ja Puut 2. XML Extensible Markup Language 3. XML-dokumentin

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

Security server v6 installation requirements

Security server v6 installation requirements CSC Security server v6 installation requirements Security server version 6.4-0-201505291153 Pekka Muhonen 8/12/2015 Date Version Description 18.12.2014 0.1 Initial version 10.02.2015 0.2 Major changes

Lisätiedot

Makrojen mystinen maailma lyhyt oppimäärä

Makrojen mystinen maailma lyhyt oppimäärä Makrojen mystinen maailma lyhyt oppimäärä Makrot osana SAS-teknologiaa Yleiskuva Jouni Javanainen Aureolis lyhyesti Aureolis on jatkuvia Business Intelligence -palveluita tuottava asiantuntijaorganisaatio

Lisätiedot

SIMULINK S-funktiot. SIMULINK S-funktiot

SIMULINK S-funktiot. SIMULINK S-funktiot S-funktio on ohjelmointikielellä (Matlab, C, Fortran) laadittu oma algoritmi tai dynaamisen järjestelmän kuvaus, jota voidaan käyttää Simulink-malleissa kuin mitä tahansa valmista lohkoa. S-funktion rakenne

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

Ylläpitodokumentti. Aija. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Ylläpitodokumentti. Aija. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Ylläpitodokumentti Aija Helsinki 2.9.2005 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Sisältö 1. Johdanto...3 2.Sanasto...3 3.Asennusohje...3 3.1 Paketin purkaminen...3

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

You can check above like this: Start->Control Panel->Programs->find if Microsoft Lync or Microsoft Lync Attendeed is listed

You can check above like this: Start->Control Panel->Programs->find if Microsoft Lync or Microsoft Lync Attendeed is listed Online Meeting Guest Online Meeting for Guest Participant Lync Attendee Installation Online kokous vierailevalle osallistujalle Lync Attendee Asennus www.ruukki.com Overview Before you can join to Ruukki

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

Ohjelmointi 1 C#, kevät 2013, 2. tentti

Ohjelmointi 1 C#, kevät 2013, 2. tentti ITKP102 Ohjelmointi 1 C# 15.5.2013 1 / 6 Ohjelmointi 1 C#, kevät 2013, 2. tentti Tentaattori Antti-Jussi Lakanen Tässä tentissä saa olla mukana omia muistiinpanoja yhden arkin verran. Tentin valvojalla

Lisätiedot

811120P Diskreetit rakenteet

811120P Diskreetit rakenteet 811120P Diskreetit rakenteet 2018-2019 1. Algoritmeista 1.1 Algoritmin käsite Algoritmi keskeinen laskennassa Määrittelee prosessin, joka suorittaa annetun tehtävän Esimerkiksi Nimien järjestäminen aakkosjärjestykseen

Lisätiedot

KONEISTUSKOKOONPANON TEKEMINEN NX10-YMPÄRISTÖSSÄ

KONEISTUSKOKOONPANON TEKEMINEN NX10-YMPÄRISTÖSSÄ KONEISTUSKOKOONPANON TEKEMINEN NX10-YMPÄRISTÖSSÄ https://community.plm.automation.siemens.com/t5/tech-tips- Knowledge-Base-NX/How-to-simulate-any-G-code-file-in-NX- CAM/ta-p/3340 Koneistusympäristön määrittely

Lisätiedot

Lab SBS3.FARM_Hyper-V - Navigating a SharePoint site

Lab SBS3.FARM_Hyper-V - Navigating a SharePoint site Lab SBS3.FARM_Hyper-V - Navigating a SharePoint site Note! Before starting download and install a fresh version of OfficeProfessionalPlus_x64_en-us. The instructions are in the beginning of the exercise.

Lisätiedot

Inspire-kohdetunnisteet

Inspire-kohdetunnisteet Inspire-kohdetunnisteet INSPIRE-tietotuotteet 30.8.2010 Esa Tiainen MML 3.9.2010 Sisältö INSPIRE-tunnisteet Tunnisteiden hallinta Olemassaolevien tunnusjärjestelmien käyttäminen 3.9.2010 2 INSPIRE -paikkatietoaineistojen

Lisätiedot

Taulukot. Jukka Harju, Jukka Juslin 2006 1

Taulukot. Jukka Harju, Jukka Juslin 2006 1 Taulukot Jukka Harju, Jukka Juslin 2006 1 Taulukot Taulukot ovat olioita, jotka auttavat organisoimaan suuria määriä tietoa. Käsittelylistalla on: Taulukon tekeminen ja käyttö Rajojen tarkastus ja kapasiteetti

Lisätiedot

OpenStreetMap-aineistojen haltuunotto GDAL:lla

OpenStreetMap-aineistojen haltuunotto GDAL:lla OpenStreetMap-aineistojen haltuunotto GDAL:lla Jukka Rahkonen, http://latuviitta.org Viimeksi muutettu 22. heinäkuuta 2012 GDAL/OGR tukee OpenStreetMap-aineistojen lukemista GDAL-versiosta 2.0 alkaen.

Lisätiedot

Luento 7: XML-ohjelmointirajapinnat

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

Lisätiedot

DOORS Word DOORS 29.04.2004. SoftQA Pekka Mäkinen Pekka.Makinen@softqa.fi

DOORS Word DOORS 29.04.2004. SoftQA Pekka Mäkinen Pekka.Makinen@softqa.fi DOORS Word DOORS 29.04.2004 SoftQA Pekka Mäkinen Pekka.Makinen@softqa.fi Tietojen siirto DOORSista ja DOORSiin Yhteistyökumppaneilla ei välttämättä ole käytössä Telelogic DOORS -ohjelmistoa, jolloin vaatimusten

Lisätiedot

Yhteydettömät kieliopit [Sipser luku 2.1]

Yhteydettömät kieliopit [Sipser luku 2.1] Yhteydettömät kieliopit [ipser luku 2.1] Johdantoesimerkkinä tarkastelemme kieltä L = { a n b m a n n > 0, m > 0 }, joka on yhteydetön (mutta ei säännöllinen). Vastaavan kieliopin ytimenä on säännöt eli

Lisätiedot

Results on the new polydrug use questions in the Finnish TDI data

Results on the new polydrug use questions in the Finnish TDI data Results on the new polydrug use questions in the Finnish TDI data Multi-drug use, polydrug use and problematic polydrug use Martta Forsell, Finnish Focal Point 28/09/2015 Martta Forsell 1 28/09/2015 Esityksen

Lisätiedot

Voice Over LTE (VoLTE) By Miikka Poikselkä;Harri Holma;Jukka Hongisto

Voice Over LTE (VoLTE) By Miikka Poikselkä;Harri Holma;Jukka Hongisto Voice Over LTE (VoLTE) By Miikka Poikselkä;Harri Holma;Jukka Hongisto If you are searched for a book by Miikka Poikselkä;Harri Holma;Jukka Hongisto Voice over LTE (VoLTE) in pdf form, then you have come

Lisätiedot

Ohjelmoinnin peruskurssien laaja oppimäärä

Ohjelmoinnin peruskurssien laaja oppimäärä Ohjelmoinnin peruskurssien laaja oppimäärä Luento 8: Tulkki: proseduurit, abstrakti syntaksi, quote ja cond (mm. SICP 44.1.5 osin) Riku Saikkonen 15. 11. 2011 Sisältö 1 Argumentittomat proseduurit ja käyttöliittymä

Lisätiedot

valitsin on useimmiten html-elementti, jolle tyyli halutaan luoda

valitsin on useimmiten html-elementti, jolle tyyli halutaan luoda Valitsimista valitsin on useimmiten html-elementti, jolle tyyli halutaan luoda Muistin virkistykseksi elementtejä http://appro.mit.jyu.fi/doc/www/xhtml/ HTML-elementtien lisäksi valitsimille voidaan luoda

Lisätiedot

Kylänetti projektin sivustojen käyttöohjeita Dokumentin versio 2.10 Historia : 1.0, 1.2, 1.6 Tero Liljamo / Deserthouse, päivitetty 25.8.

Kylänetti projektin sivustojen käyttöohjeita Dokumentin versio 2.10 Historia : 1.0, 1.2, 1.6 Tero Liljamo / Deserthouse, päivitetty 25.8. Kylänetti projektin sivustojen käyttöohjeita Dokumentin versio 2.10 Historia : 1.0, 1.2, 1.6 Tero Liljamo / Deserthouse, päivitetty 25.8.2012 Hakemisto 1. Sivustot internetissä... 2 2. Yleistä... 2 3.

Lisätiedot

Security server v6 installation requirements

Security server v6 installation requirements CSC Security server v6 installation requirements Security server version 6.x. Version 0.2 Pekka Muhonen 2/10/2015 Date Version Description 18.12.2014 0.1 Initial version 10.02.2015 0.2 Major changes Contents

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

Olio-ohjelmointi Javalla

Olio-ohjelmointi Javalla 1 Olio-ohjelmointi Javalla Olio-ohjelmointi Luokka Attribuutit Konstruktori Olion luominen Metodit Olion kopiointi Staattinen attribuutti ja metodi Yksinkertainen ohjelmaluokka Ohjelmaluokka 1 Olio-ohjelmointi

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

Tietorakenteet ja algoritmit

Tietorakenteet ja algoritmit Tietorakenteet ja algoritmit Taulukon edut Taulukon haitat Taulukon haittojen välttäminen Dynaamisesti linkattu lista Linkatun listan solmun määrittelytavat Lineaarisen listan toteutus dynaamisesti linkattuna

Lisätiedot

XML rakenteen suunnittelu. Jaana Holvikivi

XML rakenteen suunnittelu. Jaana Holvikivi XML rakenteen suunnittelu Jaana Holvikivi XML suunnittelu Dokumentin ilmentymä elementit attribuutit (määritteet) entiteetit prosessointikäskyt 19.3.2015 Jaana Holvikivi 2 Elementtien sisäkkäisyys: säännöt

Lisätiedot

Olet vastuussa osaamisestasi

Olet vastuussa osaamisestasi Olet vastuussa osaamisestasi Ohjelmistoammattilaisuuden uudet haasteet Timo Vehmaro 02-12-2015 1 Nokia 2015 Mitä osaamista tulevaisuudessa tarvitaan? Vahva perusosaaminen on kaiken perusta Implementaatio

Lisätiedot

TW-LTE 4G/3G. USB-modeemi (USB 2.0)

TW-LTE 4G/3G. USB-modeemi (USB 2.0) TW-LTE 4G/3G USB-modeemi (USB 2.0) Tiedonsiirtonopeus: 100 Mbps/50 Mbps LTE: 1800/2100/2600 MHz GSM/GPRS/EDGE: 850/900/1800/1900 MHz UMTS: 900/2100 MHz Pikaohje (Finnish) CE Käyttöönotto- ohje SIM- kortin

Lisätiedot

ELEC-C1210 Automaatio 1 ELEC-C1220 Automaatio 2. Kurssien esittely lukukausi

ELEC-C1210 Automaatio 1 ELEC-C1220 Automaatio 2. Kurssien esittely lukukausi ELEC-C1210 Automaatio 1 ELEC-C1220 Automaatio 2 Kurssien esittely lukukausi 2017-18 Tavoitteet. Automaatio 1 ja 2 Opiskelija tuntee erilaisten sovellusalueiden automaatioratkaisujen erot, ymmärtää automaatiojärjestelmien

Lisätiedot