Komunikační vazba mezi uživatelem a prezentačním systémem

Úvod
Prezentátor
Analýza
Pohled uživatele na prezentační systém
Prezentační systém
Uživatel prezentačního systému
Komunikační vazba mezi uživatelem a prezentačním systémem
Shrnutí

Counter

Uživatel a prezentační systém spolu musí komunikovat. Jedním směrem vychází z prezentačního systému formálně poměrně dobře definovaný výstup --- prezentace v určitém definovaném formátu (nezáleží na tom, zda je to PDF, HTML, XML nebo např. RTF, formáty těchto výstupů jsou striktně nadefinovány).

Vstupní komunikace směrem od uživatele k prezentačnímu systému je mnohem problematičtější a není v našem případě vyřešena. Obsah komunikace je však zřejmý z požadavků na funkci systému. Systém má za úkol prezentovat data, a to určitým, uživatelem definovaným způsobem. Obsahem této komunikace tedy musí být jak požadavky na data, tak definice toho, jak mají být data ve výsledku naformátována, tj. do jakého kontextu (textového, vizuálního) mají být zasazena.

Požadavky na data musí mít určitý obsah, který bude předně zahrnovat objekt, kterého se data týkají a samotné požadavky na jednotlivé atributy tohoto objektu. Pojem objekt zde používáme z toho důvodu, protože objekty z reálného světa jsou tím, co zajímá koncové uživatele, nikoliv tabulky v databázi. Objekty, o nichž se chtějí uživatelé něco dovědět musí být něčím identifikovány. Zpravidla jsou identifikovány svým jménem (určuje třídu objektů) a omezeními kladenými na požadované objekty.

Teoreticky by k popisu požadovaných dat stačilo nadefinovat pouze třídu objektů a omezující podmínky. Prakticky by však mohlo být velmi náročné zjišťovat veškeré atributy požadovaných objektů, takže je vhodné předem říkat, jaké atributy budeme chtít dále používat. Obtížnost zjišťování veškerých atributů objektů spočívá předně v tom, že mezi atributy objektu zařazujeme i agregované údaje a popisy vztahů s ostatními objekty. Zjišťování agregovaných údajů může exponenciálně zvyšovat složitost provedení dotazů.

Požadavky na formát musí definovat transformaci dat získaných z databáze do prezentace. Tuto transformaci musí definovat uživatel prezentačního systému. Naším úkolem analytika a návrháře je mj. vytvořit vhodný formát pro transformaci dat do prezentace. S přihlédnutím k vlastnostem očekávaného uživatele --- jedná se o koncového uživatele --- musí být tento formát co nejjednodušší, a to i za cenu určitých omezení. Nabídneme-li uživateli formát složitý, tak jej uživatel nebude schopen používat. Tento fakt je vidět i na rozšíření jazyků XSLT a DSSSL, které běžně nepoužívá komunita koncových uživatelů, a to i přesto, že by tím značně rozšířili možnosti formátování svých prezentací. Jsou to sice jazyky, které umožňují takřka libovolnou transformaci stromové prezentace dokumentu (vyjadřovací síla je veliká), ale tyto jazyky jsou pro koncové uživatele příliš složité a svoji strukturou se příliš liší od konečného výstupu.

Jako vhodnější pro koncové uživatele se jeví takový formát transformace dat, který je svoji strukturou velmi blízký cílovému formátu. Touto cestou se vydaly knihovny značek v projektech jako jsou Cocoon nebo AxKit. Tyto knihovny pouze umožňují zadat do šablony pro transformaci dat určité značky odkazující na dynamický obsah. Tyto značky jsou poté zpracovávány zadanou knihovnou značek. Dynamickým obsahem se rozumí veškeré části dokumentu, jejichž obsah je dynamicky vytvářen, a to zpravidla postupy zapsanými v procedurálních jazycích. Může se tedy jednat jak o data z databází, tak i např. o výsledky sémantických analýz dokumentů, atp. V této práci se však zaměřujeme pouze na prezentaci údajů z databází a jejími specifikami a ponaučením pro naši práci může být právě faktor podobnosti vstupního a cílového formátu.