Vastus: Äkki on mõistetest klass, atribuut ja eksemplar paremaks arusaamiseks abi nendest animatsioonidest:
http://maurus.ttu.ee/animatsioonid/animation_uml/
Need tegi kunagi üks bakalaureuseõppe üliõpilane oma lõputööna.
Kogu selle temaatika juures on suureks probleemiks terminoloogiline segadus. Näiteks erinevate autorite tekstides tähistavad järgnevad sõnad (terminid) sisuliselt sama mõistet.
- Klass
- Objektitüüp
- Olemitüüp
- Olem
- Põhiobjekt
Näiteks erinevate autorite tekstides tähistavad järgnevad sõnad (terminid) sisuliselt sama mõistet.
- Objekt
- Objekti eksemplar
- Olem
- Eksemplar
- Olemi eksemplar
Eriti halb on, kui neid sõnu kasutatakse läbisegi.
Näiteks üks räägib olemitest ja olemi eksemplaridest, teine olemitüüpidest ja olemitest, kolmas objektidest ja objekti eksemplaridest, neljas klassidest ja objektidest, kuigi tegelikult mõtlevad nad sama asja.
Samasugune probleem on seostega. Üks räägib seosetüüpidest ja seostest, teine seostest ja seoste eksemplaridest ning kolmas seosetüüpidest ja seoste eksemplaridest, kuigi tegelikult mõtlevad nad sama asja.
Selline terminoloogiline segadus on paraku reaalsus.
Näide, kus üritan seda terminoloogiat järjekindlalt kasutada.
Reaalses maailmas on isik (omaduste e atribuutidega) (meiliaadress, mis ühtlasi eristab seda isikut kõigist teistest isikutest e on tema unikaalne identifikaator=)mari.maasikas2@hot.ee (eesnimi=)Mari (perenimi=)Maasikas.
Reaalses maailmas on isik (omaduste e atribuutidega) (meiliaadress, mis ühtlasi eristab seda isikut kõigist teistest isikutest e on tema unikaalne identifikaator=)juhan.juurikas@hot.ee (eesnimi=)Juhan (perenimi=)Juurikas.
Reaalses maailmas on Mari Maasikas Juhan Juurika ülemuseks.
Nende tähelepanekute alusel sõnastab andmebaasi kavandaja kontseptuaalses andmemudelis vajaduse hoida andmebaasis isikute andmeid (meiliaadress, eesnimi, perenimi ning kes on kelle ülemus). Selleks kirjeldab ta seal olemitüübi Isik, millel on atribuudid e_meil, eesnimi ja perenimi. See vajadus joonistatakse UML keele klassidiagrammi abil loodud olemi-suhte diagrammile üles luues seal klassi Isik ja määrates sellele atribuudid e_meil, eesnimi ja perenimi. Kontseptuaalses andmemudelis ei modelleerita olemeid (Juhan Juurikas või Mari Maasikas), vaid nende üldistust (Isik). Samuti modelleerib ta olemi-suhte diagrammil seosetüübi on ülemus, mille mõlemad otsad on seotud klassiga Isik. Kontseptuaalses andmemudelis ei modelleerita seoseid (Mari Maasikas on Juhan Juurika ülemus), vaid nende üldistust (on ülemus).
Kontseptuaalses andmemudelis sõnastatud nõude rahuldamiseks luuakse SQL-andmebaasis tabel Isik, kus on veerud e_meil, eesnimi ja perenimi + välisvõtme veerg ylemuse_id. Iga rida, mis sellesse tabelisse lisatakse, peab vastama selle tabeli päisele (mis määrab isiku kohta andmebaasis kogutavad andmed). Iga rida on kujutus/peegeldus reaalse maailma olemist (nt reaalsest lihast ja luust Juhan Juurikast). Reaalse maailma olem (nt kindel füüsiline isik) ja tema kujutis süsteemis (nt rida tabelis, JSON dokument või XML dokument) on tegelikult ju kaks ise asja, aga kõnekeeles ollakse sageli lühiduse huvides ebatäpsed ja räägitakse lihtsalt olemitest ja nende andmetest.