这个语法单反(1)?

时间:2016-10-29 23:56:22

标签: parsing compiler-construction grammar context-free-grammar

我使用this tool为这个LL(1)/ LR(1)语法(生成一小部分XML)生成SLR(1)解析表:

document ::= element EOF
element ::= < elementPrefix
elementPrefix ::= NAME attribute elementSuffix
attribute ::= NAME = STRING attribute
attribute ::= EPSILON
elementSuffix ::= > elementOrData endTag
elementSuffix ::= />
elementOrData ::= < elementPrefix elementOrData
elementOrData ::= DATA elementOrData
elementOrData ::= EPSILON
endTag ::= </ NAME >

该工具正确生成表和关联的自动机,这表明语法是SLR(1)。那是真的吗?我知道每个LR(0)语法也是SLR(1),但我不确定它与LL(1)/ LR(1)语法有什么关系。

1 个答案:

答案 0 :(得分:1)

LL(1)和SLR(1)都是LR(1)的子集。他们彼此没有简单的关系。