Complex filter expressions in API queries
The current version of the API supports only the AND relation between the fields of the query filters. The idea is to provide the possibility to use both AND and OR relations and build complex filtering expressions with them.
In order to support these complex filters:
* a query grammar should be defined, which
** satisfies the current needs
** is extendable to include further demands later
* the complex filter expressions should be convertible into JSON strings
* POST requests have to be used instead of GET, to be able to send the JSON query filter string in the body of the request
* consider the creation of a new REST resource for queries
** to avoid the difficulties during the modification of the current solution
** keep the API as simple and modular as possible
* choose a DB driver for a proof of concept implementation
The etherpad with further details and comments, can be found here:
https:/
Wiki: https:/
Blueprint information
- Status:
- Complete
- Approver:
- Julien Danjou
- Priority:
- High
- Drafter:
- Ildiko Vancsa
- Direction:
- Approved
- Assignee:
- Ildiko Vancsa
- Definition:
- Approved
- Series goal:
- Accepted for icehouse
- Implementation:
-
Implemented
- Milestone target:
-
2014.1
- Started by
- Ildiko Vancsa
- Completed by
- Ildiko Vancsa
Related branches
Related bugs
Bug #1202569: Filtering by counter_volume is not working | Opinion |
Bug #1224298: Limited Alarm API querying | Fix Released |
Sprints
Whiteboard
Gerrit topic: https:/
Addressed by: https:/
Implements complex query functionality for alarms
Addressed by: https:/
Implements complex query functionality for alarm history
Addressed by: https:/
Implements complex query functionality for samples
Addressed by: https:/
Implements field validation for complex query functionality
Addressed by: https:/
Implements in operator for complex query functionality
Addressed by: https:/
Implements metadata query for complex query feature
Addressed by: https:/
Implements "not" operator for complex query
Work Items
Dependency tree

* Blueprints in grey have been implemented.