Princip fungování validačního serveru bude nejjednodušší ukázat rovnou na procesu, jakým prochází práce, kterou student odevzdal:
V současné době existují dvě "brány", přes které je možno práce odevzdat - jednou
je portlet pro zápis a odevzdávání
semestrálních prací, který je k dispozici v
univerzitním portálu
,
druhým je systém pro organizování studentských soutěží (ten však není obecně přístupný,
slouží pouze pro tento účel). V případě zájmu je ale možno validační server propojit
i s jinými systémy.
Jedním z parametrů validace je tzv. "validační doména". Doména definuje konkrétní pravidla a proces validace - existuje tedy doména pro kontrolu semestrálních prací předmětu PPA1, další doména pro zmíněné studentské soutěže atd. Název domény, dle jejíž pravidel se zaslaný soubor validuje, je nutným a logickým vstupním parametrem validace.
Odevzdaný soubor projde prvními triviálními kontrolami na základě definic dané domény - maximální velikost souboru, možné přípony souboru atd. Splňuje-li soubor tyto základní formální požadavky, postupuje dál
V tomto bodě začne server připravovat podmínky pro spuštění vlastních validačních scriptů, tj. připraví jim to správně prostředí:
Každá validace probíhá v samostatném vlákně, přičemž je možno omezovat maximální dobu trvání validace (i jednotlivých jejích částí, viz popis příkazů procesu validace).
V adresáři data/workdir (viz adresářová struktura) se vytvoří podadresář s jedinečným názvem a do něj se odevzdaný soubor nahraje.
Pro případ pozdějšího dohledávání se každý zaslaný soubor ukládá do adresáře data/store (viz adresářová struktura).
Je spuštěn validační proces, který je definován pro konkrétní doménu. Jedná se o kombinaci XML elementů s JavaScriptovým programem. Script může využívat mnoho služeb poskytovaných validačním serverem. Script přidává do výsledku validace různé informace / varování / chyby a generuje tak postupně výsledek validace. Více informací na stránce o validačním procesu.
Během validace se postupně vytváří tzv. ValidationResult, tj. výsledek validace. Ten obsahuje nejrůznější informace o validaci, chybové hlášky atd. - cokoliv, co autor validace považuje za důležité sdělit studentům, kteří práci odevzdali. Tento výstup může být převeden do HTML formy a uložen na místo okamžitě přístupné přes www. Možné jsou další formy výstupu, například uložení do databáze či XML souboru.
Odstranění všech souborů a adresářů, které vznikly při validaci, promazání vyrovnávacích (cache) pamětí serveru.
Validační server vrátí výsledek validace (plus případně další údaje, záleží na konfiguraci domény) přes rozhraní zpět klientovi, v tomto případě webovskému serveru, který výsledek zobrazí studentovi.
Celý popisovaný proces se samozřejmě také ukládá do log souboru.