Opened 12 years ago

Closed 11 years ago

#226 closed defect (fixed)

WCPS parser is case-sensitive with 'reduceExpr' expressions

Reported by: Piero Campalani Owned by: Alireza
Priority: minor Milestone:
Component: petascope Version:
Keywords: wcps case sensitivity reduceexpr Cc:
Complexity: Medium

Description

That is:

for c in (mr) return 
   encode(
      count(
         (trim(c, {x(100:101),y(100:101)}) > 100) and 
         (trim(c, {x(100:101),y(100:101)}) < 170)), 
   "csv")

RESPONSE: {2}

works fine, but replacing and with AND (or aNd, whatever) raises error, the same with count, and in general it seems that this holds with all the WCPS reduce expressions, so

reduceExpr:
  all ( coverageExpr )
  | some ( coverageExpr )
  | count ( coverageExpr )
  | add ( coverageExpr )
  | avg ( coverageExpr )
  | min ( coverageExpr )
  | max ( coverageExpr )

This does not seem to happen with other keywords, indeed the lexer in petascope::wcps::grammar::core::wcps.g is set to be case-insensitive.

Change History (3)

comment:1 by Dimitar Misev, 11 years ago

Owner: changed from Dimitar Misev to Alireza
Status: newassigned

The bug is in ReduceScalarExpr:48, the comparisons should be case-insensitive.

comment:2 by Dimitar Misev, 11 years ago

comment:3 by Dimitar Misev, 11 years ago

Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.