9 Hypermediajärjestelmistä Lyhyt vilkaisu järjestelmätason hypermediaan. Hypermediasovellukseen liittyy aina kaksi näkökulmaa: lukijan ja laatijan näkökulma Hypertekstijärjestelmä (hypermediajärjestelmä) tarjoaa lukijalle ja laatijalle erilaiset näkymät ja työkalut Tyypillinen hypermediasovellusten (tekninen) jako on seuraava - integroidut sovellukset - alustaratkaisut, ts. yleiskäyttöiset selain+dokumenttix -sovellukset Esimerkki: Integroitu sovellus voi olla esim. Toolbookilla, Macromedia Directorilla tai Visual Basicilla toteutettu infokioski Esimerkki: Tuttu alustaratkaisu: WWW-selain + hyperdokumentti (selain tarjoaa käyttäjälle peruspalveluja, joista tärkein on ajonaikainen "Takaisin"-toiminto) 7307000 HYPERMEDIAN PERUSTEET (syksy 2004) 209
Pelkistetyn hypertekstijärjestelmän rakenne (selainpohj.) Kolme arkkitehtuurin perustasoa on helposti tunnistettavissa: esitys akdj kasdklj aslk askdl aslkdlk akdj kasdklj aslk askdl aslkdlk erityyppiset solmut dokumentit ja mediaelementit, ikkunointi, linkkien esittäminen, navigointi, hakupyynnöt, haut & navigointi aineiston välittäminen asiakkaalle hyperdokumenttien looginen rakenne ja käsitteistö (=merkattujen graafien käsitteet) varastointi tietokanta tai tiedostojärjestelmä 7307000 HYPERMEDIAN PERUSTEET (syksy 2004) 210
Hypertekstijärjestelmien analysoiminen & vertailu Pelkistetyn hypertekstijärjestelmän rakennetta voi kuvata esim. HAM-abstraktion ([Hypertext Abstract Machine]) avulla (v. 1988) - esitystapakerros ([presentation level]) - abstrakti hypertekstikerros ([HAM level]) (graph, context, nodes, links, attributes) - tietokantakerros ([database level]) User Interface Application Tools Hypertext Abstract Machine Host File System or Storage Mechanism 7307000 HYPERMEDIAN PERUSTEET (syksy 2004) 211
Hypertekstijärjestelmän osat voidaan myös standardoida, ts. määritellä yleinen malli (referenssikuvaus), jonka kautta analysoida ja vertailla eri (todellisia) hypertekstijärjestelmiä Kenties merkittävin tällainen kuvaus on Dexter Reference Model (v. 1990) - esitystapataso ([run-time layer]) - rakennetaso ([storage layer]) - komponenttitaso ([within-component layer]) Dexterin pääpaino on rakennetason kuvailulla (hypertekstimäinen tieto) Dexter kuvaa myös - yhteydet eri tasojen välillä ([presentation specifications] & [anchoring]) - eri kerrosten peruskäsitteet (komponentit: atomit, linkit & koosteet, ) - eri tasojen funktiot ja operaatiot Dexterille ominaisia piirteitä: - hypertekstiä lukee yhtä aikaa monta käyttäjää (kullakin oma sessio) ja käyttäjät voivat tehdä hypertekstiin muutoksia 7307000 HYPERMEDIAN PERUSTEET (syksy 2004) 212
- hypertekstin reaaliaikainen muokkaaminen & päivittäminen on mahdollista (transaktiot tietokantojen tapaan) - jokaisella solmulla ja linkillä on oma yksikäsitteinen tunnisteensa - linkit ovat aina valideja (linkit ovat omia konkreettisia objektejaan) ja linkit voivat olla aidosti monensuuntaisia - hypertekstin kaikki solmut ovat aina reaalisesti saatavilla saantifunktion avulla - koko hypertekstistä voidaan etsiä solmuja hakufunktion avulla 7307000 HYPERMEDIAN PERUSTEET (syksy 2004) 213
Dexterin painotus: rakennetaso (Storage Layer) " Storage layer models a database that is composed of a hierarchy of data-containing components which are interconnected by relational links. Components have unique identifiers and links can be identified by a set of two or more component identifiers. Components correspond to the general notion of nodes and can contain text, graphics, images, audio, video etc. The components are treated as generic containers of data and the model does not specify any structure within the containers. Thus, the storage layer does not differentiate between text components and graphics components. It focuses mainly on the mechanism by which components and links are tied together to form hypertext networks." (Balasubramanian) 7307000 HYPERMEDIAN PERUSTEET (syksy 2004) 214
Dexter-malli on suunniteltu lähinnä hypertekstijärjestelmän suunnittelijan näkökulmasta. Referenssimallin idea on, että - erilaisten hypertekstijärjestelmien vertailu ja analysoiminen helpottuu (esim. etsimällä yleisestä mallista pienin yhteinen tekijä) - standardointi tiedonsiirto eri hypertekstijärjestelmien välillä helpottuu - samalla oikeastaan myös täsmällisesti määritellään mitä hypertekstillä tarkoitetaan 7307000 HYPERMEDIAN PERUSTEET (syksy 2004) 215
Sisällöntuottajan näkökulmasta Dexter-malli ei nykyään ole kovinkaan ajankohtainen, standardien kehittäjät mallia kuitenkin käyttävät - multimedian huomioonottaminen: Dexter Amsterdam Hypermedia Model (AHM) - standardointi, tiedon abstrahointi & SGML Hypermedia / Time-based Structuring Language (HyTime) XLink(!) Soveltajan näkökulmasta referenssijärjestelmiä mielenkiintoisempia ovat yleensä kuitenkin konkreettiset hyperteksti- ja hypermediajärjestelmät esim. - multimedian tekeminen Multimedia ToolBook-ohjelmalla - multimediaohjelmointi Visual Basic -ohjelmointityökalulla - hypermedian tekeminen Macromedia Director-ohjelmistolla - HyTime SGML-standardin käyttäminen sisällöntuotannossa ja työhön liittyvät työkalut, - XML-standardiperhe ja ko. standardeihin liittyvät työkalut sekä - WWW:n HTML-standardi ja tähän liittyvät muut spesifikaatiot ja työkalut. 7307000 HYPERMEDIAN PERUSTEET (syksy 2004) 216
Käytännössä hypertekstiä ja -mediaa voidaan siis toteuttaa suunnilleen miten tahansa, Dexteristä yms. hypertekstimalleista piittaamatta - kuitenkin esim. WWW hypertekstijärjestelmänä voidaan aika luontevasti jäsentää HAM-mallin avulla Dexter-tyyppiseen standardointi- & kerrosajatteluun päätyy kuitenkin myös omassa työssä helposti, lähinnä taloudellisista ja tehokkuussyistä johtuen Standardoinnin tyypillinen tavoite on kuvattavan järjestelmän eri tasojen erottaminen käsitteellisesti toisistaan, tasojen yhdistäminen toisiinsa standardoitujen primitiivien avulla ja tasojen toteutuksen kapselointi, vrt. HAM: User Interface Application Tools Hypertext Abstract Machine Host File System or Storage Mechanism 7307000 HYPERMEDIAN PERUSTEET (syksy 2004) 217
Hypertekstin käsitteelliset tasot Hypertekstin tarkasteleminen johtaa väistämättä tiedon ja kielen ominaisuuksien (omituisuuksien?) tarkasteluun Hypertekstin laatimisessa, käytössä ja opiskelussa voidaan erottaa kolme (kielenkäytön) käsitteellisesti erilaista osa-aluetta: syntaksi, semantiikka ja pragmatiikka Semantiikka vastaa sisältöjä, joita halutaan esittää ja käsitellä (tietosisältö), syntaksi tarjoaa keinon tehdä asiat käytännössä (rakenne) ja lopulta pragmatiikka osoittaa, miksi asioita tehdään (käyttö) Esimerkki: HTML-sivu noudattaa HTML-syntaksia, jolla on HTML:n & selainten toteuttama (sovittu) semantiikka. Se, miksi sivu on tehty ja mitä sillä ajetaan takaa, riippuu laatijan ja käyttäjän näkökulmista ja työlle asetetuista tavoitteista: pragmatiikka. Edellä esitetty formaali kolmijako nousee tärkeään rooliin yleensä vasta siinä vaiheessa, kun erottelu osataan (lähinnä teknisesti) tehdä 7307000 HYPERMEDIAN PERUSTEET (syksy 2004) 218