33 lines
764 B
Plaintext
33 lines
764 B
Plaintext
## Natural Language Toolkit: sql.fcfg
|
|
##
|
|
## Deliberately naive string-based grammar for
|
|
## deriving SQL queries from English
|
|
##
|
|
## Author: Ewan Klein <ewan@inf.ed.ac.uk>
|
|
## URL: <http://nltk.sourceforge.net>
|
|
## For license information, see LICENSE.TXT
|
|
|
|
% start S
|
|
|
|
S[SEM=(?np + WHERE + ?vp)] -> NP[SEM=?np] VP[SEM=?vp]
|
|
|
|
VP[SEM=(?v + ?pp)] -> IV[SEM=?v] PP[SEM=?pp]
|
|
VP[SEM=(?v + ?ap)] -> IV[SEM=?v] AP[SEM=?ap]
|
|
NP[SEM=(?det + ?n)] -> Det[SEM=?det] N[SEM=?n]
|
|
PP[SEM=(?p + ?np)] -> P[SEM=?p] NP[SEM=?np]
|
|
AP[SEM=?pp] -> A[SEM=?a] PP[SEM=?pp]
|
|
|
|
NP[SEM='Country="greece"'] -> 'Greece'
|
|
NP[SEM='Country="china"'] -> 'China'
|
|
|
|
Det[SEM='SELECT'] -> 'Which' | 'What'
|
|
|
|
N[SEM='City FROM city_table'] -> 'cities'
|
|
|
|
IV[SEM=''] -> 'are'
|
|
A[SEM=''] -> 'located'
|
|
P[SEM=''] -> 'in'
|
|
|
|
|
|
|