[pygeoapi] [SoC] GSoC 2020 - Develop CQL Filter implementation for pygeoapi - Coding Period Week 7 Report
Farheen Bano
farheenbano94 at gmail.com
Sun Jul 19 10:09:22 PDT 2020
Hi Everyone,
This is my report for the period (July 13 - July 19). The updated report
can also be found at the project wiki page
https://wiki.osgeo.org/wiki/GSoC_2020_Develop_CQL_Filter_implementation_for_pygeoapi.
The forked repo of the project can be found here
https://github.com/FarheenB/pygeoapi
*What I have done during this period?*
- Designed a filter class for generating AST of the CQL filter
expression using pycql lexer and parser.
- Created evaluate.py file for evaluating AST using Recursive Descent
Approach.
- Created filter.py file for defining all the filter evaluating
functions to get filtered features.
- Defined a function for evaluating *AttributeExpression* of AST.
- Defined a function for evaluating *LiteralExpression* of AST.
- Defined a function for evaluating *CombinationConditionNode* of AST
for logical operators like "AND" and "OR".
- Defined a function for evaluating *ComparisonPredicateNode* of AST for
conditional operators like "<", ">", "=", "<=", ">=" and "<>".
- Successfully performed the desired CQL operation on CSV Provider
Dataset and retrieved filtered feature dataset.
- Other query operations like start index, last index, page limit etc.
are performed with the CQL query operations.
- Added unit test cases for combination and comparison operations.
- Successfully performed tests for Simple CQL filter expressions on CSV
dataset('pygeoapi-test.csv').
*What am I going to achieve for next week?*
- Define functions for evaluating NotConditionNode,
BetweenPredicateNode, LikePredicateNode, ArithmeticExpressionNode,
InPredicateNode, NullPredicateNode, TemporalPredicateNode,
SpatialPredicateNode, and BBoxPredicateNode of AST.
- Perform the evaluation of CQL Filter expressions for other data
providers of pygeoapi.
- Restructure filter class and make the implementation generic for all
the data providers of pygeoapi.
*Are there any blockers?*
- No blockers for now
Regards,
Farheen Bano
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/pygeoapi/attachments/20200719/90052134/attachment.html>
More information about the pygeoapi
mailing list