Ontologiat merkitysten mallintamisessa: OWL Web Ontology Language

Koko: px
Aloita esitys sivulta:

Download "Ontologiat merkitysten mallintamisessa: OWL Web Ontology Language"

Transkriptio

1 HELSINGIN YLIOPISTO TIETOJENKÄSITTELYTIETEEN LAITOS Seminaaritutkielma Ontologiat merkitysten mallintamisessa: OWL Web Ontology Language Eeva Ahonen Ohjaaja: Juha Puustjärvi Helsinki,

2 Tiivistelmä Internet tuo ulottuvillemme rajattomalta tuntuvan määrän informaatiota, jonka hyödyntäminen on tehotonta sen heikon rakenteellisuuden vuoksi. Käsitemallien eli ontologioiden luominen ja niiden sitominen dokumentteihin mahdollistaa nykyistä kehittyneemmän koneellisen tekstien tulkinnan, jota voidaan hyödyntää niin normaalissa tiedonhaussa laajoista dokumenttikokoelmista, kuin monimutkaisemmissa tekoälysovelluksissakin. Tässä dokumentissa selvitän ontologioihin ja erityisesti OWL (Web Ontology Language) kielisiin ontologioihin liittyviä peruskäsitteitä ja periaatteita.

3 Sisällys 1. JOHDANTO ONTOLOGIAT SEMANTTISEN TIEDON KUVAAJINA PERUSKÄSITTEITÄ: LUOKKIA JA YKSILÖITÄ LUOKKIEN OMINAISUUDET LUOKKIEN VÄLISIÄ SUHTEITA ONTOLOGIA-TYÖKALUISTA: PROTÉGÉ OWL WEB ONTOLOGY LANGUAGE MIKSI OWL? ALALAJIT ONTOLOGIOIDEN HAJAUTTAMINEN LUOKAT JA INDIVIDUALIT PROPERTYT VERSIOHALLINTA LOPUKSI... 12

4 1. Johdanto Tarjolla olevan informaation määrä on räjähtänyt teknologian kehittymisen myötä ja ennen kaikkea internetin mahdollistettua dokumenttien joskus liiankin tehokkaan levittämisen. Samalla relevantin tiedon löytämisestä kaiken hälyn seasta on tullut tiedonhakijan suurin haaste. Tähän ongelmaan yritetään vastata edelleen kehittyneemmin teknologisin apuvälinein. Eräs tapa vastata tiedonhaun ongelmiin on tekstin sisältöä kuvaavan metadatan lisääminen dokumentteihin esim. internetissä. Idea on, että tästä metadatasta kävisi itse dokumenttitekstiä paremmin ilmi tekstin todellinen merkitys, mistä tekstissä todella puhutaan. Metadataa hyödyntämällä tiedonhakija saisi tarkempia hakutuloksia siellä missä ongelmana on liian laajat ja epätarkat haut, ja toisaalta laajempia tuloksia siellä missä ongelmana on liian suppeat hakutulokset. Ontologiat ovat tapa kuvata ihmisen ymmärtämää semanttista tietoa maailmasta tietokoneen ymmärtämään muotoon. Tässä dokumentissa tutustutaan tarkemmin ontologian käsitteeseen, ja siihen millaisia asioita niillä voidaan kuvata (luku 2). Jotta ontologioita voitaisiin hyödyntää sovelluksissa, ne täytyy kuvata jollain sovitulla formaalilla tavalla, kuvauskielellä. Jotta ontologioita edelleen pystyttäisiin mahdollisimman tehokkaasti hyödyntämään esimerkiksi internetissä, täytyy niiden esittämiselle olla sovittu ja yhteisesti hyväksytty standardi. Eräs tällainen on OWL (Web Ontology Language), johon tutustutaan luvussa 3. Lopuksi käydään lyhyesti läpi muutamia esimerkkejä ontologioiden soveltamista (luku 4). 2. Ontologiat semanttisen tiedon kuvaajina Ontologialla tarkoitetaan mallia, joka kuvaa tietyn tietoalueen käsitteitä ja niiden välisiä suhteita. Tom Gruberin laajalti siteeratuin sanoin: An ontology is a specification of conseptualization. Merkitysten saattaminen formaaliin muotoon edellyttää käsitteellistämistä. Käsitteellistäminen on abstrakti, yksinkertaistettu esitys kiinnostuksen kohteena olevasta maailmasta. [Gruber, 1993]. Itse käsitteiden lisäksi tietokoneelle pitää kuvata niiden väliset suhteet. Teksti koostuu symboleista, jotka ovat merkityksettömiä ilman tulkintaa. Ihminen tulkitsee ne oman sisäisen käsitemallinsa avulla, koneella taas ei valmiiksi tällaista käsitemallia ole. Ontologiaa rakentaessaan ihminen pyrkii kuvaamaan tietokoneelle oman käsitemallinsa, jonka avulla symboleista koostuva teksti on mahdollista tulkita. Tekstin sekaan sijoitettu metatieto, semanttinen annotaatio, yhdistää käsitemallin käsitteet todellisen tekstin elementteihin. Ontologiassa taas kuvataan käsitteiden, ja sitä kautta tekstin elementtien, ominaisuudet sekä suhteet toisiinsa. Tätä kautta tietokoneella voidaan tulkita tekstiä, löytää siitä yksittäisiä sanoja laajempia merkityksiä, ja tehdä ihmisen ajattelua muistuttavaa päättelyä asioista.

5 Dacontan [2003] mukaan ontologiaan pohjaava ohjelmisto nousee ihmisen tiedolliselle tai käsitteelliselle tasolle, eikä ihmisen tarvitse enää laskeutua koneen tasolle käyttäessään ohjelmistoa. Kuvaan seuraavaksi hieman yleisiä periaatteita ontologioiden tavasta mallintaa asioita. On syytä huomata, että kaikki ontologioiden kuvauskielet eivät mahdollista kaikkea tätä. Lähtökohtana tämän luvun kuvauksille ovat Semantic Webin kannalta keskeiset kielet DAML+OIL, RDF/S ja OWL Peruskäsitteitä: luokkia ja yksilöitä Luokilla kuvataan ontologiassa yleisiä käsitteitä. Luokat voidaan ymmärtää jonkinlaisen peruskäsitteen kuvauksena, tai kokoelmana tähän luokkaan kuuluvia olioita (yksilöitä). Kuvassa 1 on pieni esimerkkiontologia, joka sisältää 5 luokkaa. Esimerkiksi luokka Animal sisältää kaikki eläinkuntaan kuuluvat oliot. Se jakautuu kahteen alaluokkan, Mammal ja Fish, joista toiseen kuuluvat nisäkkäät ja toiseen kalat. Kaikki luokkaan Fish kuuluvat oliot kuuluvat myös luokkiin Animal sekä Organism. Luokat siis kuvaavat yleisiä peruskäsitteitä, sellaisina kuin me ihmiset ne hahmotamme. Yksilö puolestaan edustavat näitä luokkia, kultakala Repe on eräs ilmentymä luokasta Fish. Repe voisi siis olla yksilö, joka kuuluu luokkaan Fish. Ontologia-mallin perusteella tiedämme, että koska Repe on kala, se on myös eläin (luokka Animal), ja elollinen olio (luokka Organism). Kuva 1. Esimerkki käsitehierarkiasta (kuva Jena-dokumentaatiosta) Luokkien ominaisuudet Luokkien tarkempaa kuvausta varten niille voidaan määrittää joukko erilaisia ominaisuuksia. Tämä tehdään määrittämälle luokalle property. Esimerkiksi luokalla Animal voisi olla numeerisen arvon saava property numsensoryorgans. Eläimillä voi olla aistielimiä, ja tämän propertyn arvo kertoo kuinka monta jollakin tietyllä luokkaan kuuluvalla yksilöllä niitä on. Propertyillä on määrätty arvoalue, joka kertoo millaisia

6 arvoja se voi saada. Arvoalue määrittää arvon tyypin, esimerkiksi numero, merkkijono tai olio (jonkin luokan ilmentymä). Myös propertyt voivat muodostaa hierarkioita. Property numeyes voitaisiin määrittää numsensoryorgans propertyn ala-propertyksi. Jos Repe-kalan numeyes propertyn arvo on 2 ja myös numsensoryorgans on 2, tiedämme että Repellä on kaksi silmää eikä siis mitään muita aistielimiä. Property liittyy aina johonkin tiettyyn luokkaan. Esimerkiksi Property numeyes liittyy luokkaan Animal, olioilla, jotka eivät ole eläimiä ei ole myöskään silmiä. Vastaavasti jos tiedämme että oliolla Repe on numeyes = 2, voimme päätellä että Repe on eläin, vaikka sitä ei erikseen olisi kerrottu Luokkien välisiä suhteita Luokkien välillä voi vallita monenlaisia suhteita. Yläluokka-alaluokka hierarkioissa luokan alaluokka määrittää jonkin osajoukon tai erityistapauksen yläluokastaan. Kaikki alaluokan yksilöt kuuluvat siis myös kaikkiin yläluokkiinsa. Luokan yläluokan yläluokat ovat myös luokan yläluokkia, hierarkiset suhteet ovat siis transitiivisia. Jos A on B:n yläluokka ja B on C:n yläluokka, niin A on myös C:n yläluokka. Luokalla voi olla myös useita suoria, rinnakkaisia yläluokkia. Voisimme määritellä esimerkkiontologiaamme luokan Slime Mold, joka olisi sekä Plant että Animal luokkien alaluokka. Näin ontologiahierarkia ei siis (välttämättä) ole muodoltaan puu, vaan ennemmin verkko toisiinsa liittyviä käsitteitä. Luokkien välille muodostuu suhteita myös olio- tai luokkatyyppisten propertyjen (object property) kautta. Voisimme lisätä ontologiaan tietoa maantieteellisistä paikoista voidaksemme kuvata olioiden elinalueita. Joku tietty Fish-luokkaan kuuluva olio saisi silloin elinaluettaan kuvaavan propertynsä livingarea arvoksi jonkin luokkaan Sea kuuluvista yksilöistä. Viimeiseksi luokkien välille voidaan muodostaa suhteita yhdisteillä, leikkauksilla ja komplementeilla. Luokkien Plant ja Animal leikkaukseen kuuluisi siis aiemmin mainittu Slime Mold. Niiden yhdisteeseen taas kuuluisivat kaikki kumpaan tahansa luokkaan kuuluvat oliot. Voisimme määrittää uuden luokan nonfish, joka kattaisi kaikki kontekstiin kuuluvat oliot, jotka eivät ole kaloja. Tämä luokka olisi luokan Fish komplementti. [Smith et al, 2004] Ontologia-työkaluista: Protégé Ontologia tekijän ei välttämättä tarvitse tietää ontologioiden kuvauskielistä mitään. Riittää jos ymmärtää asiat edellä esitetyllä yleisellä tasolla. Ontologioiden kirjoittamista, lukemista ja muokkaamista varten on tehty työkaluja, jollainen on esimerkiksi Protégé 1. Työkalut voivat tukea tiettyjä ontologiankuvauskieliä, mutta ne eivät välttämättä mahdollista kaikkea mitä kyseinen kieli mahdollistaisi. Toisaalta niihin voidaan myös rakentaa sovellustason käsittelyä, joka ei varsinaisesti näy itse ontologiakielessä. 1

7 Esimerkiksi Protégéssa on toteutettu propertyjen periytyminen yläluokilta alaluokilleen, joka ei varsinaisesti näy itse ontologiatiedostossa, tai kuulu esimerkiksi OWL-stadardiin. Kuvassa 2 on näkymä eräästä ontologiasta Protégé editorilla katsottuna. Tässä näkymässä on esillä ainoastaan luokkia propertyineen, ei luokkiin kuuluvia yksilöitä. Vasemmassa reunassa näkyy luokkahierarkia, jota voi selailla avaamalla solmuja. Sen oikealla puolella näkyvät aktiivisena olevan luokan ominaisuudet, oikeassa reunassa mahdolliset propertyt ja keskellä tälle luokalle määritetyt propertyjen arvot. Luokalla CleanPrinterInsides on kaksi suoraa yläluokkaa Clean ja PrinterTask, property patient, jonka saaman (olio)arvon täytyy aina kuulua luokkaan PrinterInsides. Kuva 2. Protégé ontologia editori

8 3. OWL Web Ontology Language Ihmislukijalle ontologia on (rajoitetusti) selkeätä esittää kuvan 1 kaltaisessa graafisessa muodossa tai kuvan 2 kaltaisen editorin kautta. Tietokoneelle se esitetään jollain tiedon kuvauskielellä (knowledge representation language). Tällaisia kieliä ovat esimerkiksi RDF/S, DAML+OIL ja OWL. Tässä luvussa tutustumme tarkemmin viimeksi mainittuun. OWL on kehitetty osana W3 konsortiumin Semantic Web hanketta. Sitä lähdettiin kehittämään tietoisesti standardiksi, lähtökohtana käytettiin DARPA:ssa määritettyä DAML+OIL kieltä. OWL pohjautuu uudempaan versioon RDF/S standardista, ja sen kehittämisessä on otettu huomioon DAML+OIL:in tiedossa olleita heikkouksia ja ongelmia. Lyhenne OWL tulee sanoista Web Ontology Language, ja Dacontan [2003] mukaan se kunnioittaa nimellään Nalle Puhin Pöllöä (Owl), joka kirjoitti oman nimensä väärin: WOL. Owl rakentuu RDF:n päälle siten, että OWL -dokumentti kuvataan itse asiassa RDF - standardin mukaisella syntaksilla. OWL:in ja RDF:n suhteesta on kahta koulukuntaa, toisen mukaan OWL on oma itsenäinen kielensä, joka vain käyttää RDF:ää esitysmuotonaan, toisen mukaan taas RDF tripletit ovat koko OWL:in ydin [Jena] Miksi OWL? OWL on vakiintumassa semanttisen verkon standardiksi ontologioiden kuvauskielenä edeltäjänsä DAML+OIL:in tilalle. OWL onkin kehitetty DAML+OIL:ia lähtökohtana käyttäen ja on siksi ehkä mahdollista ymmärtää vain uudemmaksi versioksi siitä. OWL mahdollistaa luokkien välisten suhteiden sekä ominaisuuksien määrittelemisen laajemmin kuin esimerkiksi XML Schema tai RDFS. Jälkimmäisellä voimme määritellä luokkahierarkioita (yläluokka alaluokka) ja antaa luokille attribuutteja (propertyjä), jotka voivat edelleen muodostaa hierarkioita. OWL mahdollistaa saman, ja lisäksi kaiken luvuissa 2.2 ja 2.3 kuvatun. OWL:issa voimme myös määrittää kaksi luokkaa toisensa poissulkeviksi, siten että mikään olio ei esimerkiksi voi kuulua sekä luokkaan Plant että luokkaan Animal. OWL:issa propertyille voidaan myös määrittää monipuolisempia ominaisuuksia kuin vain hierarkioita (näistä enemmän kohdassa 3.5) Alalajit OWL kieli jakautuu ilmaisuvoiman ja käytettävyyden puolesta kolmeen eritasoiseen alalajiin. OWL Lite on näistä yksinkertaisin ja rajoitetuin. Sillä on mahdollista määritellä luokista ja propertyista sekä niiden ilmentymistä (yksilöistä, individualeista) koostuva ontologia. Luokat ja propertyt voivat olla hierarkisessa suhteessa toisiinsa (siis luokat toisiin luokkiin ja propertyt toisiin propertyihin). OWL Lite sallii kardinaalisuusarvojen määrittämisen vain 0 tai 1 :ksi.

9 OWL DL on ilmaisuvoimaltaan laajempi. Se mahdollistaa kardinaalisuusarvojen määrittämisen muuksikin kuin vain 0 tai 1. OWL DL:ssä voidaan myös tehdä ilmauksia ottamalla luokista yhdisteitä, leikkauksia ja komplementteja ja luokat voidaan määritellä toisensa poissulkeviksi. [Daconta et al, 2003]. OWL Full laajentaa edelleen OWL DL:ää. Siinä luokat voivat olla samanaikaisesti kokoelma yksilöitä, ja toisaalta itse yksilönä jossain toisessa kokoelmassa [Smith et al, 2004]. Siinä missä yksinkertaisemman kielen version ilmaisuvoima on suppeampi, on toisaalta sen toteuttaminen sovelluksissa helpompaa. OWL Liteen lienee helpompi siirtyä vanhasta taksonomioita tai leksikoita käyttävästä sovelluksesta, toisaalta OWL DL:llä saadaan käyttöön monimutkaisempaan päättelyyn pystyviä tekoäly-sovelluksia. Ilmaisuvoiman kasvaessa myös laskennallinen mutkikkuus kasvaa. Laajempi versio kielestä sisältää aina suppeamman, joten validi OWL Lite ilmaus on aina myös validi OWL DL ilmaus, mutta OWL DL:n validi ilmaus ei välttämättä ole validi OWL Litessä Ontologioiden hajauttaminen Tietoverkko on luonteensa puolesta hajautettu järjestelmä. Semantic Web lisää olemassa olevaan verkkoon uuden tiedon mallintamisen ja esittämisen muodon, ja tulee siis myös olemaan laajalti hajautettu. Kriittinen osa ontologiasuunnittelua on ottaa huomioon tietojen hajauttaminen ja kerääminen useista erillisistä lähteistä. OWL sisältää erilaisia tapoja yhdistää eri ontologioita toisiinsa. Sisällyttämällä (import) jokin olemassa oleva ontologia toiseen, saadaan sisällytetyssä ontologiassa määritellyt asiat käyttöön, ja vältytään samojen asioiden uudelleen määrittelemiseltä. Sisällytetyn ontologian luokkiin, individualeihin ja propertyihin voidaan viitata kaikilla samoilla tavoilla kuin työn alla olevan ontologian sisällä määriteltyihinkin. Toisen ontologian sisällyttäminen tapahtuu ontologiatiedoston header-elementissä owl:ontology. Elementti sisältää yleistä tietoa ontologiasta, kuten otsikon, kommentin, versiotietoa. Tämän elementin sisälle voidaan määritellä tagi owl:imports, joka sisältää linkin olemassa olevaan ontologiaan, joka halutaan sisällyttää tähän ontologiaan. Joskus riittää saada vain toisessa ontologiassa määritelty sanasto käyttöön. Tähän tarkoitukseen voidaan käyttää ontologia-tiedoston alussa määriteltävää XML Namespaceviittausta. Myös owl:imports tagilla sisällytettävän ontologian namespace on syytä määritellä tässä kohdassa, jotta sen nimien käyttäminen sujuisi mutkattomasti Luokat ja Individualit OWL:in määrittelemän maailman jokainen yksilö kuuluu luokkaan owl:thing. Kaikki luotavat luokat ovat siis automaattisesti tämän luokan alaluokkia. Ontologian määrittelijä päättää aihealueensa luokkahierarkian juurista. Juuret luodaan samalla tavalla kuin muutkin luokat, määrittämällä uusi nimetty luokka: <owl:class rdf:id= Animal />

10 Tämä ilmaus ei kerro luokasta mitään muuta, kuin tunnisteen, jolla siihen voidaan viitata. Owl:Class elementin sisällä voidaan antaa muuta tietoa luokasta jo luomisvaiheessa, tai lisätä tietoa myöhemmin viittaamalla olemassa olevaan luokkaan. <owl:class rdf:id= Fish > <rdfs:subclassof rdf:resource= #Animal />... </owl:class> Luokan määritelmä koostuu siis kahdesta osasta: uuden luokan nimen esittely tai viittaus olemassa olevaan, sekä lista rajoituksia kyseessä olevalle luokalle. Rajoitukset kohdistuvat edelleen luokkaan kuuluviin yksilöihin, eli yksilöt kuuluvat luokalle määritettyjen rajoitusten leikkaukseen [Smith et al, 2004]. Luokkien lisäksi on siis tarpeen määritellä niihin kuuluvat yksilöt. Yksilö esitellään yksinkertaisimmillaan vain antamalla sille nimi, ja määrittelemällä se tietyn luokan jäseneksi: <Fish rdf:id= GoldFish /> Ei ole mitenkään itsestään selvää, milloin jokin asia määritetään sitä laajemman käsitteen alaluokaksi, milloin luokkaan kuuluvaksi yksilöksi. Tämä täytyy päättää sovelluskohtaisesti, jos ontologialla on tarkoitus kuvata maailman eläinlajit, voimme päättää, että kala-luokan yksilöt ovat kalalajeja, eihän ole mitään tarvetta alkaa kuvata ontologiaan varsinaisia olemassa olevia kultakala-yksilöitä. Jos taas teemme sovellusta, jonka avulla seurataan meritieteellisen akvaarion kalojen ruokintaa, lisääntymistä ja elämää, haluamme varmaankin määritellä kalalajit luokiksi <owl:class rdf:id= GoldFish > <rdfs:subclassof= #Fish /> </owl:class> ja näihin luokkiin kuuluviksi yksilöiksi akvaariossa elävät kalat <GoldFish rdf:id= Repe /> On tärkeää huomata, että luokan esittelyn ja sen yksilöiden esittelyn ei tarvitse olla samassa ontologiassa. Edes luokan esittelyn ja sen ominaisuuksien (rajoitusten) määrittelyiden ei tarvitse sijaita samassa ontologiassa. Kuten luvussa 3.3 todettiin, ontologioita täytyy voida rakentaa kerroksittain ja hajautetusti. Ontologiassa voidaan jatkaa jonkin muussa ontologiassa esitellyn luokan määritystä ilman että alkuperäinen ontologia muuttuu. Toisessa ontologiassa tehdyt määritykset voivat aina vain lisätä aiempaan uusia rajoituksia, eivät poistaa tai korvata vanhoja.

11 3.5. Propertyt Luokille määritetään niiden yksilöiden ominaisuuksista kertovia propertyjä. Luokka, josta property jotain kertoo, on propertyn domain. Propertyjä on kahdenlaisia: object propertyjä, joiden arvoalue (eli range) on jokin toinen luokka, ja data type propertyjä, joiden arvoalue on jokin XML Scheman data type. Object propertyt siis määrittävät suhteita luokkien välille, ja data type propertyt luokkien ja XML:n tietotyyppien välille. Propertyt määritellään samaan tapaan kuin luokat, ensin esitellään uusi nimi tai viitataan olemassa olevaan, ja sen jälkeen listataan propertyyn kuuluvat rajoitukset: <owl:objectproperty rdf:id= hascarer > <rdfs:domain rdf:resource= #GoldFish /> <rdfs:range rdf:resource= #Employee /> </owl:objectproperty> <owl:datatypeproperty rdf:id= numeyes > <rdfs:domain rdf:resource= #GoldFish /> <rdfs:range rdf:datatype= &xsd;nonnegativeinteger /> </owl:datatypeproperty> Yllä olevassa esimerkissä siis GoldFish luokalla (eli kaikilla sen yksilöillä) on propertyt hascarer, joka yhdistää kultakalayksilön siitä vastuussa olevaan työntekijään (oletamme että akvaarion työntekijät on määritelty luokassa Employee) sekä numeyes joka kertoo kalayksilön silmien lukumäärän. <GoldFish rdf:id= Repe > <hascarer rdf:resource= #Matti /> <numeyes rdf:datatype= &xsd;nonnegativeinteger>2</numeyes> </GoldFish> Propertyjen välille voidaan määritellä hierarkisia suhteita rdfs:subpropertyof rajoituksella. Propertyille voidaan määrittää kardinaalisuusrajoituksia ilmauksilla rdfs:mincardinality ja rdfs:maxcardinality. Voimme siis esimerkiksi sanoa GoldFish luokan propertystä hascarer, että jokaisella luokan yksilöllä on oltava ainakin yksi hoitaja, eli ainakin yksi instanssi kyseisestä propertystä Versiohallinta Ontologia on tiedosto, joka todennäköisesti vaatii jatkuvaa hienosäätöä ja päivittämistä, ja toisaalta saattaa olla kytköksissä hyvin monenlaisiin sovelluksiin ja toisiin ontologioihin. Siksi on hyvin tärkeää hallita sen eri versiot, niiden käyttö ja keskinäinen yhteensopivuus. OWL tukee ontologioiden versiohallintaa owl:ontology (header-)elementin versioinformaatiota kuvaavilla tageilla. Tällaisia ovat owl:priorversion, jonka sisällöksi tulee linkki ontologian edelliseen versioon. Versioiden keskinäistä yhteensopivuutta voidaan kuvata tagein owl:backwardcompatiblewith ja owl:incompatiblewith.

12 Lisäksi koko ontologialle tai vain yksittäiselle luokalle tai propertylle voidaan määrittää versiotieto (numero tms.) annotaatio-tagilla owl:versioninfo. Tämä tagi on tarkoitettu versiohallintaa käyttävien sovellusten avuksi. [Smith et al, 2004]. 4. Lopuksi Ontologioihin pohjautuvat sovellukset pystyvät nousemaan lähemmäksi ihmisen ajattelua ja hyödyntämään päättelyssään käsitemallien sisältämiä semanttisia suhteita ja rakenteita. Mutkikasta päättelyä suorittavien tekoäly-sovellusten lisäksi niitä voidaan kuitenkin hyödyntää myös jokapäiväisissä tiedonhakutehtävissä. Jos dokumenttikokoelma, josta tietoa etsitään, on rakenteistettu annotoimalla se ontologian käsitteillä, hakukone voi muodostaa tarkempia hakukyselyitä, jotka kohdistuvat nimenomaan annotoituihin merkityksiin (käsitteisiin). Yksinkertaisimmillaan hakukone voi hyödyntää ontologiaa laajentamalla hakukyselyä hakutermin luokan aliluokkiin, eli hakemalla paitsi samaan luokkaan (käsitteeseen) kuuluvilla termeillä, myös sen aliluokkiin kuuluvilla termeillä. Se, missä määrin nykyinen Internet muuntuu Semantic Webiksi, jää ajan kuluessa nähtäväksi. Vaikka kaikki informaatio ei tulevaisuudessa olisikaan semanttisesti annotoitua ja rakenteellista, on semantic web -hankkeessa kehitetyille metodeille ja työkaluille epäilemättä käyttöä ainakin pienempien kokonaisuuksien hallitsemisessa.

13 Lähteet [Daconta et al, 2003] Daconta M.C., Orbst L.J., Smith K.T. The Semantic Web. A guide to the future of XML, Web Services, and Knowledge Management. Wiley Publishing Inc, Indianapolis [Gruber, 1993] [Jena] [Smith et al, 2004] Gruber, T.R. A Translation Approach to Portable Ontology Specifications. Knowledge Acquisition, 5, Jena 2 Ontology API documentation. (luettu ) Smith M.K., Welty C., McGuinness D.L. (edit.) OWL Web Ontology Language Guide. W3C Recommendation 10 February (luettu )

Ontologiat merkitysten mallintamisessa: OWL. Eeva Ahonen

Ontologiat merkitysten mallintamisessa: OWL. Eeva Ahonen Ontologiat merkitysten mallintamisessa: OWL Eeva Ahonen 1.11.2004 Semanttinen tieto käsitemallit ihmisillä sisäiset mallit maailmantieto tarvitaan tekstin tulkitsemiseen tietokoneelle esim. sanat vain

Lisätiedot

The OWL-S are not what they seem

The OWL-S are not what they seem The OWL-S are not what they seem...vai ovatko? Verkkopalveluiden koostamisen ontologia OWL-S Seminaariesitelmä 15.4.2013 Emilia Hjelm Internet on hankala Nykyinternet on dokumenttien verkko Asiat, joita

Lisätiedot

Tiedon mallintaminen ja esillesaanti. Web Ontology Language OWL Daniel Lillqvist 26.10.2015

Tiedon mallintaminen ja esillesaanti. Web Ontology Language OWL Daniel Lillqvist 26.10.2015 Tiedon mallintaminen ja esillesaanti Web Ontology Language OWL Daniel Lillqvist 26.10.2015 Ontologiat "An explicit formal specification of how to represent the objects, concepts and other entities that

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

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

Yhteentoimivuusalusta: Miten saadaan ihmiset ja koneet ymmärtämään toisiaan paremmin? Yhteentoimivuusalusta: Miten saadaan ihmiset ja koneet ymmärtämään toisiaan paremmin? Avoin verkkoalusta ihmisen ja koneen ymmärtämien tietomääritysten tekemiseen Riitta Alkula 20.3.2019 Esityksen sisältö

Lisätiedot

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

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

Lisätiedot

standardit (W3C, ISO) Semanttisen laskennan tutkimusryhmä Teknillinen korkeakoulu kim.viljanen@tkk.fi

standardit (W3C, ISO) Semanttisen laskennan tutkimusryhmä Teknillinen korkeakoulu kim.viljanen@tkk.fi Semanttisen webin standardit (W3C, ISO) ja teknologiat Kim Viljanen Kim Viljanen Semanttisen laskennan tutkimusryhmä Teknillinen korkeakoulu kim.viljanen@tkk.fi SeCon Semantic web -patteristo XML Finland

Lisätiedot

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

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

Lisätiedot

Sisällönhallinnan menetelmiä

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

Lisätiedot

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

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

Lisätiedot

Tiedonlouhinta rakenteisista dokumenteista (seminaarityö)

Tiedonlouhinta rakenteisista dokumenteista (seminaarityö) Tiedonlouhinta rakenteisista dokumenteista (seminaarityö) Miika Nurminen (minurmin@jyu.fi) Jyväskylän yliopisto Tietotekniikan laitos Kalvot ja seminaarityö verkossa: http://users.jyu.fi/~minurmin/gradusem/

Lisätiedot

RDF ja RDFS. 8 RDF ja RDFS

RDF ja RDFS. 8 RDF ja RDFS 8 RDF ja RDFS RDF:n merkitys selkiytyy kun tarkastelemme RDFsanastojen määrittelyä (kuvailua). RDF-skeemat (RDF Schema) tarjoaa peruskäsitteet joiden varassa voidaan karkeasti luonnehtia esim. yksinkertaisten

Lisätiedot

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

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

Lisätiedot

Automaattinen semanttinen annotointi

Automaattinen semanttinen annotointi Automaattinen semanttinen annotointi Matias Frosterus, Reetta Sinkkilä, Katariina Nyberg Semantic Computing Research Group (SeCo) School of Science and Technology, Department of Media Technology and University

Lisätiedot

812347A Olio-ohjelmointi, 2015 syksy 2. vsk. IX Suunnittelumallit Proxy, Factory Method, Prototype ja Singleton

812347A Olio-ohjelmointi, 2015 syksy 2. vsk. IX Suunnittelumallit Proxy, Factory Method, Prototype ja Singleton 2015 syksy 2. vsk IX Suunnittelumallit Proxy, Factory Method, Prototype ja Singleton Sisältö 1. Johdanto luontimalleihin 2. Proxy 3. Factory Method 4. Prototype 5. Singleton Suunnittelumallit Proxy et.

Lisätiedot

Ohjelmistojen mallintaminen, mallintaminen ja UML

Ohjelmistojen mallintaminen, mallintaminen ja UML 582104 Ohjelmistojen mallintaminen, mallintaminen ja UML 1 Mallintaminen ja UML Ohjelmistojen mallintamisesta ja kuvaamisesta Oliomallinnus ja UML Käyttötapauskaaviot Luokkakaaviot Sekvenssikaaviot 2 Yleisesti

Lisätiedot

Julian graafinen annotointityökalu ja erityisontologioiden editori. Jaason Haapakoski P Kansanterveyslaitos , 28.3.

Julian graafinen annotointityökalu ja erityisontologioiden editori. Jaason Haapakoski P Kansanterveyslaitos , 28.3. Julian graafinen annotointityökalu ja erityisontologioiden editori Jaason Haapakoski P. 040 7612 811 Kansanterveyslaitos 28.2.2006, 28.3.2006 Perusnäkymä Ohjelmalle on konfiguroitavissa useita eri käsitteistöjä

Lisätiedot

Ylläpitodokumentti. Boa Open Access. Helsinki 2.5.2006 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Ylläpitodokumentti. Boa Open Access. Helsinki 2.5.2006 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Ylläpitodokumentti Boa Open Access Helsinki 2.5.2006 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Ilmari

Lisätiedot

Mitä on periytyminen?

Mitä on periytyminen? 8. Periytyminen 8.1 Sisällys Mitä on periytyminen? Yksittäis- ja moniperiytyminen. Oliot ja perityt luokat. Filosofinen ja käytännönläheinen näkökulma periytymiseen. Periytymisen soveltaminen. 8.2 Mitä

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

Testausraportti. Orava. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Testausraportti. Orava. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Testausraportti Orava Helsinki 5.5.2005 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Juhani Bergström Peter

Lisätiedot

TESAURUKSET JA ONTOLOGIAT

TESAURUKSET JA ONTOLOGIAT Janne Heinonen TESAURUKSET JA ONTOLOGIAT TJTSD50 - Tekstitiedonhaku Esseetehtävä 23.5.2006 Jyväskylän yliopisto Tietojenkäsittelytieteiden laitos Jyväskylä SISÄLLYSLUETTELO 1 TESAURUKSET JA ONTOLOGIAT...

Lisätiedot

Metatiedot organisaatioiden sisällönhallinnassa

Metatiedot organisaatioiden sisällönhallinnassa Metatiedot organisaatioiden sisällönhallinnassa Airi Salminen Jyväskylän yliopisto http://www.cs.jyu.fi/~airi/ Lainsäädäntöprosessin tiedonhallinnan kehittäminen Metatiedot suomalaisen lainsäädäntöprosessin

Lisätiedot

Sisällys. Mitä on periytyminen? Yksittäis- ja moniperiytyminen. Oliot ja perityt luokat. Periytymisen käyttö. 8.2

Sisällys. Mitä on periytyminen? Yksittäis- ja moniperiytyminen. Oliot ja perityt luokat. Periytymisen käyttö. 8.2 8. Periytyminen 8.1 Sisällys Mitä on periytyminen? Yksittäis- ja moniperiytyminen. Oliot ja perityt luokat. Periytymisen käyttö. 8.2 Mitä on periytyminen? Periytyminen (inheritance) tarkoittaa luokan piirteiden

Lisätiedot

Paikkatiedot ja Web-standardit

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

Lisätiedot

Internet jolla on merkitystä

Internet jolla on merkitystä Internet jolla on merkitystä Semanttinen Web visio, kehitys ja tulevaisuus Ora Lassila Nokia Services USA ICT 2010 avauspuheenvuoro Keskiviikko 14.4. klo 8:30 Olen puhunut tästä jo aiemmin Onko sanoma

Lisätiedot

Yhteentoimiva.suomi.fi - palvelukokonaisuuden ja työkalujen esittely

Yhteentoimiva.suomi.fi - palvelukokonaisuuden ja työkalujen esittely Yhteentoimiva.suomi.fi - palvelukokonaisuuden ja työkalujen esittely Petri Tenhunen 6.3.2019 Esityksen sisältö Lyhyt oppimäärä Yhteentoimivuus ja semanttinen yhteentoimivuus Yhteentoimivuusalusta Sanastot-työkalu

Lisätiedot

SKOS. Osma Suominen ONKI-hankkeen laajennettu projektiryhmä

SKOS. Osma Suominen ONKI-hankkeen laajennettu projektiryhmä SKOS Osma Suominen 10.9.2013 ONKI-hankkeen laajennettu projektiryhmä Sisällys 1. Mikä SKOS? 2. Miksi SKOS eikä OWL? 3. Haasteita SKOSin käytössä Mikä SKOS? Simple Knowledge Organization System W3C:n standardi

Lisätiedot

4.2 Yhteensopivuus roolimalleihin perustuvassa palvelussa

4.2 Yhteensopivuus roolimalleihin perustuvassa palvelussa 4. Roolimallipalvelu 4.1 Tiedot palvelusta Palvelun nimi: Palvelun versio 01.01.00 Toteuttaa palvelun yksilöllistä palvelua (kts. M14.4.42) Roolimallipalvelu (Model role service) MYJ:lle, jotka toteuttavat

Lisätiedot

W3C-teknologiat ja yhteensopivuus

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

Lisätiedot

Javan perusteita. Janne Käki

Javan perusteita. Janne Käki Javan perusteita Janne Käki 20.9.2006 Muutama perusasia Tietokone tekee juuri (ja vain) sen, mitä käsketään. Tietokone ymmärtää vain syntaksia (sanojen kirjoitusasua), ei semantiikkaa (sanojen merkitystä).

Lisätiedot

Paikannimirekisteri linkitettynä tietona

Paikannimirekisteri linkitettynä tietona Paikannimirekisteri linkitettynä tietona URI-tunnukset paikkatietokohteille, (JHS 193 paikkatiedon yksilöivät tunnisteet) Linkitetty tieto eli webin yleiset teknologiat: RDF, OWL, SPARQL jne. Saavutettavuus

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

Miksi asiasanastot eivät riitä vaan tarvitaan ontologioita?

Miksi asiasanastot eivät riitä vaan tarvitaan ontologioita? Miksi asiasanastot eivät riitä vaan tarvitaan ontologioita? Prof. Eero Hyvönen TKK Viestintätekniikka ja Helsingin yliopisto Semantic Computing Research Group (SeCo) Lähde: E. Hyvönen: Miksi asiasanastot

Lisätiedot

Tenttikysymykset. + UML- kaavioiden mallintamistehtävät

Tenttikysymykset. + UML- kaavioiden mallintamistehtävät Tenttikysymykset 1. Selitä mitä asioita kuuluu tietojärjestelmän käsitteeseen. 2. Selitä kapseloinnin ja tiedon suojauksen periaatteet oliolähestymistavassa ja mitä hyötyä näistä periaatteista on. 3. Selitä

Lisätiedot

Yhteentoimivuutta edistävien työkalujen kehittäminen

Yhteentoimivuutta edistävien työkalujen kehittäminen Yhteentoimivuutta edistävien työkalujen kehittäminen Semantiikkaa organisaatioiden välisen tiedonvaihdon helpottamiseksi Mikael af Hällström, Verohallinto Esityksen sisältö Taustatekijöitä (OKM:n hallinnonala,

Lisätiedot

Paikkatiedon mallinnus Dokumentoinnin ymmärtäminen. Lassi Lehto

Paikkatiedon mallinnus Dokumentoinnin ymmärtäminen. Lassi Lehto Paikkatiedon mallinnus Dokumentoinnin ymmärtäminen Lassi Lehto INSPIRE-seminaari 23.08.2012 Sisältö Tietotuoteselosteen rakenne (ISO 19131) Unified Modeling Language (UML) Luokkakaaviotekniikan perusteet

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

9. Periytyminen Javassa 9.1

9. Periytyminen Javassa 9.1 9. Periytyminen Javassa 9.1 Sisällys Periytymismekanismi Java-kielessä. Piirteiden näkyvyys periytymisessä. Ilmentymämetodien korvaaminen. Luokkametodien peittäminen. Super-attribuutti. Override-annotaatio.

Lisätiedot

Sisällys. 9. Periytyminen Javassa. Periytymismekanismi Java-kielessä. Periytymismekanismi Java-kielessä

Sisällys. 9. Periytyminen Javassa. Periytymismekanismi Java-kielessä. Periytymismekanismi Java-kielessä Sisällys 9. Periytyminen Javassa Periytymismekanismi Java-kielessä. Piirteiden näkyvyys periytymisessä. Metodien korvaaminen ja super-attribuutti. Attribuutin peittäminen periytymisen kautta. Rakentajat

Lisätiedot

Semanttinen web: ontologioiden esittäminen ja oppiminen

Semanttinen web: ontologioiden esittäminen ja oppiminen hyväksymispäivä arvosana arvostelija Semanttinen web: ontologioiden esittäminen ja oppiminen Lilli Nevanlinna Helsinki 4.11.2010 HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Sisältö i 1 Johdanto

Lisätiedot

Sisällys. JAVA-OHJELMOINTI Osa 7: Abstrakti luokka ja rajapinta. Abstraktin luokan idea. Abstrakti luokka ja metodi. Esimerkki

Sisällys. JAVA-OHJELMOINTI Osa 7: Abstrakti luokka ja rajapinta. Abstraktin luokan idea. Abstrakti luokka ja metodi. Esimerkki Sisällys JAVA-OHJELMOINTI Osa 7: Abstrakti luokka ja rajapinta Abstrakti luokka ja metodi Rajapintamäärittely (interface) Eero Hyvönen Tietojenkäsittelytieteen laitos Helsingin yliopisto 13.10.2000 E.

Lisätiedot

Hahmon etsiminen syotteesta (johdatteleva esimerkki)

Hahmon etsiminen syotteesta (johdatteleva esimerkki) Hahmon etsiminen syotteesta (johdatteleva esimerkki) Unix-komennolla grep hahmo [ tiedosto ] voidaan etsia hahmon esiintymia tiedostosta (tai syotevirrasta): $ grep Kisaveikot SM-tulokset.txt $ ps aux

Lisätiedot

Matemaatiikan tukikurssi

Matemaatiikan tukikurssi Matemaatiikan tukikurssi Kurssikerta 1 1 Funktiot Funktion määritelmä Funktio on sääntö, joka liittää kahden eri joukon alkioita toisiinsa. Ollakseen funktio tämän säännön on liitettävä jokaiseen lähtöjoukon

Lisätiedot

Avoin data Avoin kirjasto Kuvailupäivät 20.3.2013

Avoin data Avoin kirjasto Kuvailupäivät 20.3.2013 Avoin data Avoin kirjasto Kuvailupäivät 20.3.2013 Aineistojen kuvailun uudistaminen laajemmassa yhteydessä Tiedon tallennuksen ja haun uusi ekosysteemi Kansalliskirjaston hankkeet: RDA, UKJ, Melinda, Finna,

Lisätiedot

TIEDONHAKU INTERNETISTÄ

TIEDONHAKU INTERNETISTÄ TIEDONHAKU INTERNETISTÄ Internetistä löytyy hyvin paljon tietoa. Tietoa ei ole mitenkään järjestetty, joten tiedonhaku voi olla hankalaa. Tieto myös muuttuu jatkuvasti. Tänään tehty tiedonhaku ei anna

Lisätiedot

Älykkäät keltaiset sivut ( Intelligent Web Services ( IWebS ) )

Älykkäät keltaiset sivut ( Intelligent Web Services ( IWebS ) ) Älykkäät keltaiset sivut ( Intelligent Web Services ( IWebS ) ) Ongelma Palveluntarpeet Palvelut t1 p1 t3 tk t4 t2 p3 p4 pn p2 p6 p5 1 Palveluntarpeet Ongelma IWebS Palvelut t1 täsmäytys1 p1 t2 täsmäytys2

Lisätiedot

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

Rakenteisen oppimateriaalin tuottaminen verkossa esimerkki Rhaptos. Antti Auer Koordinaattori, HT Jyväskylän yliopisto Virtuaaliyliopistohanke Rakenteisen oppimateriaalin tuottaminen verkossa esimerkki Rhaptos Antti Auer Koordinaattori, HT Jyväskylän yliopisto Virtuaaliyliopistohanke Rakenteisuus kahdella tasolla Oppimisaihiot ( Learning Objects

Lisätiedot

2. Olio-ohjelmoinnin perusteita 2.1

2. Olio-ohjelmoinnin perusteita 2.1 2. Olio-ohjelmoinnin perusteita 2.1 Sisällys Luokat ja oliot. Käsitteet, luokat ja oliot. Attribuutit, olion tila ja identiteetti. Metodit ja viestit. 2.2 Luokat ja oliot Olio-ohjelmoinnin keskeisimpiä

Lisätiedot

Matematiikan tukikurssi, kurssikerta 2

Matematiikan tukikurssi, kurssikerta 2 Matematiikan tukikurssi kurssikerta 1 Relaatioista Oletetaan kaksi alkiota a ja b. Näistä kumpikin kuuluu johonkin tiettyyn joukkoon mahdollisesti ne kuuluvat eri joukkoihin; merkitään a A ja b B. Voidaan

Lisätiedot

Yhteentoimivuusvälineistö

Yhteentoimivuusvälineistö Yhteentoimivuusvälineistö Yhteinen tiedon hallinta (YTI) hanke V 1.0, 5.9.2017 Päivittyvä Miksi yhteentoimivuusvälineistöä tarvitaan? Ongelmana on kielen moniselitteisyys Tavallisessa kielenkäytössä emme

Lisätiedot

Uusi käsitemalli IFLA LRM

Uusi käsitemalli IFLA LRM Uusi käsitemalli IFLA LRM Tapani Moisio Kuvailun tiedotuspäivä 27.9.2017 IFLA Library Reference Model IFLAn standardi ja käsitemalli, vahvistettu elokuussa 2017 Kolmen erillisinä kehitetyn IFLAn käsitemallin

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

Visio tulevaisuuden Webistä. Semantic Web - kohti uutta merkitysten Internetiä. Ratkaisumalli 1: Älykkäämmät sovellukset. Vision este Webissä

Visio tulevaisuuden Webistä. Semantic Web - kohti uutta merkitysten Internetiä. Ratkaisumalli 1: Älykkäämmät sovellukset. Vision este Webissä Semantic Web - kohti uutta merkitysten Internetiä Prof. Eero Hyvönen Helsingin yliopisto Helsinki Institute for Information Technology 1-marras-01 1 Visio tulevaisuuden Webistä Mitä hyötyä on Webistä?

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

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

Suvi Junes Tietohallinto / Opetusteknologiapalvelut 2012

Suvi Junes Tietohallinto / Opetusteknologiapalvelut 2012 Aineistot Uudet ominaisuudet: - Ei Tiedostot-kohtaa alueen sisällä, vaan tiedostonvalitsin, jolla tiedostot tuodaan alueelle siihen kohtaan missä ne näytetään - Firefox-selaimella voi tiedostot siirtää

Lisätiedot

MALog-projekti kehittää oppimateriaalia matemaattiseen logiikkaan. Insinöörikoulutuksen foorumi

MALog-projekti kehittää oppimateriaalia matemaattiseen logiikkaan. Insinöörikoulutuksen foorumi MALog-projekti kehittää oppimateriaalia matemaattiseen logiikkaan Insinöörikoulutuksen foorumi 5.10.2012 Taustaa - MALog Huoli (matematiikan ja) matemaattisen logiikan osaamisen tasosta Oppimateriaalien

Lisätiedot

Tähtitieteen käytännön menetelmiä Kevät 2009 Luento 4: Ohjelmointi, skriptaus ja Python

Tähtitieteen käytännön menetelmiä Kevät 2009 Luento 4: Ohjelmointi, skriptaus ja Python Tähtitieteen käytännön menetelmiä Kevät 2009 Luento 4: Ohjelmointi, skriptaus ja Python 31. tammikuuta 2009 Ohjelmointi Perusteet Pythonin alkeet Esittely Esimerkkejä Muuttujat Peruskäsitteitä Käsittely

Lisätiedot

Sisällys. 18. Abstraktit tietotyypit. Johdanto. Johdanto

Sisällys. 18. Abstraktit tietotyypit. Johdanto. Johdanto Sisällys 18. bstraktit tietotyypit Johdanto abstrakteihin tietotyyppeihin. Pino ja jono. Linkitetty lista. Pino linkitetyllä listalla toteutettuna. 18.1 18.2 Johdanto Javan omat tietotyypit ovat jo tuttuja:

Lisätiedot

ARVO - verkkomateriaalien arviointiin

ARVO - verkkomateriaalien arviointiin ARVO - verkkomateriaalien arviointiin Arvioitava kohde: Jenni Rikala: Aloittavan yrityksen suunnittelu, Arvioija: Heli Viinikainen, Arviointipäivämäärä: 12.3.2010 Osa-alue 1/8: Informaation esitystapa

Lisätiedot

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

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

Lisätiedot

W3C ja Web-teknologiat

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

Lisätiedot

Seitsemän syytä semanttiseen webiin. Eero Hyvönen Aalto-yliopisto ja HY Semanttisen laskennan tutkimusryhmä (SeCo)

Seitsemän syytä semanttiseen webiin. Eero Hyvönen Aalto-yliopisto ja HY Semanttisen laskennan tutkimusryhmä (SeCo) Seitsemän syytä semanttiseen webiin Eero Hyvönen Aalto-yliopisto ja HY Semanttisen laskennan tutkimusryhmä (SeCo) 1 Sisältö WWW tänään (30 min) Palvelut ja tiedonhaku: ongelmia Tiedon esitys: merkkauskielet

Lisätiedot

Rekursiolause. Laskennan teorian opintopiiri. Sebastian Björkqvist. 23. helmikuuta Tiivistelmä

Rekursiolause. Laskennan teorian opintopiiri. Sebastian Björkqvist. 23. helmikuuta Tiivistelmä Rekursiolause Laskennan teorian opintopiiri Sebastian Björkqvist 23. helmikuuta 2014 Tiivistelmä Työssä käydään läpi itsereplikoituvien ohjelmien toimintaa sekä esitetään ja todistetaan rekursiolause,

Lisätiedot

Suvi Junes Tietohallinto / Opetusteknologiapalvelut 2012

Suvi Junes Tietohallinto / Opetusteknologiapalvelut 2012 Tiedostot Uudet ominaisuudet: - Ei Tiedostot-kohtaa alueen sisällä, vaan tiedostonvalitsin, jolla tiedostot tuodaan alueelle siihen kohtaan missä ne näytetään - Firefox-selaimella voi työpöydältä raahata

Lisätiedot

CIRI Ontologiaperustainen tiedonhakuliittymä

CIRI Ontologiaperustainen tiedonhakuliittymä CIRI Ontologiaperustainen tiedonhakuliittymä Eija Airio, Kalervo Järvelin, Sari Suomela, Pirkko Saatsi ja Jaana Kekäläinen Tampereen yliopisto Informaatiotutkimuksen laitos Ontologian kolmitasomalli kehitetty

Lisätiedot

Yleinen suomalainen ontologia YSO

Yleinen suomalainen ontologia YSO Yleinen suomalainen ontologia YSO Katri Seppälä Semanttisen laskennan tutkimusryhmä (SeCo) Teknillinen korkeakoulu, mediatekniikan laitos; Helsingin yliopisto, tietojenkäsittelytieteen laitos; Sanastokeskus

Lisätiedot

Suvi Junes Tietohallinto / Opetusteknologiapalvelut 2013

Suvi Junes Tietohallinto / Opetusteknologiapalvelut 2013 Aineistot Kun laitat Muokkaustilan päälle, näet jokaisessa osiossa Lisää aineisto-valikon tai Add an activity or resource valikon (Asetukset lohko Activity chooser on toiminnon ollessa päällä). Valitse

Lisätiedot

Sisällönkuvailun tulevaisuus: YSA vai YSO?

Sisällönkuvailun tulevaisuus: YSA vai YSO? Sisällönkuvailun tulevaisuus: YSA vai YSO? Eeva Kärki Kansalliskirjasto 22.1.2009 YSA YSO YSA YSO: eroja Selvitettävää Osoitteita Agenda 1 Tesaurukset ja ontologiat molemmat ovat käsitejärjestelmän kuvauksia

Lisätiedot

TIEA341 Funktio-ohjelmointi 1, kevät 2008

TIEA341 Funktio-ohjelmointi 1, kevät 2008 TIEA34 Funktio-ohjelmointi, kevät 2008 Luento 3 Antti-Juhani Kaijanaho Jyväskylän yliopisto Tietotekniikan laitos 2. tammikuuta 2008 Ydin-Haskell: Syntaksi Lausekkeita (e) ovat: nimettömät funktiot: \x

Lisätiedot

ONKI SKOS Sanastojen ja ontologioiden julkaiseminen ja käyttö Asiasanaston muuntaminen SKOS muotoon: case YSA

ONKI SKOS Sanastojen ja ontologioiden julkaiseminen ja käyttö Asiasanaston muuntaminen SKOS muotoon: case YSA ONKI SKOS Sanastojen ja ontologioiden julkaiseminen ja käyttö Asiasanaston muuntaminen SKOS muotoon: case YSA ONKI julkistustilaisuus 12.9.2008 Jouni Tuominen, Matias Frosterus Semantic Computing Research

Lisätiedot

Pythonin alkeet Syksy 2010 Pythonin perusteet: Ohjelmointi, skriptaus ja Python

Pythonin alkeet Syksy 2010 Pythonin perusteet: Ohjelmointi, skriptaus ja Python Pythonin alkeet Syksy 2010 Pythonin perusteet: Ohjelmointi, skriptaus ja Python 8. marraskuuta 2010 Ohjelmointi Perusteet Peruskäsitteitä Olio-ohjelmointi Pythonin alkeet Esittely Esimerkkejä Muuttujat

Lisätiedot

Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op Rajapinnat ja sisäluokat

Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op Rajapinnat ja sisäluokat Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op Rajapinnat ja sisäluokat Rajapinnat Java-kieli ei tue luokkien moniperintää. Jokaisella luokalla voi olla vain yksi välitön yliluokka. Toisinaan olisi

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

Järjestelmäarkkitehtuuri (TK081702) Web Services. Web Services

Järjestelmäarkkitehtuuri (TK081702) Web Services. Web Services Järjestelmäarkkitehtuuri (TK081702) Standardoidutu tapa integroida sovelluksia Internetin kautta avointen protokollien ja rajapintojen avulla. tekniikka mahdollista ITjärjestelmien liittämiseen yrityskumppaneiden

Lisätiedot

15. Ohjelmoinnin tekniikkaa 15.1

15. Ohjelmoinnin tekniikkaa 15.1 15. Ohjelmoinnin tekniikkaa 15.1 Sisällys For-each-rakenne. Lueteltu tyyppi enum. Override-annotaatio. Geneerinen ohjelmointi. 15.2 For-each-rakenne For-rakenteen variaatio taulukoiden ja muiden kokoelmien

Lisätiedot

Semantic Web Sisältötuotannon ja palveluiden tulevaisuus

Semantic Web Sisältötuotannon ja palveluiden tulevaisuus Semantic Web Sisältötuotannon ja palveluiden tulevaisuus Prof. Eero Hyvönen Helsingin yliopisto ja Helsinki Institute for Information Technology (HIIT) Semantic Computing Research Group http://cs.helsinki.fi/group/seco/

Lisätiedot

tään painetussa ja käsin kirjoitetussa materiaalissa usein pienillä kreikkalaisilla

tään painetussa ja käsin kirjoitetussa materiaalissa usein pienillä kreikkalaisilla 2.5. YDIN-HASKELL 19 tään painetussa ja käsin kirjoitetussa materiaalissa usein pienillä kreikkalaisilla kirjaimilla. Jos Γ ja ovat tyyppilausekkeita, niin Γ on tyyppilauseke. Nuoli kirjoitetaan koneella

Lisätiedot

KIELENOPPIJOITA TIEDONHANKINTA KESKIÖSSÄ KUUNTELEMALLA OPPIJA (AUDITIIVINEN) KIELEN KÄYTTÖ, VUOROVAIKUTUS NÄKEMÄLLÄ

KIELENOPPIJOITA TIEDONHANKINTA KESKIÖSSÄ KUUNTELEMALLA OPPIJA (AUDITIIVINEN) KIELEN KÄYTTÖ, VUOROVAIKUTUS NÄKEMÄLLÄ KIELENOPPIJOITA KIELEN KÄYTTÖ, VUOROVAIKUTUS TIEDONHANKINTA KESKIÖSSÄ KUUNTELEMALLA OPPIJA (AUDITIIVINEN) TEKEMÄLLÄ OPPIJA (KINESTEETTINEN) LUOVA KIELENKÄYTTÄJÄ HOLISTINEN OPPIJA (KOKONAISUUDET TÄRKEITÄ)

Lisätiedot

TIE Principles of Programming Languages CEYLON

TIE Principles of Programming Languages CEYLON TIE-20306 Principles of Programming Languages CEYLON SISÄLLYSLUETTELO 1. YLEISTIETOA KIELESTÄ JA SEN KEHITTÄMISESTÄ... 1 2. CEYLONIN OMINAISUUKSIA... 2 2.1 Modulaarisuus... 2 2.2 Tyypit... 2 2.3 Muita

Lisätiedot

Epätäsmällisen tiedon esittäminen semanttisen webin ontologioissa

Epätäsmällisen tiedon esittäminen semanttisen webin ontologioissa Epätäsmällisen tiedon esittäminen semanttisen webin ontologioissa FinnOnto, 16.11.2005 Markus Holi (markus.holi@tkk.fi) Semantic Computing Research Group http://www.seco.tkk.fi/ UNIVERSITY OF HELSINKI

Lisätiedot

Action Request System

Action Request System Action Request System Manu Karjalainen Ohjelmistotuotantovälineet seminaari HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos 25.10.2000 Action Request System (ARS) Manu Karjalainen Ohjelmistotuotantovälineet

Lisätiedot

W3C ja Web-teknologiat

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

Lisätiedot

Valtionhallinnon arkkitehtuurin kehittäminen

Valtionhallinnon arkkitehtuurin kehittäminen arkkitehtuurin kehittäminen Kehittämisohjelman esittely RASKE2-seminaari 16.5.2006 neuvotteleva virkamies Aki Siponen Valtion IT-toiminnan johtamisyksikkö arkkitehtuurin kehittäminen Arkkitehtuurista ja

Lisätiedot

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

Semanttinen Web. Ossi Nykänen. Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), W3C Suomen toimisto Semanttinen Web Ossi Nykänen Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), W3C Suomen toimisto Esipuhe Semanttinen Web (SW) on laaja W3C:n visio ja hanke (Webin) yhteensopivan

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

hyvä osaaminen. osaamisensa tunnistamista kuvaamaan omaa osaamistaan

hyvä osaaminen. osaamisensa tunnistamista kuvaamaan omaa osaamistaan MERKITYS, ARVOT JA ASENTEET FYSIIKKA 8 T2 Oppilas asettaa itselleen tavoitteita sekä työskentelee pitkäjänteisesti. Oppilas harjoittelee kuvaamaan omaa osaamistaan. T3 Oppilas ymmärtää lämpöilmiöiden tuntemisen

Lisätiedot

2. Olio-ohjelmoinnin perusteita 2.1

2. Olio-ohjelmoinnin perusteita 2.1 2. Olio-ohjelmoinnin perusteita 2.1 Sisällys Esitellään peruskäsitteitä yleisellä tasolla: Luokat ja oliot. Käsitteet, luokat ja oliot. Attribuutit, olion tila ja identiteetti. Metodit ja viestit. Olioperustainen

Lisätiedot

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

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

Lisätiedot

Matematiikan tukikurssi

Matematiikan tukikurssi Matematiikan tukikurssi Kurssikerta 1 Määrittelyjoukoista Tarkastellaan funktiota, jonka määrittelevä yhtälö on f(x) = x. Jos funktion lähtöjoukoksi määrittelee vaikkapa suljetun välin [0, 1], on funktio

Lisätiedot

RDF-TIETOMALLI TOIMINTAPROSESSIN TIEDONHALLINNAN TUKENA

RDF-TIETOMALLI TOIMINTAPROSESSIN TIEDONHALLINNAN TUKENA Maiju Virtanen RDF-TIETOMALLI TOIMINTAPROSESSIN TIEDONHALLINNAN TUKENA Esimerkkinä suomalainen lainsäädäntöprosessi Tietojärjestelmätieteen pro gradu -tutkielma 08.10.2004 Jyväskylän yliopisto Tietojenkäsittelytieteen

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

18. Abstraktit tietotyypit 18.1

18. Abstraktit tietotyypit 18.1 18. Abstraktit tietotyypit 18.1 Sisällys Johdanto abstrakteihin tietotyyppeihin. Pino ja jono. Linkitetty lista. Pino linkitetyllä listalla toteutettuna. 18.2 Johdanto Javan omat tietotyypit ovat jo tuttuja:

Lisätiedot

Järjestelmäarkkitehtuuri (TK081702) Järjestelmäarkkitehtuuri. Järjestelmäarkkitehtuuri

Järjestelmäarkkitehtuuri (TK081702) Järjestelmäarkkitehtuuri. Järjestelmäarkkitehtuuri Järjestelmäarkkitehtuuri (TK081702) ja Järjestelmäarkkitehtuuri Sovellukset ovat olemassa Järjestelmien uudistaminen vie yleensä arvioitua enemmän resursseja ja kestää arvioitua kauemmin Migration (Migraatio

Lisätiedot

Office 2013 - ohjelmiston asennusohje

Office 2013 - ohjelmiston asennusohje Office 2013 - ohjelmiston asennusohje Tämän ohjeen kuvakaappaukset on otettu asentaessa ohjelmistoa Windows 7 käyttöjärjestelmää käyttävään koneeseen. Näkymät voivat hieman poiketa, jos sinulla on Windows

Lisätiedot

Kylätietojen täyttöohje. Sisällys

Kylätietojen täyttöohje. Sisällys Kylätietojen täyttöohje Sisällys KIRJAUTUMINEN... 2 KYLÄTIETOJEN MUOKKAUS JA TÄYDENNYS... 4 TIEDOSTOPANKKI... 11 SALASANAN VAIHTO... 12 YHTEENVEDOT TIEDOISTA (kylien posti- ja sähköpostilistat)... 13 PIKAHAKU

Lisätiedot

Semanttinen Web Mitä se on käytännössä?

Semanttinen Web Mitä se on käytännössä? ATK Tietotekniikkaa yliopistoille, Helsingin yliopisto, tietotekniikkaosasto, no. 2/2004, ss. 38-42. Semanttinen Web Mitä se on käytännössä? Eero Hyvönen Helsingin yliopisto, tietojenkäsittelytieteen laitos

Lisätiedot