为XML编写BNF语法

时间:2018-08-12 08:07:49

标签: bnf

我想为XML程序编写BNF语法,但是我有一些问题。我正在尝试为两个元素WorksheetTable编写规则。 Worksheet具有可选的Table元素,必需的特征Name和可选的特征Protected。另一方面,Table具有可选的ColumnRow元素,如果元素和可选特征ExpandedColCountExpandedRowCount和{ StyleID。 我的规则是这些:

Worksheet ::= Name Worksheet
            | Name Protected Worksheet
            | Worksheet Table Worksheet
            | Protected Name Worksheet
            |
            ;

Table ::= ExpandedColumnCount Table
        | ExpandedRowCount Table
        | StyleId Table
        | Column Row Table
        | Column Table
        | Row Table
        |
        ;

问题在于,第一条规则也接受TableTable Name,第二条规则接受Row ColumnColumn StyleID。有解决的办法吗?

0 个答案:

没有答案