view Schema/query.def @ 24:7f00786f8210

Первая рабочая реазизация схемы и навигаторов
author Sergey
date Mon, 05 Oct 2009 00:48:49 +0400
parents 03e58a454b20
children 16ada169ca75
line wrap: on
line source

syntax ::= select expr_list from var_defs where condition

name ::= <\w>+

fqdn ::= name[.name...]

string ::= '[{<^'>+|<'>{2}}...]'

number ::= [{+|-}] <\d>+

math_op ::= {+|-|*|/}

compare_op ::= {<\>>|<\<>|==|!=}

log_op ::= {OR|AND}

not_op ::= NOT

expr ::= {string|number|fqdn} [math_op {string|number|fqdn|( expr )} ...]

expr_list ::= expr [, expr ...]

type ::= name [<\<>type [, type ...]<\>>]

condition ::= [not_op] expr compare_op expr [log_op {condition|( condition )} ...]

var_defs ::= name as type [, name as type ...]