SD-project-22/trailminator/rules.jsgf
2022-06-22 10:28:36 +02:00

33 lines
1.3 KiB
Plaintext

#JSGF V1.0 UTF-8 pl;
grammar rules;
//from & to
public <rezerwuj> = [chciał[a]bym kupić bilet] [na pociąg] [z <stacja_poczatkowa>] [(do <stacja_koncowa>)];
<stacja_poczatkowa> = <stacja> {from};
<stacja_koncowa> = <stacja> {to};
<stacja> = Poznan | Warszawa | Wroclaw | Krakow | Gdansk | Poznań | Poznania | Warszawy | Wrocławia | Wroclawia | Krakowa | Gdańska | Gdanska;
//time
public <podaj_date> = [w] [najbliższy | najbliższą | przyszły | przyszłą] {closest} <dzien> {time};
<dzien> = dzisiaj | jutro | poniedziałek | wtorek | środę | czwartek | piątek | sobotę | niedzielę;
//count
public <liczba> = (0|1|2|3|4|5|6|7|8|9);
public <podaj_liczbe> = (<liczba>+){number};
//passanger count
public <passanger> = <liczba>{passangerCount} [bilet[y | ów]];
//discount count
public <discount> = <liczba>{discountedCount} [bilet[y | ów]] (z ulgą | ze zniżką) <discount_type>{discount_type};
<discount_type> = studencką | seniorską | uczniowską;
//seatType
public <seatType> = [poproszę] (<seat_window>{seatType} | <seat_middle>{seatType});
<seat_window> = [miejsce] pod oknem;
<seat_middle> = [miejsce] w środku | [miejsce] w przejściu | [miejsce] w przejściu;
//wagonType
public <wagonType> = [klasy | klasa] <class>{wagonType} [klasy | klasa];
<class> = pierwsza | druga | 1 | 2 | I | II;