Skip to content
Snippets Groups Projects
gprs.jsgf 3.45 KiB
Newer Older
  • Learn to ignore specific revisions
  • #JSGF V1.0;
    grammar ToBI_GPRS;
    
    public <task> = [<robot_name>] [(would | could) you] [please] <command> [please] [<robot_name>];
    
    <robot_name> = tobi | robot;
    
    Suchit Sharma's avatar
    Suchit Sharma committed
    <command> = <bring_command> | <goto_command> | <find_command> | <follow_command> | <cleanup_command> | <show_command> | <pointat_command>;
    
    
    <bring_command> = (<bringVerb> [<person>] [<article>] <grab_object> [<preposition> [<article>] <location>] [(to|into) [<article>] <second_location>]) | (<bringVerb> [<article>] <person> <preposition> <article> <location>);
    <goto_command> = <gotoVerb> <preposition> ([<article>] <location>);
    <follow_command> = <followVerb> <person>;
    <find_command> = <findVerb> [<article>] (<grab_object> | <person>) [in [<article>] <location>];
    <pointat_command> = <pointatVerb> [<article>] <location>;
    <learn_command> = <learnVerb> [<article>] (<person> | <location>);
    <cleanup_command> = <cleanupVerb> [<article> <room_class>];
    <show_command> = <showVerb> [<person>] (([<article>] <grab_object>) | ([the (path|way) to] [<article>] <location>)); 
    
    <bringVerb> = bring | carry | retrieve | fetch | get | give | put | attend | deliver | convey | gather | (pick up) | take | lead | grasp;
    <findVerb> = detect | find | (search [for]) | (check [for]) | acquire | attain | obtain | (look for);
    
    Suchit Sharma's avatar
    Suchit Sharma committed
    <pointatVerb> = (point at) | denote | direct | indicate | suggest | show;
    <showVerb> = show | demonstrate | present | (point at) | denote | direct | indicate | suggest;
    
    <gotoVerb> = navigate | go | approach | move | run | travel | ride;
    <followVerb> = follow | chase | (come after);
    <learnVerb> = learn | remember | memorize | determine | gain | study | train;
    <cleanupVerb> = (clean up) | (tidy up) | clear | (do up) | (straighten up);
    
    <person> = someone | <personal_pronoun> | <person_name> | (person | man | woman | guy | girl | boy | human | robot);
    <personal_pronoun> = him | her | me;
    <person_name> = james|john|robert|michael|william|david|richard|charles|linda|thomas|mary|patricia|joseph|dorothy|barbara|susan|jennifer|maria|elizabeth|margaret;
    
    
    Leroy John Rügemer's avatar
    Leroy John Rügemer committed
    <grab_object> = <bathroom_class> | <drink_class> | <snack_class> | <food_class> | <tool_class> | tool | (bathroom stuff) | drink | snack | object | food | something | stuff | item | beverage | things;
    <bathroom_class> = (shower gel) | (hair gel);
    <drink_class> = (orange juice) | (fruit juice) | (ice tea) | coffee | beer;
    <snack_class> = chocolates | (chewing gum) | peanuts;
    <food_class> = (noodle sauce) | (cat food) | dumplings | tacos; 
    <tool_class> = sponge | tape | (sole latex);
    
    <location> = <appliance_class> | <shelf_class> | <seat_class> | <table_class> | <door_class> | <exit_class> | exit | door | seating | utensil | location | room | appliance | shelf | seat | table | somewhere | apartment | furniture;
    
    Leroy John Rügemer's avatar
    Leroy John Rügemer committed
    <second_location> = <appliance_class> | <shelf_class> | <seat_class> | <table_class> | <door_class> | door | seating | utensil | location | room | appliance | shelf | seat | table | somewhere | apartment | furniture;
    
    Leroy John Rügemer's avatar
    Leroy John Rügemer committed
    <appliance_class> = (coat rack) | kitchen_counter | fridge | bar;
    <shelf_class> = book_shelf | (food shelf);
    
    <seat_class> = <seating_class>;
    
    Leroy John Rügemer's avatar
    Leroy John Rügemer committed
    <seating_class> = sofa | bed;
    
    Leroy John Rügemer's avatar
    Leroy John Rügemer committed
    <table_class> = kitchen_table | desk | side_table | couch_table | (bedroom table);
    
    <room_class> = kitchen | living_room | bedroom | hallway;
    
    Leroy John Rügemer's avatar
    Leroy John Rügemer committed
    <utensil_class> = trash_bin;
    
    <exit_class> = (exit door) | (entry door);
    
    Leroy John Rügemer's avatar
    Leroy John Rügemer committed
    
    
    Suchit Sharma's avatar
    Suchit Sharma committed
    <preposition> = into | to | from | on;
    
    <further_preposition> = (on [top of]) | in | (next to) | at | near;
    
    <article> = the | an | a | some | this;