22.08.2013 Views

Transformatie Natuurlijke Taal Object Georiënteerd Analyse ...

Transformatie Natuurlijke Taal Object Georiënteerd Analyse ...

Transformatie Natuurlijke Taal Object Georiënteerd Analyse ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Door het achter elkaar zetten van selectie- en iteratiesymbolen is het mogelijk om ingewikkelde volgordes van<br />

acties te representeren. Zo is het mogelijk om sequenties van acties te nesten en door het plaatsen van een selectie<br />

na een iteratie kan een iteratieve keuze (herhalen van de keuze) gemodelleerd worden.<br />

Parallelle Iteratie<br />

Met een parallelle iteratie is het mogelijk om het parallel uitvoeren van een of meer acties te modelleren. Ook<br />

hier geldt weer dat de ingang van het parallelle iteratiesymbool aan de linker of bovenkant is en de uitgang aan<br />

de rechterkant. Aan de onderkant van het parallelle iteratiesymbool hangen één of meer paden die elk parallel<br />

uitgevoerd kunnen worden. Als er één pad aan hangt wil dat zeggen dat dit pad meerdere keren tegelijk kan<br />

worden uitgevoerd. Dit geldt uiteraard ook voor als er meer dan een pad aan hangt.<br />

2.4.4 Syntax van een KISS-model<br />

Hierboven staat op een informele wijze de syntax (en ook semantiek) van een KISS-model beschreven. De<br />

structuur van een KISS-model komt sterk overeen met een (wiskundige) boomstructuur (n-air). De root is altijd<br />

een objecttype. De knopen zijn de actietypen en de coördinatiesymbolen. Er kunnen geen cycles in een KISSmodel<br />

voorkomen. Wel kan een actietype meerdere keren op een KISS-model voorkomen. Hieronder wordt een<br />

formele beschrijving van een KISS-model gegeven. Dit wordt gedaan door middel van een grammatica die<br />

aangeeft hoe correcte KISS-modellen gegenereerd kunnen worden. Als een KISS-model niet door de grammatica<br />

kan worden beschreven dan is dat KISS-model syntactisch niet correct (niet Well Formed).<br />

Voor de grammatica worden de volgende symbolen gebruikt:<br />

O Het objecttype waarvoor het KISS-model wordt opgezet.<br />

A Een willekeurig actietype dat geassocieerd is aan het objecttype waarvan het KISS-model wordt opgesteld.<br />

S Sequentiesymbool<br />

T Terminatie symbool (Dit komt rechts van het selectie-, iteratie- of parallelle iteratiesymbool). Dit is<br />

eigenlijk een sequentiesymbool maar met een iets afwijkende semantiek.<br />

Sel Selectie symbool<br />

Ite Iteratie symbool<br />

Par Parallelle Iteratie symbool<br />

, x,y wil zeggen dat x gevolgd wordt door y. In de modellen betekent dit zoveel als y komt onder x te<br />

hangen, of in het geval dat y een T is, rechts van x.<br />

; x;y betekent dat voor het vervolg een keuze gemaakt moet worden tussen x en y<br />

(x) n+<br />

n of meer keren x naast elkaar<br />

[x] x is optioneel.<br />

∅ Hiermee wordt een pad in het KISS-model beëindigd. Dit symbool komt zelf niet op het KISS-model<br />

voor.<br />

Met haakjes worden meerdere symbolen gegroepeerd om duidelijker aan te geven wat de scope van een operator<br />

zoals de ; is<br />

KISS-model = O, S, Instantiatie<br />

Instantiatie = A, ActieBoom1 ;<br />

Sel, (S, A) 2+ , T, ActieBoom2<br />

ActieBoom1 = ∅ ; {Dit wil zeggen dat je niet verder hoeft uit te werken}<br />

S, ActieBoom2<br />

ActieBoom2 = A, ActieBoom1 ;<br />

Ite, S, ActieBoom_na_Ite, [T, ActieBoom2] ;<br />

Sel, (S, ActieBoom_na_Sel) 2+ , [T, ActieBoom2] ;<br />

Par, (S, ActieBoom_na_Par) 1+ , [T, A, ActieBoom1]<br />

ActieBoom_na_Ite = A, ActieBoom1 ;<br />

Sel, (ActieBoom_na_Sel) 2+ , [T, A, ActieBoom1] ;<br />

Par, (ActieBoom_na_Par) 1+ , [T, A, ActieBoom1]<br />

ActieBoom_na_Sel = A, ActieBoom1 ;<br />

Sel, (S, Actieboom_na_Sel) 2+ , T, A, ActieBoom1;<br />

Ite, ActieBoom_na_Ite, [T, A, ActieBoom1] ;<br />

© KISS b.v. 20

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!