diff options
| author | aarne <aarne@cs.chalmers.se> | 2005-12-09 16:28:45 +0000 |
|---|---|---|
| committer | aarne <aarne@cs.chalmers.se> | 2005-12-09 16:28:45 +0000 |
| commit | 5766d566a8477cd8d651eb51cd6fb2359a976be5 (patch) | |
| tree | 2cc3b1d1a709cf3941892e82889117305616436f /examples/tram0 | |
| parent | f63542c17fd5494166e7ed75809f4bc5516c0cd1 (diff) | |
multimodal for Swedish
Diffstat (limited to 'examples/tram0')
| -rw-r--r-- | examples/tram0/README | 15 | ||||
| -rw-r--r-- | examples/tram0/Tram.gf | 33 | ||||
| -rw-r--r-- | examples/tram0/TramEng.gf | 5 | ||||
| -rw-r--r-- | examples/tram0/TramFre.gf | 5 | ||||
| -rw-r--r-- | examples/tram0/TramI.gf | 44 | ||||
| -rw-r--r-- | examples/tram0/TramSwe.gf | 5 |
6 files changed, 107 insertions, 0 deletions
diff --git a/examples/tram0/README b/examples/tram0/README new file mode 100644 index 000000000..552b160f3 --- /dev/null +++ b/examples/tram0/README @@ -0,0 +1,15 @@ +Björn Bringert's tram grammars (user side, without place names) +implemented as an example of lib/resource/abstract/Multimodal. + +For documentation of the original system, see + + http://www.cs.chalmers.se/~bringert/gf/tramdemo.html + +To try, do in gf + + i -src TramEng.gf + gr | l -tr | p + +Clicks appear as coordinates on the right of the semicolon. + +AR 7/11/2005. diff --git a/examples/tram0/Tram.gf b/examples/tram0/Tram.gf new file mode 100644 index 000000000..bcd9f7b7c --- /dev/null +++ b/examples/tram0/Tram.gf @@ -0,0 +1,33 @@ +abstract Tram = { + +cat + Dep ; -- from here, from Angered + Dest ; -- to here, to Angered + Query ; -- message sent to the dialogue manager: sequentialized + Input ; -- user input: parallel text and clicks + Click ; -- map clicks + +fun + QInput : Input -> Query ; -- sequentialize user input + +fun + GoFromTo : Dep -> Dest -> Input ; -- user input "want to go from a to b" + GoToFrom : Dest -> Dep -> Input ; -- user input "want to go to a from b" + ComeFrom : Dep -> Input ; -- user input "want to come from x (to where I am now) + GoTo : Dest -> Input ; -- user input "want to go to x (from where I am now) + + DepClick : Click -> Dep ; -- "from here" with click + DestClick : Click -> Dest ; -- "to here" with click + DepHere : Dep ; -- "from here" indexical + DestHere : Dest ; -- "to here" indexical + DepNamed : String -> Dep ; -- from a place name + DestNamed : String -> Dest ; -- to a place name + + CCoord : Int -> Int -> Click ; + +--- the syntax of here (prep + adverb, not prep + np) prevent these +-- Place ; -- any way to identify a place: name, click, or indexical "here" +-- PClick : Click -> Place ; -- click associated with a "here" +-- PHere : Place ; -- indexical "here", without a click + +} diff --git a/examples/tram0/TramEng.gf b/examples/tram0/TramEng.gf new file mode 100644 index 000000000..58a7bd8de --- /dev/null +++ b/examples/tram0/TramEng.gf @@ -0,0 +1,5 @@ +--# -path=.:resource/abstract:resource/english:prelude + +concrete TramEng of Tram = TramI with + (Multimodal = MultimodalEng), + (Math = MathEng) ; diff --git a/examples/tram0/TramFre.gf b/examples/tram0/TramFre.gf new file mode 100644 index 000000000..4d6909640 --- /dev/null +++ b/examples/tram0/TramFre.gf @@ -0,0 +1,5 @@ +--# -path=.:resource/abstract:resource/french:resource/romance:prelude + +concrete TramFre of Tram = TramI with + (Multimodal = MultimodalFre), + (Math = MathFre) ; diff --git a/examples/tram0/TramI.gf b/examples/tram0/TramI.gf new file mode 100644 index 000000000..384cdbf3b --- /dev/null +++ b/examples/tram0/TramI.gf @@ -0,0 +1,44 @@ +incomplete concrete TramI of Tram = open Multimodal, Math in { + +flags startcat=Query ; lexer=textlit ; + +lincat + Dep, Dest = DAdv ; + Query = Phr ; -- top level, plain string + Input = MS ; -- two parallel sequences (text and clicks) + Click = Point ; + +lin + QInput i = SentMS PPos i ; + + GoFromTo x y = + ModDemV want_VV go_V (DemNP i_NP) + (ConsDAdv x (ConsDAdv y BaseDAdv)) ; + + GoToFrom x y = + ModDemV want_VV go_V (DemNP i_NP) + (ConsDAdv x (ConsDAdv y BaseDAdv)) ; + + ComeFrom x = + ModDemV want_VV come_V (DemNP i_NP) + (ConsDAdv x BaseDAdv) ; + + GoTo x = + ModDemV want_VV go_V (DemNP i_NP) + (ConsDAdv x BaseDAdv) ; + + DepClick c = here7from_DAdv c ; + DestClick c = here7to_DAdv c ; + DepHere = DemAdv here7from_Adv ; + DestHere = DemAdv here7to_Adv ; + DepNamed s = PrepDNP from_Prep (DemNP (UsePN (SymbPN s))) ; + DestNamed s = PrepDNP to_Prep (DemNP (UsePN (SymbPN s))) ; + + CCoord x y = {s5 = "(" ++ x.s ++ "," ++ y.s ++ ")" ; lock_Point = <>} ; + +-- Place = DNP ; -- name + click - not possible for "here" +-- PClick c = this_DNP c ; +-- PHere = DemNP this_NP ; +-- PNamed s = DemNP (UsePN (SymbPN s)) ; + +} diff --git a/examples/tram0/TramSwe.gf b/examples/tram0/TramSwe.gf new file mode 100644 index 000000000..6875fafa2 --- /dev/null +++ b/examples/tram0/TramSwe.gf @@ -0,0 +1,5 @@ +--# -path=.:resource/abstract:resource/swedish:resource/scandinavian:prelude + +concrete TramSwe of Tram = TramI with + (Multimodal = MultimodalSwe), + (Math = MathSwe) ; |
