[SoC] GSoC 2020 - Develop CQL Filter implementation for pygeoapi - Coding Period Week 9 Report

Farheen Bano farheenbano94 at gmail.com
Sun Aug 2 11:17:29 PDT 2020


Hi Everyone,

This is my report for the period (July 7- August 2). 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?*

   - Worked on the implementation of the proposed CQL class design for
   delivering a generic code base.
   - Created a generic class in cql_evaluate.py file for parsing and
   evaluating AST on feature data provided by different pygeoapi data
   providers.
   - Restructured filter class.
   - Implemented CQL query filter for GeoJSON data provider.
   - Added routing for API based on query parameters- limit, start-index
   and CQL filter expressions.
   - Added code for generating accurate output when result-type=hits or
   result-type=results.
   - Added code on pagination for the resultant feature list.
   - Added code for invalid query parameter for CQL filter expression.
   - Defined a function for evaluating *BetweenPredicateNode* of AST.
   - Defined a function for evaluating *InPredicateNode* of AST.
   - Defined a function for evaluating *NullPredicateNode* of AST.
   - Added unit tests for CSV and GeoJSON data providers.
   - Added functional tests for flask endpoints.


*What am I going to achieve for next week?*

   - Define functions for evaluating LikePredicateNode,
   ArithmeticExpressionNode, TemporalPredicateNode, SpatialPredicateNode, and
   BBoxPredicateNode of AST.
   - Perform the evaluation of CQL Filter expressions for remaining 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/soc/attachments/20200802/02e2c663/attachment.html>


More information about the SoC mailing list