diff --git a/psGrammar/tasks/gpsr/gpsr23.jsgf b/psGrammar/tasks/gpsr/gpsr23.jsgf index be6daf4d5eedbf8e3842ea42731874f94674eaa5..cd5ef14dc7f4e74d89ccc665c59dab894e2e69ba 100644 --- a/psGrammar/tasks/gpsr/gpsr23.jsgf +++ b/psGrammar/tasks/gpsr/gpsr23.jsgf @@ -1,28 +1,29 @@ #JSGF V1.0; grammar speechRecognition; + public <sentence> = [could you | robot | tobi] [please] <command>; -<command> = (<cmdfndppl> | <cmdfndobj> | <cmdguide> | <cmdfollow> | <cmdfollowout> | <cmdincomplete> | <cmdman> | <complexman> | <cmdpartyhost>); +<command> = (<cmdfndppl> | <cmdfndobj> | <cmdguide> | <cmdfollow> | <cmdfollowout> | <cmdincomplete> | <cmdman> | <complexman> | <cmdpartyhost>); -<cmdfndppl> = <tellPrsInfoInLoc> | <countPrsInRoom>; +<cmdfndppl> = <tellPrsInfoInLoc> | <countPrsInRoom>; -<cmdfndobj> = <findObjInRoom> | <countObjOnPlcmt> | <tellCatPropOnPlcmt> | <tellObjPropOnPlcmt>; +<cmdfndobj> = <findObjInRoom> | <countObjOnPlcmt> | <tellCatPropOnPlcmt> | <tellObjPropOnPlcmt>; <cmdguide> = <guideNameFromBeacToBeac> | (<meetPrsAtBeac> and <guidePrsToBeacon>) | (<goToLoc> <meetName> and <guidePrsToBeacon>); -<cmdfollow> = <followNameFromBeacToRoom> | (<meetPrsAtBeac> and (<followPrs> | <followPrsToRoom>)) | (<goToLoc> <meetName> and (<followPrs> | <followPrsToRoom>)); +<cmdfollow> = <followNameFromBeacToRoom> | (<meetPrsAtBeac> and (<followPrs> | <followPrsToRoom>)) | (<goToLoc> <meetName> and (<followPrs> | <followPrsToRoom>)); <cmdfollowout> = <meetPrsAtBeac> <followPrs> and (<goToLoc> | <guidePrsBack>); -<cmdincomplete> = skyler; +<cmdincomplete> = <followName> | <deliverObjToMe> | <guidePrsToBeacon> | (<goToLoc> <meetName> and <guidePrsIncomplete>); <cmdman> = <bringMeObjFromPlcmt> | (<takeObjFromPlcmt> and (<deliverObjPronToMe> | <deliverObjToNameAtBeac>)) | (<takeObjFromPlcmt> and <placeObjPronOnPlcmt>); -<complexman> = skyler; +<complexman> = skyler; -<cmdpartyhost> = skyler; +<cmdpartyhost> = <serveDrinks> | (<meetPrsAtBeac> and <introduce>) | (<meetPrsAtBeac> and <requestleave>) | (<meetPrsAtBeac> and <guidePrsToTaxi>); <goToLoc> = <V_go> <toLocPrep> (<NP_room> | <NP_placement> | <NP_beacon>); @@ -46,11 +47,13 @@ public <sentence> = [could you | robot | tobi] [please] <command>; <followPrs> = <V_follow> <NP_personalpron>; <followPrsToRoom> = <V_follow> <NP_personalpron> <toLocPrep> <NP_roomTwo>; +<followName> = <V_follow> <NP_name>; <followNameFromBeacToRoom> = <V_follow> <NP_name> <fromLocPrep> <NP_beacon> <toLocPrep> <NP_roomTwo>; <meetName> = <V_meet> <NP_name>; <meetPrsAtBeac> = <V_meet> <NP_name> <atLocPrep> <NP_beacon>; + <bringMeObj> = <V_bring> <NP_me> <NP_object>; <bringMeObjFromPlcmt> = <V_bring> <NP_me> <NP_object> <fromLocPrep> <NP_placement>; @@ -66,11 +69,17 @@ public <sentence> = [could you | robot | tobi] [please] <command>; <deliverObjToGestPrsInRoom> = <V_deliver> [<NP_objectpron>] <NP_object> <deliverPrep> <NP_gestperson> <inLocPrep> <NP_roomTwo>; <deliverObjToNameAtBeac> = <V_deliver> <NP_objectpron> <deliverPrep> <NP_name> <atLocPrep> <NP_beaconTwo>; +<guidePrsIncomplete> = <V_guide> <NP_name>; <guidePrsBack> = <V_guide> <NP_personalpron> back; <guidePrsToBeacon> = <V_guide> <NP_personalpron> <toLocPrep> <NP_beaconTwo>; <guideNameFromBeacToBeac> = <V_guide> <NP_name> <fromLocPrep> <NP_beacon> <toLocPrep> <NP_beaconTwo>; <guideNameToBeacFindAtBeac> = <V_guide> <NP_name> <toLocPrep> <NP_beaconTwo> you (may | can | will) find (them | him | her) <atLocPrep> <NP_beacon>; +<serveDrinks> = <V_serve> <NP_partyfood> to ((everyone | everybody) | (all the <NP_agegenderpersonplural>)) in the room; +<introduce> = <V_introduce> <NP_personalpron> to <NP_agegenderpersonplural> | (<NP_name> <LocPrep> <NP_beaconTwo>); +<requestleave> = <V_ask> <NP_personalpron> to <V_leave>; +<guidePrsToTaxi> = <V_guide> <NP_personalpron> <toLocPrep> <NP_taxi>; + <deliverPrep> = to; <placePrep> = on; @@ -96,8 +105,13 @@ public <sentence> = [could you | robot | tobi] [please] <command>; <V_guide> = guide | escort | take | lead | accompany; <V_tell> = tell; <V_count> = tell me how many; +<V_serve> = serve | arrange | deliver | distribute | give | provide; +<V_introduce> = introduce; +<V_ask> = ask; +<V_leave> = leave; -<NP_object> = (the <N_object>) | (a <N_object>) | (an <N_object>) | (<N_object>); + +<NP_object> = (the <N_object>) | (a <N_object>) | (an <N_object>) | (<N_object>); <NP_objectpron> = (<N_objectpron>); <NP_category> = (the <N_category>) | <N_category>; <NP_objectprop> = (the <N_objectprop>); @@ -112,32 +126,39 @@ public <sentence> = [could you | robot | tobi] [please] <command>; <NP_poseperson> = (a <N_poseperson>); <NP_genderperson> = (a <N_genderperson>); <NP_genderpersonplural> = (<N_genderpersonplural>); +<NP_agegenderpersonplural> = (<N_agegenderpersonplural>); <NP_name> = <N_name>; <NP_talk> = <N_talk>; <NP_answer> = <N_answer>; <NP_personalpron> = <N_personalpron>; <NP_personattribute> = (the <N_personattribute>); <NP_posture> = <N_posture>; - -<N_objectpron> = it; -<N_objectprop> = biggest | largest | smallest | heaviest | lightest | thinnest; -<N_me> = me; -<N_gestperson> = (person waving) | (person (raising | rising) [their] (left|right) arm) | (person pointing to the (left|right)) | (person calling); -<N_poseperson> = (person sitting) | (person standing) | (person lying down); -<N_genderperson> = man | woman | boy | girl | (male person) | (female person); -<N_genderpersonplural> = men | women | boys | girls | male | female; -<N_talk> = (something about yourself) | (the time) | (what day is (today | tomorrow)) | (your teams (name | country | affiliation)) | (the day of the (week | month)) | (a joke); -<N_answer> = (a question); -<N_personalpron> = them | her | him; +<NP_taxi> = (the <N_taxi>); +<NP_partyfood> = <N_partyfood>; + +<N_objectpron> = it; +<N_objectprop> = biggest | largest | smallest | heaviest | lightest | thinnest; +<N_me> = me; +<N_gestperson> = (person waving) | (person (raising | rising) [their] (left|right) arm) | (person pointing to the (left|right)) | (person calling); +<N_poseperson> = (person sitting) | (person standing) | (person lying down); +<N_genderperson> = man | woman | boy | girl | (male person) | (female person); +<N_genderpersonplural> = men | women | boys | girls | male | female; +<N_agegenderpersonplural> = people | men | women | guests | elders | children; +<N_talk> = (something about yourself) | (the time) | (what day is (today | tomorrow)) | (your teams (name | country | affiliation)) | (the day of the (week | month)) | (a joke); +<N_answer> = (a question); +<N_personalpron> = them | her | him; <N_personattribute> = name | gender | pose; -<N_posture> = sitting | standing | lying down; - -<N_object> = bleach | (dishwasher tab) | (tray) | (basket) | (bag) | (fork) | (knife) | spoon | plate | bowl | cup | milk | coke | milo | banana | pear | orange | peach | mustard | spam | sugar | pringles | crackers | cornflakes; -<N_category> = (cleaning supplies) | containers | cutlery | drinks | fruits | (pantry items) | snacks; -<N_room> = kitchen | (living room) | bedroom | (dining room); -<N_roomTwo> = kitchen | (living room) | bedroom | (dining room); -<N_placement> = (small cabinet) | (side table) | (ikea table); -<N_placementTwo> = (small cabinet) | (side table) | (ikea table); -<N_beacon> = (seat one) | (seat two) | (seat three) | (seat four) | (seat five) | (seat six) | (small cabinet) | (side table) | (ikea table) | exit | entrance; -<N_beaconTwo> = (seat one) | (seat two) | (seat three) | (seat four) | (seat five) | (seat six) | (small cabinet) | (side table) | (ikea table) | exit | entrance; -<N_name> = alex | charlie | elizabeth | francis | jennifer | linda | mary | patricia | james | john | michael | robert | robin | skyler | william; +<N_posture> = sitting | standing | lying down; + + +<N_object> = bleach | (dishwasher tab) | (tray) | (basket) | (bag) | (fork) | (knife) | spoon | plate | bowl | cup | milk | coke | milo | banana | pear | orange | peach | mustard | spam | sugar | pringles | crackers | cornflakes; +<N_category> = (cleaning supplies) | containers | cutlery | drinks | fruits | (pantry items) | snacks; +<N_room> = kitchen | (living room) | bedroom | (dining room); +<N_roomTwo> = kitchen | (living room) | bedroom | (dining room); +<N_placement> = (small cabinet) | (side table) | (ikea table); +<N_placementTwo> = (small cabinet) | (side table) | (ikea table); +<N_beacon> = (seat one) | (seat two) | (seat three) | (seat four) | (seat five) | (seat six) | (small cabinet) | (side table) | (ikea table) | exit | entrance; +<N_beaconTwo> = (seat one) | (seat two) | (seat three) | (seat four) | (seat five) | (seat six) | (small cabinet) | (side table) | (ikea table) | exit | entrance; +<N_name> = alex | charlie | elizabeth | francis | jennifer | linda | mary | patricia | james | john | michael | robert | robin | skyler | william; +<N_taxi> = taxi; +<N_partyfood> = snacks | drinks;