swh:1:snp:b958e3aa64f6b1663929789c8cf28d019f55f57d
Raw File
Tip revision: 6b9bf3964385d0c16d262796d9e4a3a30a52dafd authored by Software Heritage on 12 October 2020, 00:00:00 UTC
hal: Deposit 1045 in collection hal
Tip revision: 6b9bf39
domotic_multimedia_grammar_10aout_emmanuel_corrected_ver4.jsgf
#JSGF V1.0;
grammar sample;
public <MAIN> = <startPolite> ( <all> | <all_multimedia> ) ;
<startPolite> =  ok vesta ;
<det_plural> =  les ;
<det_masc> =  le ;
<det_femi> =  la ;
<preposition> =  de  |  à ;
<preposition_masc> =  du ;
<preposition_femi> =  de la ;
<tous> =  tous ;
<toutes> =  toutes ;

<indicator> =  à la moitié  ;
<pourcentage> = <preposition> (  20 %  |  50 %  |  80 %  );
<indic_percent> = <indicator> | <pourcentage> ;


<ouvrants_masc> =  volet  |  store  |  portail ;
<ouvrants_femi> =  porte ;
<ouvrants_masc_plural> =  volets  |  stores ;
<ouvrants_plural> = <ouvrants_masc_plural> ;
<ouvrants> = ( <det_masc> <ouvrants_masc> ) | ( <det_femi> <ouvrants_femi> ) | ( [<tous>] <det_plural> <ouvrants_plural> ) ;
<prepos_ouvrants> = ( <preposition_masc> <ouvrants_masc> ) | ( <preposition_femi> <ouvrants_femi> );


<eclairage_masc1> =  luminaire ;
<eclairage_masc2> =  éclairage du jardin  |  éclairage de la piscine ;
<eclairage_femi> =  lampe  |  lumière ;

<eclairage_masc_plural_ext> =  éclairages du jardin  |  éclairages de la piscine ;
<eclairage_masc_plural_int> =  luminaires ;
<eclairage_masc_plural> = <eclairage_masc_plural_ext> | <eclairage_masc_plural_int> ;


<eclairage_femi_plural> =  lampes  |  lumières  ;
<eclairage_plural> = <eclairage_masc_plural> | <eclairage_femi_plural> ;
<prepos_eclairage> = ( du  <eclairage_masc1> ) | ( de l' <eclairage_masc2> ) | ( <preposition_femi> <eclairage_femi> );
<eclairage> = ( le  <eclairage_masc1> ) | ( l' <eclairage_masc2> ) | ( <det_femi> <eclairage_femi> ) | ( <det_plural> <eclairage_plural> );


<chauffage_masc> =  chauffage  |  chauffe-eau ;
<climatisation_femi> =  climatisation ;
<chauffage> = ( <det_masc> <chauffage_masc> ) | ( <det_femi> <climatisation_femi> ) ;
<prepos_chauffage> = ( <preposition_masc> <chauffage_masc> ) | ( <preposition_femi> <climatisation_femi> );


<alarmes_masc> =  détecteur d' intrusion  |  transmetteur  |  détecteur d' incendie ;
<alarmes_femi> =  centrale  |  porte  |  télécommande ;
<alarmes_plural> =  détecteurs d' intrusion  |  transmetteurs  |  détecteurs d' incendie  |  portes  |  télécommandes ;
<alarmes> = ( <det_masc> <alarmes_masc> ) | ( <det_femi> <alarmes_femi> ) | ( <det_plural> <alarmes_plural> );
<alarmes_devices> =  humidité  |  monoxyde de carbone  |  dioxyde de carbone  |  composés organiques volatiles  |  fuite  (  de gaz  |  d' eau  ) |  panne électrique  |  sonde de réfrigérateur ;
<prepos_alarmes> = ( <preposition_masc> <alarmes_masc> ) | ( <preposition_femi> <alarmes_femi> );

<video_femi> =  caméra ;
<Video> =  <det_femi> <video_femi> ;


<wishes> =  je veux  |  je voudrais  |  je souhaite  ;

<on_off_verbs_inf> = [<wishes>] (  allumer  |  éteindre  |  couper  );
<on_off_verbs_noninf> =  allume  |  éteins  |  coupe  ;
<on_off> =  <on_off_verbs_inf> | <on_off_verbs_noninf> ;

<increase_reduce_verbs_inf> = [<wishes>] (  augmenter  |  diminuer  |  baisser  |  monter  )  ;
<increase_reduce_verbs_noninf> =  augmente  |  diminue  |  baisse  |  monte  ;
<increase_reduce> =  <increase_reduce_verbs_inf> | <increase_reduce_verbs_noninf> ;

<up_down_verbs_inf> = [<wishes>] (  monter  |  descendre  ) ;
<up_down_verbs_noninf> =  monte  |  descends ;
<up_down> = <up_down_verbs_inf> | <up_down_verbs_noninf> ;

<enable_disable_verbs_inf> = [<wishes>] (  activer  |  désactiver  ) ;
<enable_disable_verbs_noninf> =  active  |  désactive ;
<enable_disable> = <enable_disable_verbs_inf> | <enable_disable_verbs_noninf> ;

<start_stop_verbs_inf> = [<wishes>] (  démarrer  |  arrêter  );
<start_stop_verbs_noninf> =  démarre  |  arrête ;
<start_stop> = <start_stop_verbs_inf> | <start_stop_verbs_noninf> ;

<open_close_verbs_inf> = [<wishes>] (  ouvrir  |  fermer  );
<open_close_verbs_noninf> =   ouvre  |  ferme ;
<open_close> = <open_close_verbs_inf> | <open_close_verbs_noninf> ;

<programmable> = <on_off> | <up_down> ;

<inside_outside_masc> =  intérieur  |  extérieur ;
<inside_outside_femi> =  intérieure  |  extérieure ;
<inside_outside> = <inside_outside_masc> ;
<room_masc> =  salon ;
<room_femi> =  cuisine  |  chambre ;
<room_plur> =  chambres ;
<prepos_room> = ( <preposition_masc> <room_masc> ) | ( <preposition_femi> <room_femi> );
<in_room> = (  dans le  <room_masc> ) | (  dans la  <room_femi> );



################# Ouvrants;
<basics_ouvrants> =  <up_down> |  arrêter  |  arrête ;
<indicators_ouvrants> =  aux trois quarts  | <indic_percent> ;
<actions1_ouvrants> = ( <basics_ouvrants> ( <ouvrants> [<indicator>] | [<indicator>] <ouvrants> ) ) | ( <open_close> <det_femi> (  porte  ) );
<actions2_ouvrants> = <open_close> ( ( ( <det_femi> porte [ du garage ] ) | [ toutes ] <det_plural> portes ) | ( <det_masc>  portail ) ) ;
<actions3_ouvrants> = ( ( <open_close> [<indicators_ouvrants>] ) ( ( <det_masc> (  volet  |  store  ) ) | [<tous>] <det_plural> (  volets  |  stores  ) ) );
<actions_ouvrants> = <actions1_ouvrants> | <actions2_ouvrants> | <actions3_ouvrants>;

<status_ouvrants> =  est-ce que  ( ( <det_masc> <ouvrants_masc>  est  (  ouvert  |  fermé  ) ) | ( <det_femi> <ouvrants_femi>  est  (  ouverte  |  fermée  ) ) | ( <det_plural> <ouvrants_masc_plural>  sont  (  ouverts  |  fermés  ) ) )   ;



################# Eclairage;
<actions_eclairage_normal> = <on_off> <eclairage> | <on_off> (  la  <eclairage_femi> |   le  <eclairage_masc1> | [<tous>]  les  <eclairage_masc_plural_int> |  [<toutes>]  les  <eclairage_femi_plural> ) [<prepos_room>] | ( <increase_reduce> ( [<pourcentage>] ( <eclairage> | (  la  <eclairage_femi> ) | (  le  <eclairage_masc1> ) ) [<prepos_room>] | ( <eclairage> | (  la  <eclairage_femi> ) | (  le  <eclairage_masc1> ) ) [<pourcentage>] [<prepos_room>] ) );

<progressivement> =  progressivement  ;
<actions_eclairage> = <actions_eclairage_normal> [<progressivement>] ;

<status_eclairage> =  est-ce que  ( ( ( <det_masc> <eclairage_masc1> | l' <eclairage_masc2> )  est  (  allumé  |  éteint  ) ) | ( <det_femi> <eclairage_femi>  est  (  allumée  |  éteinte  ) ) | ( <det_plural> <eclairage_masc_plural>  sont  (  allumés  |  éteints  ) ) | ( <det_plural> <eclairage_femi_plural>  sont  (  allumées  |  éteintes  ) ) )   ;





################# Thermique;
<actions1_thermique> = ( <on_off> <chauffage> ) | ( <increase_reduce> (  la température  |  le chauffage  )  ( <temperature_de> | <temperature_a> ) [<in_room>] ) ;
<levels_thermique> =  confort  |  réduit  |  absence  |  hors gel  |  coupé  |  fermé  ;
<actions2_thermique> =  chauffage en mode  <levels_thermique> ;
<temperature_de> = de  (  1 degré  |  (  2  |  3  |  4  |  5  ) degrés  )  ;
<temperature_a> = (  à  (  15  |  16  |  17  |   18  |   19  |  20  |   21  |   22  |   23  |   24  |  25  ) )  degrés ;
#<#actions_thermique> = actions1_thermique | actions2_thermique;
<actions_thermique> = <actions1_thermique> | <actions2_thermique>;

<status_thermique> =  est-ce que  ( ( <det_masc> <chauffage_masc>  est  (  allumé  |  éteint  ) ) | ( <det_femi> <climatisation_femi>  est  (  allumée  |  éteinte  ) ) )   ;



################# Alarme;
<action_alarme> = ( <enable_disable> | <on_off> )  la surveillance  ( [<inside_outside_femi>] | [<prepos_room>] ) |  état du  <ouvrants_masc> |  état de la  <ouvrants_femi> |  état des  <ouvrants_plural>  ;


################# Capteurs;
<action_capteurs> = (  température  [ du ] ( (  capteur   ( <inside_outside> | <prepos_room> ) ) ) ) |  état du capteur  <alarmes_devices> |  moyenne   ( (  temperature  ( <inside_outside_femi> | <prepos_room> ) ) | <alarmes_devices> );



################# Vidéos;
<action_videos> = <enable_disable> <Video> [<prepos_room>];
<status_video> =  est-ce que  <Video>  est  (  allumée  |  éteinte  ) [<sub_video>]   ;
<sub_video> =  dans  ( ( <det_masc> <room_masc> ) | ( <det_femi> <room_femi> ) ) ;
################# Consommation;
<action1_conso> = (  quelle est la consommation  <energy>    ) | ( (  ai-je  |  est-ce que j' ai  )  plus consommé  <element> <date>  par rapport  <dateBefore>    );
<action2_conso> =  différence de consommation  <element>  entre  <date>  et  <dateBefore2> ;
<action_conso> = <action1_conso> | <action2_conso>;
<electric_devices> = ( <prepos_ouvrants> | <prepos_chauffage> | <prepos_eclairage> );
<water_devices> = <prepos_chauffage> ;
<gas_devices> = <prepos_chauffage> ;
<element> =  en eau  |  en gaz  |  en électricité  |  en chauffage ;
<energy> = ( [<time>]  en eau  ) | ( [<time>]  en gaz  [<gas_devices>] ) | (  électrique  [<time>] [<electric_devices>] ) |  en chauffage ;
<time> =  quotidienne  |  par jour  |  par mois  |  par an  |  actuelle  |  annuelle ;
<device> = <ouvrants> | <chauffage> | <eclairage> | <chauffage> ;
<metiers_masc> = <det_masc> <ouvrants_masc> | <det_masc> <eclairage_masc1> | l' <eclairage_masc2> | <det_masc> <chauffage_masc> | <det_masc> <alarmes_masc> ;
<metiers_femi> = <det_femi> ( <ouvrants_femi> | <eclairage_femi> | <climatisation_femi> | <alarmes_femi> );
<metiers_plural> = <det_plural> ( <ouvrants_plural> | <eclairage_plural> | <alarmes_plural> );


<date> =  cette année  |  ce mois-ci ;
<dateBefore> =  à l' année dernière   |  au mois dernier ;
<dateBefore2> =  l' année dernière   |  le mois dernier ;


<fonctionnement> =  est-ce que  ( ( ( <metiers_masc> | <metiers_femi> )  fonctionne  ) | ( <metiers_plural>  fonctionnent  ) )   ;


<status> = <status_ouvrants> | <status_eclairage> | <status_thermique> | <status_video> ;


<all> = <actions_ouvrants> | <actions_eclairage> | <actions_thermique> | <action_alarme> | <action_capteurs> | <action_videos> | <action_conso> | <fonctionnement> | <status>;
<channelnumber> =  1  |  2  |  3  |  4  |  5  ;

<channel> =  tf1  |  france 2  |  france 3  |  canal plus  |  france 5  |  m6  |  arte  |  d8  |  w9  |  tmc  |  nt1  |  nrj12  |  lcp  |  france 4  |  bfmtv  |  itele  |  d17  |  gulli  |  france o  |  l'équipe 21  |  rmc  |  numéro 23  |  chérie 25  |  6ter  |  hd1 ;

<hour> = ( (  2  |  3  |  4  |  5  |  6 | 13 | 16 )  heures  [<minutes>] ) |  midi  [<minutes>] |  minuit  [<minutes>] |  1   heure  [<minutes>] ;

<minutes> =  5  |  10  |  15  |  20  |  30 | 45 |  et quart  |  et demi  |  moins le quart ;

<period_hour> = ( (  2  |  3  |  4  |  5  )  heures  [<minutes>] ) | (  1   heure  [<minutes>] );

<prep_masc> =  ce  ;
<prep_vow> =  cet  ;
<prep_neut_past> =   hier  |  avant-hier   ;
<prep_neut> =   aujourd'hui  |  demain  |  après-demain  ;
<prep_femi> =  cette  ;
<time_masc> =  soir  |  matin  |  midi  |  après-midi  ;
<time_masc_vow> =  après-midi  ;
<time_femi> =  nuit  ;
<prep_time> = <prep_masc> <time_masc> | <prep_femi> <time_femi> | <prep_vow> <time_masc_vow> | <prep_neut> ( <time_masc> | <time_masc_vow> );
<prep_time_past> =  <prep_neut_past> ( <time_masc> | <time_masc_vow> );

<avoir_past> =  avait ;
<avoir_pres> =  a ;
<avoir_fut> =  aurait  |  aura ;

<choice_time_past> = <avoir_past> <prep_time_past> | <avoir_past> ( <prep_vow> <time_masc_vow> | <prep_masc> <time_masc> );
<choice_time> = ( <avoir_pres> | <avoir_fut> ) <prep_time> ;

<increase_reduce_verbs_inf> =  [<wishes>] (  augmenter  |  diminuer  |  baisser  |  monter  ) ;
<increase_reduce_verbs> =  augmente  |  diminue  |  baisse  |  monte ;
<increase_reduce> = <increase_reduce_verbs> | <increase_reduce_verbs_inf> ;

<on_off_verbs_inf> = [<wishes>] (  allumer  |  éteindre  );
<on_off_verbs> =   allume  |  éteins ;
<on_off> = <on_off_verbs_inf> | <on_off_verbs> ;

<tv> =  télévision  |  télé  |  tv  ;
<power_tv> = <on_off>  la  <tv> ;

<volume_level> =  1  |  2  |  3  |  4  |  5  | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |  16 | 17 |  18 | 19 | 20 ;
<volume_level_with_prep> = (  à  |  de  ) <volume_level> ;
<changevolume> = ( <increase_reduce>  le volume  [<volume_level_with_prep>] ) | ( (  couper  |  coupe  )  le son  ) | ( (  mettre  |  mets  )  le son sur  <volume_level> ) | (  volume à  <volume_level> );
<changechannel> = (  chaîne  (  suivante  |  précédente  ) ) | (  programme  (  suivant  |  précédent  ) ) | ( (  mettre  |  mets  )  la  <channelnumber> );
<commands_level_one> =  lecture  |  pause  | ( (  plus  |  moins  )  fort  ) |  veille  |  réveil  |  mute  | (  zappe sur  [ la chaîne ] <channel> );

<record_verbs_inf> = [<wishes>]  enregistrer  ;
<record_verbs> =  enregistre ;
<record> = <record_verbs_inf> | <record_verbs> ;

<commands_level_three> = <record> [ la chaîne ] <channel> [<start_hour>]  durant  <period_hour> ;
<start_hour> =  à partir de  <hour> ;


<voir> =  voir  |  regarder ;

<question_1> = ( <wishes> <voir> |  qu'est-ce qu'il y a à  |  y'a quoi à  )  la <tv>  ;
<answer_1> =  et  [ beaucoup ]  plus tard  ;
<answer_2> =  et sur  <channel>   ;
<question_2> =  qu'est-ce que tu  [ me ] (  recommandes  |  proposes  |  suggères  |  conseilles  ) [ à la <tv> ]   ;
<question_3> = ( peux-tu [ me ] (  proposer  |  suggérer  ) (  un film  |  un programme  ) [<with_actor>] ) | ( (  as-tu |  aurais-tu ) (  un film  |  un programme  ) [<with_actor>] à [ me ] (  proposer  |  suggérer  )  ) ;
<question_4> =  qu'est-ce qu'il y  ( <choice_time> | <choice_time_past> )   à la  <tv> ;
<question_5> =  quel est le programme de  ( <prep_neut> | <prep_masc> <time_masc> | <prep_femi> <time_femi> | <prep_vow> <time_masc_vow> );
<with_actor> =  avec  <actor> ;
<without_actor> =  sans  <actor> ;
<chooseactor> = ( <without_actor> | <with_actor> ) [ en tant qu'acteur ];


<tv_content> =  desperate housewives  |  the voice  |  super 8  |  jt sur france 2  |  épisode de soda ;


<actor> =  samuel lee jackson  |  woody allen ;
<realisator>  =  woody allen  |  quentin tarantino ;
<whatis> = (  qu'est-ce que  |  c'est quoi  ) <tv_content>    ;
<ask_resume> = (  quel est  | (  donne  (  moi  |  nous  ) ) |  c'est quoi  )  son résumé      ;
<answer_4> = [ ok ]  je le regarderai plus tard ;
<answer_5> =  passe en mode cinema  ;
<play> = (  tu peux  (  redémarrer  |  reprendre  ) |  reprends  |  redémarre  ) (  mon  |  le  )  programme ;
<recordtv> = (  j'aimerais que tu m' enregistres  |  enregistre  )  le prochain  <tv_content>   ;

<find_movie> = [ trouve-moi ]  un film de  <realisator> [<chooseactor>] ;

<all_multimedia> = <commands_level_one> | <commands_level_three> | <question_1> | <question_2> | <question_3> | <question_4> | <question_5> | <answer_1> | <answer_2> | <play> | <recordtv> | <find_movie> | <whatis> | <ask_resume> | <answer_4> | <answer_5> | <changevolume> | <changechannel> | <power_tv> ;



back to top