11.07.2015 Views

selykielen suunnittelu ja toteutus Samu Viita

selykielen suunnittelu ja toteutus Samu Viita

selykielen suunnittelu ja toteutus Samu Viita

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

7Toisessa <strong>ja</strong>ottelussa [Gerstl and Pribbenow, 1995] osakokonaisuussuhteeterotellaan komposiittien rakenteen mukaan. Eri suhdetyyppejäon kolme: Komplekseilla on heterogeeninen rakenne <strong>ja</strong> niiden osia kutsutaankomponenteiksi. Osien <strong>ja</strong> kokonaisuuksien välillä on tällöin funktionaalinen,a<strong>ja</strong>llinen <strong>ja</strong> avaruudellinen suhde. Kokoelmat puolestaan muodostuvatelementeistä, jotka ovat suhteessa kokonaisuuteen samalla tavalla. Lambrix[2000] havainnollistaa laivastoesimerkillä hyvin kompleksien <strong>ja</strong> kokoelmieneroa: laivasto voidaan a<strong>ja</strong>tella kokoelmana, jos sen jäsenillä ei ole mitään erikoistaroolia. Se voidaan a<strong>ja</strong>tella myös kompleksiksi, jos jokaisella laivalla ontietty si<strong>ja</strong>inti sekä toiminta laivastossa. Massat ovat homogeenisiä <strong>ja</strong> ne voidaan<strong>ja</strong>kaa suureisiin. Jaottelussa tunnistetaan vielä kaksi tapaa erottaa osat kokonaisuudesta.Erottelu on <strong>ja</strong>ettu segmentteihin <strong>ja</strong> osuuksiin. Esimerkkinä segmentistäon artikkelin johdanto, joka on siis segmenttinä koko artikkelissa. Osuudellatarkoitetaan tässä tilanteessa puolestaan kokonaisuuden jotain osaa, joka voidaanvalita ominaisuusulottuvuuden avulla. Esimerkkinä tästä on rosoisetkohdat seinästä, jolloin rosoiset kohdat ovat tietty osuus koko seinästä.2.3. Osa-kokonaisuussuhteessa huomioitavia rajoituksiaKäsitteellisessä mallintamisessa <strong>ja</strong> tietokantojen toteutuksessa tulee ottaa huomioonosa-kokonaisuussuhteen luonteesta johtuvia rajoituksia, kuten riippuvuus(dependency), poissulkevuus (exclusiveness) <strong>ja</strong> monikertaisuus (multiplicity)[Halper et al, 1998;Motschnig-Pitrik and Kaasboll, 1999].2.3.1. RiippuvuusRiippuvuus osien kesken tarkoittaa sitä, että jos jokin osa A on riippuvainenB:stä, niin A ei voi olla olemassa, jos B:tä ei ole olemassa. B voi tässä tapauksessaolla joko A:n osa tai kokonaisuus. Riippuvuuden suunta voi olla kokonaisuudestaosiin, osista kokonaisuuteen tai kaksisuuntaista. Jos esimerkiksi kir<strong>ja</strong>poistetaan tietokannasta, on luonnollista, että myös sen sisältämät kappaleet <strong>ja</strong>sisällysluettelo poistetaan. Tässä tapauksessa osien olemassaolo riippuu kokonaisuudenolemassaolosta. Jos taas polkupyörän runko poistetaan, polkupyörääei enää kokonaisuutena ole olemassa. Tässä tapauksessa kokonaisuus onriippuvainen osastaan. Suunnittelussa täytyy myös ottaa huomioon, onko tarkoituksenmukaistatuhottaessa kokonaisuutta poistaa sen kaikki osat, vai voivatkoesimerkiksi kokonaisuutta edustavan polkupyörän osat jäädä olemaan,vaikka pyörä tuhottaisiinkin.2.3.2. PoissulkeutuvuusPoissulkeutuvuusominaisuus tarkoittaa sitä, voiko osa olla useamman kuinyhden kokonaisuuden osana vai ei. Kun on kyse konkreettisista esineistä, osaan

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!