1 SahovskiSavez(=>I,<=O,<>D) 1e OdrzavanjeMaticno 1e ObradaProtoka(=>I.Pro,<=O.Pro,<>D) 1e IgranjePoteza(=>I.Pro.Pot,<=O.Pro.Pot,<>D) 1 UnosPodataka(=>I.Pro.Pot,Korisnik,>Partija,Korisnik,>Partija,Potez,>Partija,>Korisnik,Partija,>Potez){I-Potez} /Igra==TRUE AND NaPotezu==TRUE AND MogucPotez==TRUE 6? ProveraDaLiJeKrajIgre(>Partija,Partija){U-Partija,S-Potez} /Igra==TRUE AND NaPotezu==TRUE AND MogucPotez==TRUE AND JeKraj==TRUE 8 Obavestavanje(>Klijent,>Igra,>NaPotezu,>MogucPotez,>Partija,<=O.Pro.Pot) 1e AnaliziranjePoteza(=>I.Pro.APot,D) 1 UnosPodataka(=>I.Pro.APot,Potez,Korisnik,Korisnik,>Turnir,Tekst,>Potez,>Korisnik){I-Analiza} /NaTurniru==TRUE AND JeKomentator==TRUE AND OdobrenoKomentarisanje==TRUE 6 Obavestavanje(>JeKomentator,>NaTurniru,>OdobrenoKomentarisanje,>Korisnik,>Potez,<=O.Pro.APot) 1e PrijavaUcesnika(=>I.Pro.Pri,<=O.Pro.Pri,<>D) 1 UnosPodataka(=>I.Pro.Pri,Korisnik,>Turnir,Korisnik,>Turnir){I-Ucestvuje} /VecPrijavljen==FALSE 4 Obavestavanje(>Korisnik,>Turnir,>VecPrijavljen,<=O.Pro.Pri) 1e KreiranjeNovePartije(=>I.Pro.Kre,<=O.Pro.Kre,<>D) 1 UnosPodataka(=>I.Pro.Kre,Sahista1,>Vreme,Sahista1,>Turnir,Sahista2,>Vreme,Sahista2,>Turnir,Vreme,>Turnir,Sahista1,>Sahista2,>Vreme,Partija,>Turnir){I-Odigrana} /PrviSlobodan==TRUE AND PrviUcestvuje==TRUE AND DrugiSlobodan==TRUE AND DrugiUcestvuje==TRUE AND OkVreme==TRUE 9 Obavestavanje(>PrviSlobodan,>DrugiSlobodan,>NaTurniru,>OkVreme,>Sahista1,>Sahista2,>Turnir,>Vreme,>PrviUcestvuje,>DrugiUcestvuje,<=O.Pro.Kre) 1e Izvestavanje