XML

XML KOULUTUSTA VUONNA 2008

Kysy myös tuotekohtaisia koulutuksia, kuten Altova XMLSpy tai Cladonia Exchanger.

Kurssit saatavilla kautta Suomen. Tule ja varaa oma koulutustapahtumasi !
IT-koulutuksen asiantuntijasi, Koulutus- ja konsultointipalvelu KK Mediat

 

Esimerkki case: online luettelo pt.3

XML-kuvaus tietokannan rakenteesta

Tietokannan rakenteen ulossaamiseen XML-datana on olemassa lukuisia työkaluja, joista osa on integroitu suoraan tietokantaratkaisuihin sisäisesti; esim. MS SQL Server ja Oracle sisältävät sisäänrakennetut työkalut/menetelmät. Näiden käyttäminen etenkin isomman mittaluokan ratkaisuissa on erittäin suositeltavaa sillä ne perustuvat esim. tietokantavalmistajien luomille standardeille. Tässä esimerkissä käytämme kuitenkin toista lähestymistapaa ja luomme "oman XML-sovelluksen" tietokannan rakenteen kuvaamiseen.

Ensimmäinen tehtävä uuden XML-sovelluksen / kielen luomisessa on tietenkin miettiä mitkä ovat tarvittavat peruselementit, joiden avulla data voidaan mallintaa. Tässä tapauksessa ratkaisu on hyvin yksinkertaisesti löydettävissä katsomalla tietokannan kuvausta. Peruselementit ovat:

Jokaisella ym. peruselementeistä on tietenkin ominaisuuksia, joista osa on yhteisiä kaikille elementeille, osa ainutlaatuisa. Helpoimmin havaittava yhteinen tekijä on varmaankin nimi; kaikilla näillä elementeillä täytyy olla nimi. Ja koska kyse on tietokannasta, niin vieläpä yksilöllinen sellainen. Etenkin taulukon kentät sisältävät huomattavasti ominaisuuksia, koska niihinhän data varastoidaan yksilöitynä. Alla lyhyt listaus ominaisuuksista, jotka tulee ottaa huomioon tätä nimenomaista XML-sovellusta/kieltä suunnitellessa:

Mikäli tähän asti läpikäytyjen tietojen valossa laaditaan XML-muotoinen kuvaus, olisi lopputulos esimerkiksi:


<?xml version="1.0" encoding="UTF-8" ?> 

<db name="" 
xmlns:xsi="http://www.w3.org/2000/10/XMLSchema-instance"> 
<table name=""> 

<column name="" datatype="" length="" pk="" unique="" default="" nulls="" 
autoidentidy="" fk="" description=""/>
</table> 

</db> 

Tai mahdollisesti:


<?xml version="1.0" encoding="UTF-8" ?>

<db name="" xmlns:xsi="http://www.w3.org/2000/10/XMLSchema-instance">

<table name="">

<column name="" >
<datatype> </datatype>
<length/> </length>
<pk> </pk> 
<unique> </unique> 
<default> </default> 
<nulls> </nulls>
<autoidentidy> </autoidentidy> 
<fk> </fk> 
<description> </description>
</column>
</table> 
</db> 

Tai jokin välimuoto näistä. Mahdollisuudet ovat käytännössä rajattomat ja etenkin itseluoduissa XML-sovelluksissa / kielissä tämä muodostaa huomattavan vahvuuden. XML-formaatti voidaan tällä tavoin suunnitella alkujaan siten, että se soveltuu mahdollisimman hyvin sovelluskohtaisiin tarpeisiin.

Tälläisessä suunnittelussa on kuitenkin yksi vakava puute. Emme tiedä kuvauksemme rakenteesta mitään, kuten eivät myöskään muut sovellukset tai rajapinnat, jotka joutuvat käsittelemään tällä tavoin kuvattua XML-dataa. Miten ilmaisemme sen käytämmekö elementtejä vai attribuutteja ? Kuinka monta db tai mitä hyvänsä elementtiä meillä saa olla? Mitä arvoja me voimme antaa elementeille ? Jne.

Tätä varten joudumme rakentamaan nk. skeeman, joka kuvaa XML-datan rakenteen / kieliopin/logiikan ja välittää tiedon muille sovelluksille.

Tutustu artikkelin muihin osiin:
»»» XML »»»Projekticase (osa 1) : yleisesittely
»»» XML »»»Projekticase (osa 2): Tietokantakuvaus
»»» XML »»»Projekticase (osa 3): XML-kuvaus tietokannan rakenteesta
»»» XML »»»Projekticase (osa 4): XML skeema tietokannan rakenteesta
»»» XML »»»Projekticase (osa 5): Datan konvertoiminen tietokannasta XML-muotoon
»»» XML »»»Projekticase (osa 6): XML-skeema datalle
»»» XML »»»Projekticase (osa 7): XSL/XSLT-muunnos datalle

Tallenna tämä sivu kirjanmerkkeihin!

 

2kmediat.com, ©2000-2008 Koulutus- ja konsultointipalvelu KK Mediat.
Tekijänoikeuksia koskeva tiedonanto | Tietosuojalausunto | Sivukartta