9koordinaattipisteeseen. Tämä ei ole kuitenkaankäsitteellisenmallintamisen kannalta oikeaoppista, sillä neliö ei ole kolmion yleiskäsite.Voidaan yleisesti sanoa, että is-a –suhde on tarkoitettu mallintamaan yleistys/erikoistamissuhteita,joissa attribuutit <strong>ja</strong> metodit periytyvät yleisestä erikoiseen.Erikoistetut käsitteet ovat merkitykseltään samankaltaisia kuin yleisemmätkäsitteet, mutta niillä on omia uusia ominaisuuksia tai toiminto<strong>ja</strong>.Is-a <strong>ja</strong> part-of -mallinnussuhteiden lisäksi on olemassa muun muassa attribuuttisuhde,omistussuhde <strong>ja</strong> liitossuhde [Winston et al., 1987]. Nämä saattavat joskusvaikuttaa part-of suhteelta, mutta eivät kuitenkaan ole sitä. Attribuuttisuhteellakuvataan objektin ominaisuutta, eikä attribuutilla tulisi kuvata osaa objektissa[Wand et al., 1999; Artale et al., 1996]. Omistussuhde puolestaan kuvaa objektienvälillä olevaa omistussuhdetta. Toinen objekti on tällöin omista<strong>ja</strong> <strong>ja</strong> toinenomistettava. Suhde voi kuvata esimerkiksi auto-omista<strong>ja</strong> tai isä-poika suhdetta.Omistussuhteeksi voidaan virheellisesti a<strong>ja</strong>tella myös polkupyörän <strong>ja</strong>renkaan välistä suhdetta. Jos kuitenkin tarkoitetaan, että polkupyörällä on rengaskomponenttina, niin polkupyörä ei tällöin omista rengasta, vaan kyse onpart-of –suhteesta. Liitossuhteella kuvataan jonkin asian liittymistä johonkin toiseenasiaan. Tällöin suhde voi olla part-of –suhde, mutta ei usein ole sitä. Esimerkiksilaukun <strong>ja</strong> ihmisen, tai korvarenkaan <strong>ja</strong> korvan suhdetta voidaan kuvataliitossuhteella, vaikka laukku ei ole ihmisen, eikä korvarengas korvan osa.Liitossuhde voi kuitenkin olla tietyissä tilanteissa samaan aikaan myös part-of –suhde. Näin on esimerkiksi polkupyörän <strong>ja</strong> renkaan part-of –suhteen kohdalla.Is-a- <strong>ja</strong> part-of -suhteet eroavat toisistaan monella tapaa, vaikka joskus nesekoitetaankin toisiinsa. Osa-kokonaisuussuhteessa esiintyvillä komponenteillaon toisistaan poikkeava semanttinen luonteensa, jota ei voida is-a –suhteellamallintaa. Osat tai kokonaisuudet eivät ole yleensä toistensa erikoistapauksia,joten attribuutit eivät usein periydy kokonaisuudelta osille. Tosin aikaisemminesitetyllä osa-kokonaisuussuhdetyypillä, lohko/kokonaisuus, voi lohkolla ollausein samo<strong>ja</strong> attribuutte<strong>ja</strong> kuin kokonaisuudellansakin. Tutkielmassa tarkoitanosa-kokonaisuussuhteessa periytymisellä myös ekstensionaalisten arvojen johtamistajoistakin muista part-of suhteessa olevista attribuuteista. Is-a –suhteessaperiytyminen tapahtuu ainoastaan intensionaalisella tasolla. Part-of -suhteessayleisempää sen si<strong>ja</strong>an on, että myös attribuuttien arvot periytyvät. Periytyminentapahtuu tällöin ekstensionaalisella tasolla. Tämä ei silti välttämättä tarkoita,että perivällä objektilla olisi yhtään samaa attribuuttia. Osakokonaisuussuhteessaperiytyminen voi lisäksi tapahtua kahteen suuntaan.Tällöin osat voivat periä joitakin ominaisuuksia kokonaisuudeltaan tai kokonaisuuspuolestaan voi periä ominaisuuksia yhdeltä tai useammalta osaltaan[Halper et al., 1998]. Part-of -suhteen ekstensionaalisella tasolla periytyminen
10voidaan <strong>ja</strong>kaa kahteen periytymisen tapaan, jos kokonaisuuden jokin arvoriippuu sen osien ominaisuuksista: perintä voi olla suoraa perimistä <strong>ja</strong> emergenttistäperintää [Goldstein et al., 1999]. Suoraa perimistä edustaa esimerkiksi tilanne,jossa osien si<strong>ja</strong>inti on sama kuin niiden kokonaisuuden si<strong>ja</strong>inti. Tällöin siis jokaiselleosalle periytyy kokonaisuuden si<strong>ja</strong>inti -attribuutin arvo suoraan. Emergenttinenperintä tarkoittaa sitä, että kokonaisuuden tietty ominaisuus riippuusen osien ominaisuuksien arvoista jollakin monimutkaisella tavalla. Tästä esimerkkinäauton huippunopeus, joka riippuu sen monien osien ominaisuuksista,kuten renkaista <strong>ja</strong> moottorista. Tässä tutkielmassa emergenttisiä ominaisuuksiakutsutaan johdetuiksi attribuuteiksi.
- Page 1 and 2: Osa-kokonaisuussuhteen käsittelyyn
- Page 3 and 4: ii1. Johdanto .....................
- Page 5 and 6: ivTermitC++ Proseduraalinen ohjelmo
- Page 7 and 8: 2nen tapa poistaa kompleksisuutta o
- Page 9 and 10: 4abc d e f ghiKuva 1. Esimerkki osa
- Page 11 and 12: 6ovat osa autoa ja fonologia on osa
- Page 13: 8liittyy usein poissulkeutuvuusomin
- Page 17 and 18: 12kahierarkian luokkiin. Oliolla on
- Page 19 and 20: 14nimistä. Lisäksi rakenteeseen e
- Page 21 and 22: 16(oid1, ).”Helkama”, ohjaus: o
- Page 23 and 24: 18class departmenttype [dept_name:s
- Page 25 and 26: 20kossa oleva joukko sisältää yh
- Page 27 and 28: 22kaksisuuntaisesti. Seuraavaksi ta
- Page 29: 24poa ja etenkin päivitykset ovat
- Page 32 and 33: 27minen tapahtuu intensionaalisella
- Page 34 and 35: 29siten, että eri hyttityypit on j
- Page 36 and 37: 314.7. Muita kielen vaatimuksia osa
- Page 38 and 39: 33Osa-kokonaisuussuhteita sisältä
- Page 40 and 41: 35oliotyyppejä on mahdollista esit
- Page 42 and 43: 37Yllä oleva ekstensionaalinen tas
- Page 44 and 45: 39Toteutuskielen tulee täyttää k
- Page 46 and 47: 41Sääntö tulkitaan luonnollisen
- Page 48 and 49: 43Luokan määrittäminen aloitetaa
- Page 50 and 51: 45pse([map(tricycle,t(1)),map(price
- Page 52 and 53: 47ta tiettyä arvoa tai oliota vast
- Page 54 and 55: 49FRAMESADDLETRICYCLESTEERINGKun si
- Page 56 and 57: 516. Kielen primitiivit ja esimerkk
- Page 58 and 59: 53X = steering, X = tricycle, X = d
- Page 60 and 61: 551. arg1 is_instance_of arg22. arg
- Page 62 and 63: 57gointitiedotilmaistaan aggregoint
- Page 64 and 65:
59täsmälleen samat rivit poisteta
- Page 66 and 67:
61res(X) where diam is_property_of
- Page 68 and 69:
636.3.2. Ekstensionaaliset kyselytE
- Page 70 and 71:
65res(aluminium).Jos käyttäjä ei
- Page 72 and 73:
67res(C,Material,sum(Comp:weigth))
- Page 74 and 75:
697. YhteenvetoTutkielmassa tarkast
- Page 76 and 77:
718. Lähdeluettelo[Agrawal, 1987]
- Page 78 and 79:
73[Moss, 1994] Chris Moss, Prolog++