Bonjour, (c'est plutôt Bonsoir, vu l'heure qu'il est )

Première question: On dit "un BNF" ou "une BNF" ?
Je suis entrain de réaliser un BNF pour un parseur XML que je vais coder mais je me suis rendu compte, après l'avoir terminé, qu'il y avait quelques cas de figures qui ne sont pas grammaticalement juste et que mon BNF ne gere pas, et je ne vois pas comment resoudre ce problème. (Dans le code je sais comment gérer ces cas de figures mais pas comment les représenter dans le BNF).

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13

S('<'), E('>'), EI('/'), W(word), STR('"'), AF('='), SP('?'), TG(tag), C(char)

S    ::= EI? | SP? | TG
EI   ::= TG? | E
SP   ::= TG | SP | E
TG   ::= W* | EI? | SP? | E
W    ::= AF
AF   ::= STR
STR  ::= C* | STR? | W? | EI? | SP? | E
C    ::= STR
E    ::= '>'
Je ne sais pas si un BNF doit gérer ça mais voici un exmple de ce que ca ne gére pas:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
SP->EI->TG->SP (ce qui n'est pas bon)
Il y a plein d'autres cas de figures mais je pense que vous avez compris .

Merci,

kimimsc