Parsing 理解解析树的语法

Parsing 理解解析树的语法,parsing,nlp,computer-science,stanford-nlp,grammar,Parsing,Nlp,Computer Science,Stanford Nlp,Grammar,我只是想了解(可作为)提出的关系数据库的自然语言接口。具体来说,我不理解他们为数据库的自然语言查询的ParseTree定义的语法。这个问题有点像,但语法比较复杂 背景:自然语言句子可以解析为ParseTree(这里的公共库是),它描述句子中单词的语法关系 有效ParseTree的语法为: Q->(SClause)(复杂条件)* SClause->SELECT+GNP ComplexCondition->ON+(左子树*右子树) 左子树->GNP 右子树->GNP | VN | MIN | MAX

我只是想了解(可作为)提出的关系数据库的自然语言接口。具体来说,我不理解他们为数据库的自然语言查询的ParseTree定义的语法。这个问题有点像,但语法比较复杂

背景:自然语言句子可以解析为ParseTree(这里的公共库是),它描述句子中单词的语法关系

有效ParseTree的语法为:

  • Q->(SClause)(复杂条件)*

  • SClause->SELECT+GNP

  • ComplexCondition->ON+(左子树*右子树)

  • 左子树->GNP

  • 右子树->GNP | VN | MIN | MAX

  • GNP->(FN+GNP)| NP

  • NP->NN+(NN)*(条件)*

  • 条件->VN |(ON+VN)

  • 在哪里

    • Q
      表示整个查询树
    • +
      父子关系
    • *
      兄弟姐妹关系
    • SN
      是一个选择节点
    • 上的
      是操作员节点(例如
      =
      5

    • rightSubtree
      怎么可能只是一个函数(例如
      MIN
      )。顺便说一句,我将管道
      |
      理解为逻辑or

    • 我知道
      GNP
      是递归定义的,但是在终端节点上
      GNP
      节点必须只是
      NP
      节点,对吗?但是
      NP
      被定义为有孩子的东西。。。怎么会

    • 上面引用的github项目的作者说:“以值节点(
      VN
      )为例,根据语法,当且仅当它有子节点时,它是无效的。我不知道如何从语法中推断出这一点

    • 谢谢你的帮助