XML sekä dokumentin että tietokannan formaatti

Samankaltaiset tiedostot
XQuery tietokannan kyselykielenä

Hohde Consulting 2004

Ohjelmistojen mallintamisen ja tietokantojen perusteiden yhteys

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

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

XML johdanto, uusimmat standardit ja kehitys

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

Proseduurit, funktiot ja herättimet - esimerkkeinä Oracle, SQL Server, MySQL ja OCELOT. Jouni Huotari S2008

PROSEDUURIT, FUNKTIOT JA HERÄTTIMET - ESIMERKKEINÄ ORACLE, SQL SERVER, MYSQL JA OCELOT JOUNI HUOTARI K2009

Web-teknologiat. XML-datan kysely Topi Sarkkinen

Digitaalisen median tekniikat. JSP ja XML Harri Laine 1

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

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

W3C, Web-teknologiat ja XML

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

3 Verkkosaavutettavuuden tekniset perusteet

AJAX-konsepti AJAX. Asynkronisuus. Nykyisten web-ohjelmien ongelmia. Asynchronous JavaScript And XML

1. a) Laadi suoraviivaisesti kyselyä vastaava optimoimaton kyselypuu.

Digitaalisen median tekniikat. JSP ja XML

Tiedonlouhinta rakenteisista dokumenteista (seminaarityö)

Tietojärjestelmä tuotantoympäristössä. Sovellusohjelmat Helsingin ammattikorkeakoulu Stadia / Tekniikka ja liikenne Vesa Ollikainen

HAKURATKAISUN ANATOMIA - KURKISTUS PELLIN ALLE

Tietokannan hallinta. Kevät 2004 Jan Lindström R&G Chapter 1

Projektinhallintaa paikkatiedon avulla

Tietokantajärjestelmien tulevaisuuden haasteet. Jan Lindström

Interfacing Product Data Management System

Johdatus XML teknologioihin

Opettajana Mika Sorsa, HAMK:n ammatillisen opettajakoulutuksen opetusharjoittelija

M. Merikanto 2012 XML. Merkkauskieli, osa 2

Tiedonhallinnan perusteet. Viikko 1 Jukka Lähetkangas

Kurssin aloitus. AS XML-kuvauskielten perusteet Janne Kalliola

XML-evoluutio ja kestävä kehitys

Heikki Helin Metatiedot ja tiedostomuodot

Tietokannan hallintajärjestelmän (DBMS) palvelut ja rakenne

Ylläpitodokumentti. Ohjelmistotuotantoprojektin tietojärjestelmä OhtuTie

Hohde Consulting 2004

Written by Administrator Monday, 05 September :14 - Last Updated Thursday, 23 February :36

Extensible Stylesheet Language (XSL)

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

Järjestelmäarkkitehtuuri (TK081702)

Yhteensopiva ja stabiili. Käsitteellistää suunnittelun. Parempi kuin koskaan aiemmin. Yksityiskohtien tarkka kuvaus. Saumaton kommunikaatio

Paikkatiedot ja Web-standardit

XML ja Web Services update

Action Request System

Jouni Huotari & Ari Hovi. Käsitemallinnuksesta relaatiokantaan KÄSITEMALLI. LOOGINEN MALLI: tietomalli valittu. FYYSINEN MALLI: DBMS valittu

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

Sosiaalihuollon asiakasasiakirjojen tietomallinnus Tietomallit teknisen asiakirjamäärittelyn näkökulmasta

W3C-teknologiat ja yhteensopivuus

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

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

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

Tietokannanhoitaja DBA (Database Administrator) ja tietokannan hallinta

TIEDONHALLINTA - SYKSY Luento 11. Hannu Markkanen /10/12 Helsinki Metropolia University of Applied Sciences

HOJ Haja-aiheita. Ville Leppänen. HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.1/10

XML / DTD / FOP -opas Internal

XSL Formatting Objects

2. PEHMEÄ XHTML XRAJAHTML

Helsingin yliopisto/tktl DO Tietokantojen perusteet, s 2000 Johdanto & yleistä Harri Laine 1. Tietokanta. Tiedosto

10 Nykyaikainen WWW-arkkitehtuuri

POLKU LUOKKAKAAVIOISTA TAULUJEN TOTEUTUKSEEN

Ohjelmistoarkkitehtuurit. Kevät

JWT 2016 luento 11. to klo Aulikki Hyrskykari. PinniB Aulikki Hyrskykari

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

Mendeley-esittely. Turun yliopiston kirjasto Syksy 2016

Järjestelmäarkkitehtuuri (TK081702) SOA, Service-oriented architecture SOA,

Luento 7: XML-ohjelmointirajapinnat

Sovelluskehitys JDeveloper 10g ja Oracle ADF -välineillä. OUGF Kevätseminaari Jarkko Happonen, Eventizer Oy

HELIA 1 (16) Outi Virkki Tietokantasuunnittelu

KANSALLINEN MAASTOTIETOKANTA

Amazon Web Services (AWS) on varmaankin maailman suosituin IaaS-tarjoaja. Lisäksi se tarjoaa erilaisia PaaS-kategoriaan kuuluvia palveluita.

ELM GROUP 04. Teemu Laakso Henrik Talarmo

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

Ctl160 Tekstikorpusten tietojenkäsittely p.1/15

Tikon Ostolaskujenkäsittely/Web-myyntilaskutus versio 6.3.0

Tietokantakurssit / TKTL

HELIA 1 (11) Outi Virkki Tiedonhallinta

jotakin käyttötarkoitusta varten laadittu kokoelma toisiinsa liittyviä säilytettäviä tietoja

TIETOKANNAT JOHDANTO

Sosiaalihuollon asiakirjastandardi kehittyy. Konstantin Hyppönen Erikoissuunnittelija Tietojenkäsittelytieteen laitos Kuopion yliopisto

Uuden sukupolven potilaskertomusjärjestelmä SnowFlake EHR. Antero Ensio konsultti Ensitieto Oy

Tikon Ostolaskujenkäsittely/Web-myyntilaskutus versio 6.4.0

Luento 1: Johdanto merkintäkieliin

Johdatus rakenteisiin dokumentteihin

Helsingin yliopisto/tktl XML-metakieli k2013 CSS XML-dokumenttien käsittely. XML-dokumenttien käsittely

Varmennepalvelu Rajapintakuvaus Kansallisen tulorekisterin perustamishanke


Web sovelluksen kehittäminen sähkönjakeluverkon suojareleisiin

Interaktiivisten järjestelmien arkkitehtuuriratkaisu, jolla käyttöliittymä erotetaan sovelluslogiikasta.

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

XML - mahdollisuudet ja kehitys

Digitaalisen median tekniikat. Luento 4: JavaScript

Ylläpito-ohje. Matematiikan oppifoorumi. Carl Johansson Jukka Kariola Outi Marttila Helena Venäläinen Sampsa Virtanen. Ohjaaja.

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

TIEDEJUTTUKURSSI FM VILLE SALMINEN

XML-kyselykielistä loppukäyttäjän näkökulmasta. Minna Lehtonen

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

Digitaalisen median tekniikat Harri Laine 1

HELIA 1 (15) Outi Virkki Tiedonhallinta

Integraatioratkaisu joukkoviestintäverkkojen esittämiseen paikkatietojärjestelmässä

Ylläpitodokumentti. Oppimistavoitteiden hallintajärjestelmä harri

Transkriptio:

XML sekä dokumentin että tietokannan formaatti Miro Lehtonen 24.4.2007 OUGF-kevätseminaari Tietojenkäsittelytieteen laitos Sisältö Monikäyttöinen XML XML tekstin esitysmuotona XML datan tallennusmuotona Muut XML-dokumentit XML-tietokannat Relaatiotietokantojen XML-tuki Natiivit XML-tietokannat Oracle 9i, 10g Miro Lehtonen, XML - sekä dokumentin että tietokannan formaatti 24.4.2007 2 1

Käyttötapauksia Dokumenttien hallinta, julkaisuympäristöt Yhdestä lähdekoodista monenlaista luettavaa Datan organisointi, metadata Itsensä kuvaavat dokumentit Sovellusten välinen tiedonvaihto Avoimen standardin edut Riippumattomuus käyttöjärjestelmistä, ohjelmointikielistä Tutkimus Miro Lehtonen, XML - sekä dokumentin että tietokannan formaatti 24.4.2007 3 Tekstidokumentin XML (1) VV! VW!%"Qr s h pr Avtˆ r h qd r ƒ r h v VW! LS! UHI ULG iyv"( W\SH iy!uhiyr UHI!h q UHI ULG iyv"(! W\SH iy!!uhi! ˆ h v r ur ƒr s h pr h v vp s ˆ u rr r ƒr v r LS! VV! VW!%" 8yh vsvr 6 puv rp ˆ rvw! Miro Lehtonen, XML - sekä dokumentin että tietokannan formaatti 24.4.2007 4 2

Tekstidokumentin XML (2) VHF! VW! ILJ! DUW ILOH D[JLIZ K WZ WK! ILJ! LS! E!.RQUDG=XVHE!FUHDWRULQRIWKHILUVW IXOO\ DXWRPDWHGSURJUDPFRQWUROOHGDQGIUHHO\ SURJUDPPDEOH FRPSXWHU IRUELQDU\ IORDWLQJSRLQW FDOFXODWLRQVDQGODWHURI WKHEDVLF SURJUDPPLQJ V\VWHP LW!3ODQNDON¾OLW!GLHG LQ +¾QIHOG*HUPDQ\ RQ'HFHPEHU +HZDV LS! Miro Lehtonen, XML - sekä dokumentin että tietokannan formaatti 24.4.2007 5 XML tekstidokumenteissa Elementit dokumentin rakenteelle (sec, title, para, ) Elementit tekstin muotoilua varten (bold, italics, ) Tageja tekstin seassa (mixed content) Rakenne kuin hypertekstidokumentissa Sisällön järjestyksellä on väliä Viittauksia ulkoisiin tiedostoihin Linkkejä toisiin dokumentteihin Miro Lehtonen, XML - sekä dokumentin että tietokannan formaatti 24.4.2007 6 3

Tekstidokumenttien julkaisu Useita julkaisukanavia Tyypillisiä julkaisuformaatteja pdf, html, plain text Muotoilu määritellään erillisissä tyylitiedostoissa Koostetut dokumentit Samasta dokumentaatiosta erisisältöisiä versioita Muotoilu määritelty valmiissa asiakirjapohjissa (template) Myös hakurajapintoja Relevantin sisällön haku käyttäjälle Parhaan aloituskohdan löytäminen Miro Lehtonen, XML - sekä dokumentin että tietokannan formaatti 24.4.2007 7 XML-data (1),QYRLFH LQYRLFH'DWH &!VKLS'DWH!! VKLS0HWKRG VTQT! &XVWRPHU 1DPH C r ETv ƒ $GGUHVV &#!@ r t rr Ur hpr&lw\ Tƒ v tsvryq 6WDWH F`SRVWDO&RGH!"#$! /LQH,WHP 4XDQWLW\!3ULFH!! 3DUW &RORU 7yˆr6L]H "v pu1dph B r! /LQH,WHP! /LQH,WHP 4XDQWLW\!3ULFH! 3DUW &RORU 7yˆr 6L]H!v pu1dph Tƒ pxr! /LQH,WHP!,QYRLFH! Miro Lehtonen, XML - sekä dokumentin että tietokannan formaatti 24.4.2007 8 4

XML-data (2) $LUSRUW DLU,G GCS! QDPH!G q Crh u QDPH! WD[! WD[! $LUSRUW! $LUSRUW DLU,G asc! QDPH!aˆ vpuqdph! WD[! $WD[! $LUSRUW! $LUSRUW DLU,G Q6S! QDPH!Qh v QDPH! WD[! WD[! $LUSRUW! Miro Lehtonen, XML - sekä dokumentin että tietokannan formaatti 24.4.2007 9 XML datan esitysmuotona Elementeillä ja attribuuteilla annetaan datalle merkitys Myös attribuuteissa sisältöä Elementtien järjestys lähes yhdentekevää Tiedon esitystapa mallinnetaan erikseen Sisältö suoraan tallennettavissa relaatiotietokantaan Esim. elementtejä ja attribuutteja vastaaviin tauluihin ja sarakkeisiin Miro Lehtonen, XML - sekä dokumentin että tietokannan formaatti 24.4.2007 10 5

XML-datan kulutus Ensisijaisesti kyselyrajapinnat Käyttäjille sovellusten tarjoamat käyttöliittymät Sovellusten kyselyt ja päivitykset kyselykielen avulla (XPath, XQuery) Asiakirjapohjiin perustuva julkaisu Räätälöidyt, personoidut dokumentit Dynaamiset, automaattisesti päivittyvät web-sivut Toteutus XSLT-muunnoksilla Miro Lehtonen, XML - sekä dokumentin että tietokannan formaatti 24.4.2007 11 Sovellustenvälinen XML: SMIL <seq> <img id="image_1" style="width:0; height:0; src="guitar_2g.jpg" dur="0.01s" /> <audio id="audio_22" clipbegin="02.00s" dur="0.01s" </seq> src= sound_195.mp3" /> <par id="start_par" begin="1" > <transitionfilter targetelement="text1" from="0" to="1" type="fade" mode="in" begin="text1.begin" dur="2" /> <animate targetelement="c1_s4" attributename="left" from="840" to="740" begin="19.50s" dur="00.50s" fill="freeze" /> <animatecolor targetelement="c1_s4" attributename="backgroundcolor" from="red" to="yellow" begin="19.50s" dur="00.50s" /> Miro Lehtonen, XML - sekä dokumentin että tietokannan formaatti 24.4.2007 12 6

XML yhteisenä rajapintana Sovellusohjelman tuottama ja kuluttama XML XML-rakenteilla annetaan sovellukselle tulkintaohjeet Ei tarkoitettu ihmisen luettavaksi Usein kertakäyttöisiä dokumentteja Pääkäyttötarkoituksena tiedonvälitys Ei haku- eikä kyselymahdollisuutta Miro Lehtonen, XML - sekä dokumentin että tietokannan formaatti 24.4.2007 13 Muut XML-dokumentit XML yleisenä määrittelykielenä Scalable Vector Graphics (SVG) MathML Standard Music Description Language (SMDL) jne Samasta dokumentista voi löytää erityyppistä XML:ää Esim. artikkelin teksti + lähdeluettelo Web-palvelun kuvaus + toiminta XHTML + SVG + MathML Miro Lehtonen, XML - sekä dokumentin että tietokannan formaatti 24.4.2007 14 7

Relaatiotietokannan XML Mitä lisäarvoa saadaan? Tehokas indeksointi: tehokkaat haut ja kyselyt Transaktion hallinta Varmuus, virhetilanteista toipuminen Mitä menetetään? Dokumentin järjestys, rekursiiviset skeemat, koodaustieto Avoimen standardin edut Minkälaista XML:ää siis pidetään relaatiotietokannassa? Yleensä dataa, jolla on säännöllinen rakenne Natiiviin XML-tietokantaan sopii kaikenlainen XML Miro Lehtonen, XML - sekä dokumentin että tietokannan formaatti 24.4.2007 15 Erilaiset XML-tietokannat XML:ää tukeva relaatiotietokanta XML-dokumenteista taulujen rivejä ja sarakkeita XML-näkymiä relaatiodataan Sisäisesti SQL-kyselyt, XML-laajennoksia Natiivi XML-tietokanta Häviötön XML-dokumenttien tallennus XML-kyselykieli, esim. XQuery XML-palvelin, sisällönhallintajärjestelmä Web-sovelluspalvelimet, XML-tietoiset J2EE-palvelimet XML:n julkaisu Webissä Miro Lehtonen, XML - sekä dokumentin että tietokannan formaatti 24.4.2007 16 8

XML relaatiotietokannassa Relaatiomallin mukainen XML CLOB-sarakkeet XML-sisällölle Eri tauluihin ja sarakkeisiin purettu data, SQL-tietotyypit Natiivi XML-tietotyyppi Kyselykielenä SQL tai SQL/XML Kyselyn tuloksena relaatiomallin mukaisia tauluja Jatkokäsiteltynä myös XML:ää Miro Lehtonen, XML - sekä dokumentin että tietokannan formaatti 24.4.2007 17 Kerrostettu prosessointimalli: Mid-Tier Miro Lehtonen, XML - sekä dokumentin että tietokannan formaatti 24.4.2007 18 9

XML-dokumentin tallennus relaatiokantaan Yhtenä pitkänä merkkijonona (CLOB) Kokonaisena käsiteltävät dokumentit Epäsäännöllinen rakenne Olematon haku- ja päivitystarve vai useampaan tauluun ja sarakkeeseen hajoitettuna? Säännöllinen rakenne Paljon kohdistettuja päivityksiä ja hakuja Alkuperäistä dokumenttia ei tarvitse säilyttää merkki merkiltä Tehokkuus riippuu sisällöstä ja käytöstä Miro Lehtonen, XML - sekä dokumentin että tietokannan formaatti 24.4.2007 19 Natiivit XML-tietokannat Tietokannan sisäinen tietomalli perustuu XML:ään (esim. DOM) Samoin kyselykieli Sopiva erityisesti tekstidokumenteille ja hierarkkisille rakenteille Sisältö ei suoraan jakaudu tauluihin ja sarakkeisiin Alkuperäiset dokumentit palautettavissa Joustavampi ratkaisu kuin relaatiotietokanta Skeemaa ei tarvitse tietää etukäteen Miro Lehtonen, XML - sekä dokumentin että tietokannan formaatti 24.4.2007 20 10

XQuery natiivi kyselykieli W3C-standardi: XML-yhteensopiva tietomalli Kuten SQL relaatiodatalle Dokumenttien rakennemuutokset, uuden rakenteen luominen Deklaratiivinen, sivuvaikutukseton, vahvasti tyypitetty korkean tason funktionaalinen ohjelmointikieli Esim. syötteen tuplaava funktio: declare function local:doubler($x) { $x * 2 } Miro Lehtonen, XML - sekä dokumentin että tietokannan formaatti 24.4.2007 21 XQuery esimerkki: Näytösten puhujat <html><head/><body> { } for $act in doc("hamlet.xml")//act let $speakers := distinct-values($act//speaker) return <span> <h1>{ $act/title/text() }</h1> <ul> { for $speaker in $speakers return <li>{ $speaker }</li> } </ul> </span> </body></html> Miro Lehtonen, XML - sekä dokumentin että tietokannan formaatti 24.4.2007 22 11

Oracle 10g natiivi XML-tietokanta Ensimmäinen kelvollinen toteutus natiivista XMLtietokannasta: Oracle 9i Release 2 XQuery-prosessori sekä tietokannassa (back-end) että erillisenä komponenttina (Mid-Tier) Tietokannassa suuria ja pysyviä datamassoja varten Mid-Tier pienille määrille heterogeenistä dataa Tiedon mallinnus XML- tai SQL-mallin mukaan XQuery näkee XML-näkymiä relaatiodataan SQL näkee XMLType-dataa Miro Lehtonen, XML - sekä dokumentin että tietokannan formaatti 24.4.2007 23 Miro Lehtonen, XML - sekä dokumentin että tietokannan formaatti 24.4.2007 24 12

Miro Lehtonen, XML - sekä dokumentin että tietokannan formaatti 24.4.2007 25 XQuery Oraclen tietokannassa Luonnollisin kyselykieli varastoiduille XML-dokumenteille Relaatiodatan kyselyt XML-näkymien kautta Laajennosfuntio ora:view() Natiivi XMLType suoraan XQueryn näkyvillä Ulkoisten resurssien kysely XQueryn funktioilla Paikallinen tiedostojärjestelmä URI-viittauksilla koko WWW käytössä Miro Lehtonen, XML - sekä dokumentin että tietokannan formaatti 24.4.2007 26 13

Yhteenveto Kaiken sisällön esitysmuodoksi voidaan valita XML Kaikenlainen XML voidaan varastoida XML-tietokantaan Oracle 10g XML-haut eri kielillä: SQL, XPath, XQuery, tekstihaut Haut eri resursseista: tiedostot, relaatiodata, web-palvelut, viestit, WWW Kysymyksiä, kommentteja? Miro Lehtonen, XML - sekä dokumentin että tietokannan formaatti 24.4.2007 27 14