Copyright 1997 IEEE. Pulish in th Proings o VL 97, Sptmr 23-26, 1997 in Cpri, Itly. Prsonl us o this mtril is prmitt. Howvr, prmission to rprint/rpulish this mtril or vrtising or promotionl purposs or or rting nw olltiv works or rsl or ristriution to srvrs or lists, or to rus ny opyright omponnt o this work in othr works, must otin rom th IEEE. Contt: Mngr, Copyrights n Prmissions / IEEE Srvi Cntr / 445 Hos Ln / P.O. Box 1331 / Pistwy, NJ 08855-1331, USA. lphon: + Intl. 908-562-3966. Digrm Eiting with Hyprgrph Prsr Support M. Mins Lhrstuhl ür Progrmmirsprhn Univrsität Erlngn-Nürnrg Mrtnsstr. 3, 91058 Erlngn, Grmny mil: mins@inormtik.uni-rlngn. Astrt Digrms r lwys us whn ommuniting omplx situtions. Digrm itors support th usr whn iting igrms on omputr. Howvr, rting igrm itors is xpnsiv n tim-onsuming. Frmworks tht n ustomiz or th spii igrm lsss onsirly ru ths osts. In prvious work, th rmwork DiGn using n intrnl hyprgrph mol n oring syntx-irt iting h n introu. his ppr prsnts n inrmntl hyprgrph prsr n n xtnsion o DiGn tht llows or iting igrms lik in rwing tool. h hyprgrph prsr tts orrt (su-) igrms onlin n notiis th usr o inorrt igrm prts. his llows iting with tmporlly inonsistnt igrms whih supports nturl iting styl. 1 Introution In nrly vry prolm omin, omplx situtions r st n usully most rquntly rprsnt y igrms. hy r unrstoo s grphil mns or xprssing multiimnsionl struturs spii to thir prolm omin. Wll-known xmpls r Nssi-Shnirmn igrms (s) n lowhrts in th on o progrmming, or onntion igrms in ltril nginring. In th on o visul lngugs, igrmmti lngugs r o spil intrst. Eh igrm lss (.g., s) hs prtiulr syntx n visul pprn, i.., ruls how igrms r ompos rom simpl omponnts n wht igrms look lik. Using igrms mns onstruting n moiying thm with grphil itor. Suh tool is ithr gnrl purpos rwing tool, thn it is th usr s tsk to kp igrms synttilly orrt, or it is igrm itor ustomiz or spii igrm lss. Only igrm itors or spii igrm iting support to th usr. Crting igrm itor or prtiulr igrm lss is xpnsiv n tim onsuming. In orr to ru ths osts, itor rmworks r ppli. A prtiulr itor is rt y ing ustom omponnts,.g., spii si igrm loks n visul rprsnttions. Automtilly gnrting ths ustom omponnts rom orml spiition ls to th grtst possil simpliition whn rting spii igrm itor. his ppr sris suh rmwork or igrm itors. Gnrtor support is or or som omponnts, othr ustom omponnts must still rt mnully (. S. 8.) h min tur sri in this ppr is r iting o igrm loks lik in rwing tool, thus llowing inonsistnt igrms. Digrm iting support is or y onlin prsing o th igrm strutur uring iting sssions n proviing ontinuous visul k on orrt n inorrt igrm prts. h rst o th ppr is orgniz s ollows: h urrnt work is urthr vlopmnt o th igrm itor rmwork n gnrtor DiGn [1]. Stion 2 givs ri ovrviw o its turs. h si notion o hyprgrphs n hyprgrph grmmrs us to rprsnt igrms is introu in S. 3. Stions 4 n 5 prsnt th hyprgrph prsr us to tt orrt (su-) igrms or on-r hyprgrph grmmrs n or rstrit on-snsitiv ons. Stion 6 sris how rwing tool hvior with prsr support is intgrt into th DiGn rmwork. Rlt work is isuss in S. 7. Stion 8 ontins onlusions n utur work. 2 DiGn h rmwork prsnt in this ppr is urthr vlopmnt o DiGn onsisting o th rmwork togthr with gnrtor utomtilly rting ustom omponnts rom orml spiition. h min DiGn turs o intrst hr r (or tils s [1, 2, 3]): (1) Digrms r intrnlly rprsnt y hyprgrphs (s S. 3); igrm lss is thus hyprgrph lngug togthr with mpping rom hyprgrphs to thir visul rprsnttion s igrms. A on-r hyprgrph grmmr lngug is us to sri th hyprgrph lngug. For igrms whih nnot sri y on-r grmmr, itionl grph trnsormtions srv s mns to rt on-snsitiv shrs. (2) Nos n hyprgs rry ttriuts, n h grmmr proutions is ugmnt y lyout onstrints on ttriuts ssil in th proution. A onstrint-solvr provis utomti, usr-justl lyout o igrms.
whil on on whil on Figur 1: Hyprgrph rprsnttion o th pit in Fig. 8. (3) Digrms n synttilly it using trnsormtions on rivtion trs n hyprgrphs sri in th spiition. o hi thos tils rom th usr, intrtions o th usr n th itor r sri y rtin intrtion utomt, thus oring iting igrms y irt mnipultion. DiGn in this stt hs n sussully ppli to rt svrl igrm itors [1, 4]. But ths xmpls lso or som rwks: (1) Only orrt iting stts r possil, ut xprin with gnrt itors shows tht pur syntti iting is too rstritiv; intrmit inonsistnt igrms woul mk iting pross sir. Without inonsistnt stts, omprhnsiv st o omplx trnsormtions must spii to llow or omortl iting. Amitting inonsistnt stts woul lrly ru th numr o trnsormtions to spii. (2) Spiition o trnsormtions n usr intrtion rquirs mjor shr o th ntir spiition (pprox. 90% o th spiition). his shr nnot ru sin vry trnsormtion whih might nssry hs to ntiipt. As solution or ths prolms, DiGn hs n xtn y rwing tool hvior n using prsr to istinguish orrt igrm prts rom inorrt ons. Spiition o trnsormtions n rstrit to si st o onvnint trnsormtions. Fr iting llows or unspii igrm moiitions. As n xtrm s, spiition o trnsormtions oul vn ompltly omitt. h ollowing stions isuss th si mhnisms to support r iting with onlin prsing n th omintion with xisting DiGn turs. 3 Hyprgrph rprsnttion o igrms Hyprgrphs hv prov to n intuitiv mns or intrnlly rprsnting igrms [1, 4]. A hyprgrph is gnrliztion o grph, in whih gs r hyprgs, i.., thy n onnt to ny (ix) numr o nos until Figur 2: Con-r hyprgrph grmmr or s. Nontrminl hyprgs r pit s whit ovls, trminl hyprgs s gry rtngulr struturs onnt to th nos. Not th rvit rprsnttion o proutions with th sm lhs. [5]. Eh hyprg hs typ n numr o onntion points tht trmin how mny nos th hyprg is onnt to. W sy th hyprg visits ths nos. h milir irt grph n sn s hyprgrph in whih ll hyprgs visit xtly two nos. As n xmpl or rprsnting Nssi-Shnirmn igrm y hyprgrph, onsir Figs. 1 n 8: nos in hyprgrph stn or points (.g., in th pln), hyprgs r igrm lmnts whos position is givn y th nos ing visit y th hyprg. h igrm lss is sri in trms o its hyprgrphs. In orr to in th hyprgrph lngug, hyprgrph grmmrs r n pproprit mns. For th tim ing, on-r hyprgrph grmmrs r us (Rstrit on-snsitiv grmmrs r onsir in S. 5.) hy r nlogously in s on-r (string) grmmrs n hv similr proprtis [6]. Howvr, thir xprssivnss is highr thn tht o on-r string grmmrs. rminl n nontrminl hyprgs r us in hyprgrph grmmrs inst o lpht symols in string grmmrs. In ontrst to string grmmrs, howvr, hyprgrphs n rprsnt multiimnsionl rltionships irtly. Eh proution in on-r hyprgrph grmmr onsists on its lt hn si (lhs) o singl nontrminl hyprg n th nos visit, s Fig. 2. h lhs o th irst proution is th strting grph o th grmmr. A proution s rhs is n ritrry hyprgrph. Applition o proution to hyprgrph is similr to string grmmrs, too: i th lhs is sugrph o th hyprgrph, this sugrph is rmov n rpl y th rhs. h rsulting hyprgrph is si to riv rom th irst. h hyprgrph lngug n thus th igrm lss givn y (on-r) hyprgrph grmmr is th st o rivtion
whil Figur 3: First rivtion stps o th hyprgrph o Fig. 1 s on th grmmr pit in Fig. 2. grphs tht r rivl rom th strting grph n onsist o trminl hyprgs only. In orr to spiy whih rhs no rpls whih lhs no, orrsponing nos o th lhs n rhs r ll with th sm lttrs. A smpl rivtion squn is shown in Fig. 3. h syntti strutur is similr to string grmmrs rprsnt y syntx tr whr th nontrminl hyprgs togthr with thir (hypr)nos r innr nos, n trminl gs togthr with thir (hypr)nos lvs. 4 Con-r hyprgrph prsing his stion sris hyprgrph prsr or onr hyprgrph grmmrs. h prsr onstruts syntti inormtion or givn hyprgrph, srhs or mximl sugrphs tht r synttilly orrt, n rts thir syntx trs. h prsr works in two mos: it n rt syntti inormtion rom srth without orknowlg, n it n work inrmntlly, i.., upt syntti inormtion tr hyprgrph moiitions. h prsr is thror spilly suit or onlin prsing uring iting sssions. 4.1 h si on-r hyprgrph prsr h i o th prsr hs n inspir y th Cok- Youngr-Ksmi prsr (CYK) [7, 8] or on-r string grmmrs. h originl CYK prsr n us with ny on-r grmmr tht hs Chomsky normlorm (CNF), i.., thr r only proutions with th rhs onsisting o ithr xtly on trminl or xtly two nontrminl symols. his is no rstrition sin vry on-r grmmr n trnsorm into CNF. h spil s o th mpty wor in th grmmr s lngug is omitt hr. CNF or on-r hyprgrph grmmrs is similrly in: th rhs o h proution onsists o hyprgrph with ithr xtly on trminl hyprg (trminl proution) or xtly two nontrminl hyprgs (nontrminl proution). h strting grph hs to onsist o xtly on nontrminl hyprg (strting g). Evry on-r grmmr n trnsorm into CNF. Figur 4 shows hyprgrph grmmr in CNF quivlnt to th grmmr in Fig. 2. h hyprgrph prsr onstruts syntti inormtion ottom-up similr to th originl CYK prsr: it strts with th trminl hyprgs n rts ll nontrminl hyprgs tht n riv using trminl proutions. hrtr, th prsr rts itionl hyprgs tht r rivl to hyprgs rt prviously. Syntx trs or synttilly orrt sugrphs r inhrntly onstrut whn storing th irtly rivl hyprgs or h nontrminl hyprg. An iint orgniztion o th ottom-up onstrution o nontrminl hyprgs is to sussivly rt sts S i (i = 1;2;:::;n with n th numr o trminl hyprgs) o nontrminl hyprgs tht n riv to trminl sugrph with xtly i hyprgs. 1 hus S 1 hs to ill with hyprgs rivl with trminl proutions. hn th sts S 2 ;S 3 ;:::;S n r sussivly rt. A nw nontrminl hyprg togthr with rrns to its visit nos is insrt into S k i thr xist n i (1 < i < k) n hyprgs 1 2 S i n 2 2 S k,i suh tht (1) n riv to th hyprgrph onsisting o 1 n 2 (togthr with th orrsponing nos) using nontrminl proution. (2) th trminl sugrphs o 1 n 2 hv isjoint hyprg sts. Atr trmintion, th sts S i o hyprgs togthr with rrns to thir riv hil hyprgs ontin th omplt syntti inormtion o th hyprgrph. h ntir hyprgrph is synttilly orrt i S n ontins strting g. h grmmr is miguous i mor thn on strting g instn is ontin. In th ollowing, w ssum non-miguous grmmrs, whih might nor y itionl pplition onitions tth to proutions. In gnrl, th hyprgrph s ntirty is not synttilly orrt, ut ontins numr o orrt suhyprgrphs,.g., whn rprsnting svrl igrms y on unonnt hyprgrph. h sts S i mk it sy to in st o mximl orrt sugrphs (i.., onsisting o s mny hyprgs s possil n ing synttilly orrt): th sts S n ;S n,1 ;S n,2 ;::: r srh or ourrns o strting gs. Suh hyprg is slt i thr r no onlits with ny prviously slt strting g instn. wo gs r si to hv onlits i thir trminl sugrphs hv ommon trminl hyprgs. Atr trmintion, th slt strting g instns r th syntx tr roots o orrt sugrphs, thus spiying orrt (su) igrms. Not tht this lssiition is in gnrl miguous: i st S i ontins strting g instns with ovrlpping trminl sugrphs, t most on o thm is slt; thror, th squn o hking strting g instns in th S i my inlun th sltion. 4.2 Inrmntl prsing h prsr lgorithm sri so r onstruts hyprgrph s syntti inormtion rom srth. Whn kping th syntti inormtion, i.., th sts S i, up-to-t 1 In th ollowing, w ll th trminl sugrph tht n riv rom hyprg simply trminl sugrph o.
Con Whil Until Con Whil Until Con Con Whil whil Until until Con on Figur 4: Chomsky norml-orm o th hyprgrph grmmr o Fig. 2. vn tr hyprgrph moiitions, w gin n inrmntl prsing lgorithm. Eh hyprgrph moiition n ivi into si moiitions o thr kins: 2 (1) Splitting th hyprgrph into two unonnt sugrphs: Nontrminl hyprgs om invli i thir trminl sugrphs r lso split whn splitting th ntir hyprgrph. hror upting th sts S i mns to hk h nontrminl hyprg n to rmov it i its trminl sugrph is split. (2) Joining two prviously unonnt sugrphs y mrging hyprnos: h xisting nontrminl gs rmin vli, n th prsr hs to rt itionl ons. his is on lik prsing rom srth, ut pirs o lry pross nontrminl gs my rmin unonsir. (3) Aing n isolt hyprg to th hyprgrph: An itionl, ut mpty st S n+1 hs to stlish, n S 1 is xtn y nontrminl hyprgs tht n riv to th nw trminl on. 4.3 Exmpls h hyprgrph prsr hs n ppli to irnt igrm lsss. On ws th lry mntion lss with th grmmr in CNF shown in Fig. 4. Anothr lss onsists o strutur lowhrts, i.., lowhrts rprsnting strutur progrmming styl. In orr to monstrt th ppliility o th prsnt prsr to onlin prsing, som timing msurmnts or oth igrm lsss r prsnt in. 1. h prsr writtn in Jv hs n ppli to hyprgrphs with vrious numrs o (trminl) hyprgs. Prsing hs n prorm on Pntium 200 PC. 3 2 W ssum tht synttilly orrt sugrphs hv to onnt lik in th xmpl. his orrspons with grmmr whr h proution hs onnt rhs. Othrwis similr rgumnttion pplis. 3 Compr to th prliminry rport on hyprgrph prsing in [1], th prsr hs n ompltly rwrittn. his xplins th notil improvmnt o prsing tim. s #gs tim 10 6 46 63 93 126 187 284 FCs #gs tim 7 3 25 24 68 170 l 1: Prsing tim msurmnts or s n FCs o vrious siz. ims r msur in millisons. 5 Byon on-r prsing Con-r grmmrs llow or simpl prsing lgorithms, ut thy possss limit xprssivnss. Evn th wll-known lss o Ptri nts nnot sri using on-r hyprgrph grmmrs. W rily isuss mor xprssiv lss o hyprgrph grmmrs hr, whih r ll rstrit on-snsitiv hyprgrph grmmrs in this ppr. Oring this xprssivnss n still ing l to pply th hyprgrph prsr o S. 4 with only minor moiitions wr th rsons to hoos this grmmr lss hr. h i o rstrit on-snsitiv hyprgrph grmmr is to hv rgulr on-r hyprgrph grmmr s in in S. 3 n to xtn it y rtin ming proutions whih onsist o th sm hyprgrph on th lhs n rhs, ut with n itionl hyprg (m hyprg) on th rhs. h gol o m proutions is to insrt itionl hyprgs in rtin on. Figur 5 shows rstrit on-snsitiv hyprgrph grmmr or Ptri nts. h uppr ox ontins th on-r proutions, th lowr on th ming proutions whih insrt th gs twn trnsitions n pls n vi vrs. h hyprgrph prsr is sily xtn to this kin o grmmr. Prsing is prorm in two stps: First, th hyprgrph is prs using th grmmr s on-r proutions only. Any nontrminl hyprg ing n m-
PN PN Intrtion Control P PN P P P P Usr Animtion Moiitions & rnsormtions Prsr Syntti Inormtion Figur 5: Rstrit on-snsitiv hyprgrph grmmr or Ptri nts (P/-nts). hyprg is utomtilly rt, too. In stp 2, ourrns o right-hn sis o ming proutions r srh whr h on grph hs to long to singl sugrph oun orrt in stp 1. his sugrph thn gts grnt th trminl sugrph o th m hyprg. 6 Digrm iting with DiGn his stion givs ri ovrviw o how rwing tool hvior n hyprgrph prsing r intgrt into igrm itors rt on top o DiGn. hn th ommon turs o itors using th urrnt DiGn rmwork r isuss. Atrwrs smpl itor is prsnt. 6.1 Digrm itor rhittur Digrm itors uilt on top o DiGn hv ommon rhittur prin y th DiGn rmwork. Figur 6 shows th min omponnts o suh n itor togthr with t low n ontrol low (sh rrows). Ativ omponnts r pit s ovls, t struturs s gry rtngls. h ntrl prt o igrm itor is its hyprgrph with its hyprgs rprsnting igrm loks ing visuliz on th srn. Digrm loks n thus hyprgs n tmporlly ugmnt y sltion o su-igrms n groups [2]. h orrsponing syntti inormtion o th igrm is rt y th hyprgrph prsr sri in S. 4. Syntti inormtion on th hyprgrph is us to mrk synttilly orrt su-hyprgrphs. hs mrkings r us y th visuliztion prt to giv k to th usr out orrtnss o igrms h is iting (s th ollowing stion). It is th intrtion ontrol s tsk to ommunit th usr s gsturs n ommns to th itor omponnts. h most importnt iting tions r rting n moiying igrms. h moiition&trnsormtion omponnt prorms ths moiitions irtly on th hyprgrph (rwing tool hvior) or primrily on th syntti inormtion n s onsqun on th hyprgrph (syntxirt iting). Syntti inormtion is lso us to provi utomti, ut usr-justl lyout. h lst omponnt is n nimtion omponnt whih ors th possiility to nimt igrm tions in movi-lik shion. Eh o th omponnts hs to ustomiz or th spii igrm itor. Customiztion or rwing tool Visuliztion Sltion Groups Hyprgrph Digrm Bloks Dttion o (in)orrt (su)igrms Lyout Algorithm Figur 6: Componnts n t s wll s ontrol low in igrm itors uilt on top o DiGn. hvior with prsr support onsists solly o prsnting th hyprgrph grmmr to th prsr n proviing igrm spii visuliztions. Whn using itor spii turs or y th othr omponnts, ustomiztions s sri in [1, 2, 3] hv to provi. h urrnt DiGn implmnttion is s on th on prsnt in [1, 2, 3] n us in [4]. But it hs n ompltly rwrittn. h prvious vrsion ws writtn in C++ using X11/OSF Moti n svrl non-stnr lirris whih m DiGn hrly portl. Furthrmor, th systm h volv ovr prio o tim mking nw ginning nssry. h nw vrsion is ompltly implmnt in Jv with its ovious vntgs s portility n uilt-in WWW support. h nw rmwork lry ontins ll th turs o th ol vrsion, ut th nw vrsion os not yt provi ull gnrtor support lik th ol on. 6.2 DiGn rmwork proprtis h DiGn rmwork is rliz s Jv lss hirrhy whih hs to xtn in n ojt-orint wy to rt spii igrm itors. Eh itor n run s stn-lon pplition oring th ull untionlity, or it my m s n pplt in w pg. As n pplt, th itor s untionlity is rstrit us o Jv s surity mhnism. h min iiny is not ing l to lo n sv igrms rom n to th lol is. Eh itor rt on top o DiGn onsists o min winow oring untions lik loing n sving o igrms, rting multipl viws o singl nvs, n rting nw instns o igrm loks on th nvs. h usr n mng h viw inpnntly y hoosing zoom tor n visil til. Evry viw ors th ull rwing tool hvior: igrm loks n slt n thn mov s wll s rsiz. h wy how ths tions inlun othr igrm loks is ustomizl (s low.)
Digrm loks r intrnlly rprsnt s hyprgs. h DiGn rmwork ors mhnism to utomtilly kp th intrnl hyprgrph synhroniz with th igrm. Digrms r rt y positioning, rrrnging, n rsizing igrm loks. On th lvl o hyprgrphs, iting mns ing or lting hyprgs n mrging nos, thus onnting sugrphs. In orr to mk no-mrging simpl tsk, nos r rprsnt s invisil rs with rtin typs on th nvs, so-ll tntls. wo hyprnos r mrg i th orrsponing tntls with mthing typs ovrlp on th nvs. 4 Atthing tntls to igrm loks n giving thm pproprit typs is spii or igrm lss n igrm loks. Svrl untions r vill in th DiGn rmwork whih hv to ustomiz: (1) On rsult o th hyprgrph prsr is th intiition o orrt n inorrt sugrphs. DiGn ors th possiility to olor orrsponing inorrt igrm prts with rtin olor (.g., r), n orrt igrm prts with othr olors whr ovrlpping su-igrms r olor irntly. (2) Automti, usr-justl lyout is or s in th prvious DiGn vrsion. I igrm lok longing to orrt su-igrm is rsiz, th lyout o th ntir su-igrm is upt s sri in [3]. Rsizing igrm loks not longing to ny orrt su-igrm must hnl y th lok itsl. (3) Digrm loks my ontin. DiGn ors n iting winow whr ontnts my moii. 6.3 An itor h nw DiGn rmwork hs n us to rt smpl itor or s. Figur 7 shows snpshot o w pg 5 with th m itor pplt whih onsists o its min winow. It ontins img uttons to rt nw loks n nw viws (. Figs. 8 n 9). Whn rting nw lok y pushing th orrsponing img utton, th nwly rt lok is slt n n pl on th nvs y rg-n-rop in ny o th itors viws. Figurs 8 n 9 show th visul k on orrt n inorrt su-igrms. h igrm in Fig. 8 is orrt ; it is olor whit. Figur 9 shows th rsult whn tring th prviously orrt prt y moving th whil lok: now, th whil lok os not long to ny orrt su-igrm; it is olor r. h rmining loks ll prt to two orrt su-igrms. hy r olor irntly (whit n yllow) to istinguish thm. 4 Not tht hving ovrlpping tntls is not nssry onition or rprsnting th sm no. But th prviously prsnt hyprgrph prsr n l with suh prolms. 5 http://www2.inormtik.uni-rlngn./dign/ns-itor/ Figur 7: Srnshot o th w pg supplying n itor s on DiGn with hyprgrph support. 7 Rlt Work his work on DiGn whih now llows or r iting with prsr support is spilly rlt to signing visul lngug itors. hr xist mny pprohs to visul lngug spiition. A omplt ovrviw woul out o sop o this ppr. h most losly rlt pprohs r onstrint multist grmmrs (CMGs) [9], GnE [10], n visul lngug nvironmnt propos y Rkrs n Shürr [11]: (1) CMGs r gnrliztion o on-r hyprgrph grmmrs: A singl lhs nontrminl tokn n rogniz rom rhs multist o tokns s long s thy stisy proution-spii onstrints on sptil rltionships. CMGs r us to rogniz igrms whr igrm is rprsnt s multist o tokns. An inrmntl prsing lgorithm similr to th on prsnt in this ppr llows or r-styl iting o igrms n proviing k o rogniz igrms. Howvr, utomti lyout n omplx syntx-irt iting oprtions r not support. Sin onntivity o tokns is in in trms o onstrints, thr is no simpl strt rprsnttion o igrms lik hyprgrphs. h prs tr is th min intrnl t strutur. (2) GnE is n ojt-orint gnri grphil itor, i.., th usr n in omin-spii syntx n smntis. It provis or r-orm iting n ompriss n inrmntl prsr or sptil rltions. As or CMGs, GnE nithr supports omplx, syntx-irt iting
Figur 8: Srnshot o viw ontining orrt oprtionsnorutomtilyout. Howvr, GnE is s on sription logi n thror llows rsoning out igrms. (3) h most losly rlt pproh is th on propos y Rkrs n Shürr ut whih is not yt rliz. hy us two kins o grphs s intrnl rprsnttions o igrms: th sptil rltionship grph (SRG) strts rom th physil igrm lyout n rprsnts highr lvl sptil rltions. Aitionlly, n strt syntx grph (ASG) is kpt up-to-t with th SRG rprsnting th igrm s logil strutur. Con-snsitiv grph grmmrs r us to in th syntx o oth grphs. Fr iting o igrms is plnn to moiy th irst grph, syntx-irt iting is going to moiy th son. h tully othr grph is moii oringly. hror, kin o igrm smntis is vill y th ASG. Dirns twn DiGn n this proposl r th us o hyprgrphs whih sm to llow or mor nturl rprsnttion o igrms n usr intrtion turs lik irt mnipultion support n nimtion o igrms tht r rt rom th spiition [1]. his work is lso rlt to othr grphil prsing pprohs, whih n lssii into two min lsss: Approhs o th irst lss l with visul xprssions irtly n us grmmrs whr visul symols r sptilly rlt. Approhs o th son lss us n strt grph rprsnttion o th visul xprssion to nlyz. A grph prsr is thn ppli to this grph. h pproh prsnt in this ppr lls into th son lss. As n xmpl o th irst lss, Wittnurg t l. hv propos uniition-s grmmrs [12] whr visul symols r sptilly rlt ( ov, low ). Eh proution is on-r symol rplmnt rul with itionl onstrints on th symols sptil rltions. A ottom-up tulr prsing mtho onstruts rivtion trs. In ltr work [13], n Erly-styl pritiv prsr hs n propos or mor iint prsing. Howvr, on-rnss is still rquir. Golin s pitur ly- Figur 9: Srnshot o th viw tr tring th o Fig. 8 prt. Not th oloring o th inorrt whil lok n th two orrt su-igrms, whih r not orrt singl. out grmmrs [14] lso provi on-r rwriting o sptilly rlt symols. Howvr, ths grmmrs r mor xprssiv sin itionl non-on-r proutions my tk into ount som trminl on. r- DAGs thus rpl rivtion trs. As prsr, n olin CYK-styl ottom-up prsr similr to tht propos in this ppr is us. Jorg n Glinrt hv xtn th notion o pitur lyout grmmrs y introuing jny grmmrs [15] whih provi rtin jny oprtors ( ontins, intrsts ) n unoun proutions (proutions whih r not onstrin y sptil rltions o its rhs symols). hir inrmntl onlin prsing lgorithm, whih uss ottom-up n top-own phs, mks us o similr is lik th inrmntl hyprgrph prsr prsnt hr, ut it os not us n strt grph rprsnttion. As n xmpl o th son lss, Lutz hs prsnt hrt prsr or lowgrphs [16] s spil kin o igrms. Flowgrphs n onsir s spil s o hyprgrphs us in this ppr. h hrt prsr n us top-own s wll s ottom-up or on-r low grmmrs only. Rkrs n Shürr hv propos grph prsr not rstrit to on-r grmmrs [17]. hir prsing lgorithm uss ottom-up n thn top-own phs to (r)onstrut rivtion squns o th grph givn. In opposition to th prsr propos in this ppr, thy hv not ouss on inrmntl prsing n nlyzing synttilly inorrt grphs with orrt su-grphs. h vntg o th irst lss o pprohs is tht visul xprssions n irtly lt with; no itionl intrprttion in trms o n intrmit grph is n. Howvr, th son lss mks possil mor iint prsrs sin gs r xpliitly link through nos. Inst o hking sptil pnnis n rltions, rlt gs r immitly oun y hking nos togthr with gs visiting thm. Furthrmor, th strt
grph rprsnttion mks rsoning with visul xprssions sir. 8 Conlusions n utur work his ppr hs sri gnrl rmwork whih n ustomiz in orr to rt spii igrm itors. h min tur isuss hr ws its rwing tool hvior whih llows th usr to ritrrily position igrm loks. Digrm iting support is suppli y hyprgrph prsr tting orrt n inorrt igrm prts. h min rsults onsist o th ollowing our osrvtions: (1) Using hyprgrph prsr or onstruting syntti inormtion onlin whil th usr its th igrms is sil. (2) Dsriing igrm itor oms sir with this pproh, rpi prototyping is support: in orr to rt prototyp, only hyprgrph grmmr n th si igrm loks hv to provi. Aitionl optionl turs n ltr. his is not possil whn using syntx-irt iting whr vry possil iting tion hs to ntiipt. (3) Fr iting in rwing tool styl n gtting k on th orrtnss o it igrms llows or nturl iting. his is morovr support y not prvnting tmporlly inorrt igrms. (4) A rwk o this pproh is th lk o guin o th usr: syntx-irt iting ors th usr to rt orrt igrms. Hr it is th usr s tsk to know how orrt igrms r rt. h itor only tlls th usr wht prts r orrt or inorrt. DiGn lvs suiint topis or urrnt n utur work: Currnt work invstigts how n nimtion omponnt n into th rmwork whih will prsnt igrm tions s movi-lik nimtions. Othr urrnt n utur work is onsqun o th urrnt DiGn vrsion supporting on-r prsing only: mor xprssiv grmmr typs lik th rstrit on-snsitiv grmmrs sri in S. 5 hv to support y DiGn. Evntully, urthr work will provi ull gnrtor support or ustomizing th DiGn rmwork. h most vorl support woul oring mns o visully spiying igrm itor n gnrting th itor rom this visul spiition. Rrns [1] M. Mins n G. Vihstt, DiGn: A gnrtor or igrm itors proviing irt mnipultion n xution o igrms, In VL 95 [21], pp. 203 210. [2] G. Vihstt n M. Mins, Intrtion in rlly grphil usr intrs, In VL 94 [20], pp. 270 277. [3] M. Mins n G. Vihstt, Spiition o igrm itors proviing lyout justmnt with miniml hng, In VL 93 [19], pp. 324 329. [4] M. Mins n L. Shklr, A high-lvl visul lngug or gnrting w struturs, In VL 96 [22], p. 248. [5] C. Brg, Hyprgrphs, North-Holln, Amstrm, 1989. [6] F. Drws n H.-J. Krowski, A not on hyprg rplmnt, in Pro. 4th Int. Workshop on Grph Grmmrs n thir Applition to Computr Sin, LNCS 532, pp. 1 11, 1991. [7]. Ksmi, An iint rognition n syntx nlysis lgorithm or on-r lngugs, hnil Rport AFCRL-65-758, Air For Cmrig Rsrh Lortory, Bor, Mss., 1996. [8] D. Youngr, Rognition n prsing o on-r lngugs in tim n 3, Inormtion n Control, vol. 10, pp. 189 208, 1967. [9] S.S. Chok n K. Mrriott, Automti onstrution o usr intrs rom onstrint multist grmmrs, In VL 95 [21], pp. 242 249. [10] V. Hrslv n M. Wssl, GnE n itor with gnri smntis or orml rsoning out visul nottion, In VL 96 [22], pp. 204 211. [11] J. Rkrs n A. Shürr, A grph s rmwork or th implmnttion o visul nvironmnts, In VL 96 [22], pp. 148 155. [12] K. Wittnurg, L. Witzmn, n J. lly, Uniition-s grmmrs n tulr prsing or grphil lngugs, Journl o Visul Lngugs n Computing, vol. 2, pp. 347 370, 1991. [13] K. Wittnurg, Erly-styl prsing or rltionl grmmrs, In VL 92 [18], pp. 192 199. [14] E.J. Golin, Prsing visul lngugs with pitur lyout grmmrs, Journl o Visul Lngugs n Computing, vol. 2, pp. 371 393, 1991. [15] J. Jorg n E. Glinrt, Onlin prsing o visul lngugs using jny grmmrs, In VL 95 [21], pp. 250 257. [16] R. Lutz, Chrt prsing o lowgrphs, in Pro. 11th Int. Con. on Artiiil Intllign (IJCAI 89), Dtroit, Mihign, pp. 116 121, Aug. 1989. [17] J. Rkrs n A. Shürr, A grph grmmr pproh to grphil prsing, In VL 95 [21], pp. 195 202. [18] 1992 IEEE Workshop on Visul Lngugs, Sttl, Wshington. IEEE Computr Soity Prss, 1992. [19] 1993 IEEE Symp. on Visul Lngugs, Brgn, Norwy. IEEE Computr Soity Prss, Aug. 1993. [20] 1994 IEEE Symp. on Visul Lngugs, St. Louis, Missouri. IEEE Computr Soity Prss, Ot. 1994. [21] 1995 IEEE Symp. on Visul Lngugs, Drmstt, Grmny. IEEE Computr Soity Prss, Sp. 1995. [22] 1996 IEEE Symp. on Visul Lngugs (VL 96), Boulr, Coloro. IEEE Computr Soity Prss, Sp. 1996.