Commit Graph

55 Commits

Author SHA1 Message Date
jygaulier
01a83a88a8 PHRAS-3424_recordid-compare-ops_MASTER
add : native pseudo-fields (recordid, database, collection, ...) support comparison operators, e.g. "recordid > 100" ; "database=getty"
2021-04-20 17:58:27 +02:00
Jean-Yves Gaulier
bac72e269a PHRAS-2830_space-in-query_4.1
fixed grammar
2019-11-20 18:34:55 +01:00
Jean-Yves Gaulier
1e64eb7a42 PHRAS-2009_Geo-operator_MASTER
add the "geolocation="lat lon distance" query
2018-05-17 21:13:28 +02:00
Jean-Yves Gaulier
3f785e7ba3 PHRAS-483_SHA-UID_master
add index (not analysed) & search on fields "sha256" and "uuid"
e.g. : uuid:"4d006e01-bc38-4aac-9a5b-2c90ffe3a8a2"
e.g. : sha256:a7f3ec01c4c5efcadc639d494d432006f13b28b9a576afaee4d3b7508c4be074
2018-04-26 17:35:01 +02:00
Mathieu Darse
0cd9933ac6 Handle search with on timestamp
PHRAS-689
2015-11-13 10:28:05 +01:00
Mathieu Darse
9f923e0409 Refactor AST for match expression 2015-11-10 13:35:12 +01:00
Mathieu Darse
77b9faaa4e Handle equality test on metadata
Still need some work on testing side
2015-11-06 19:34:09 +01:00
Mathieu Darse
467e530a93 Handle inequality comparisons with technical data. 2015-11-06 10:16:33 +01:00
Mathieu Darse
f94b4c6b80 Escape trailing « . » on key prefixes 2015-11-06 10:14:23 +01:00
Mathieu Darse
79142bff10 Allow literal "meta." inside strings 2015-11-06 10:14:23 +01:00
Mathieu Darse
13186209f7 Handle matching on file metadata 2015-11-06 10:14:23 +01:00
Mathieu Darse
0e16a1e699 Remove « IN » from reserved words 2015-11-04 11:53:18 +01:00
Mathieu Darse
f1d6141766 Implicit conjunction
When a term is followed by or just before a key-value pair, so manually adding AND is not needed anymore.
2015-11-03 16:07:41 +01:00
Mathieu Darse
643560ffa2 Move catch all logic out of « text » rule
Prevent character greediness when symbols like colon appear after the start of a string. Needed for implicit AND with key value pairs.
2015-11-03 13:26:05 +01:00
Mathieu Darse
548f57bd93 Prevent rule recursion inside of field match statement 2015-11-02 18:57:45 +01:00
Mathieu Darse
ceb155943a Merge « quaternary » & « quinary » derivation rules
Prevents incorrect use of comparison operators inside field matcher.
2015-11-02 11:40:54 +01:00
Mathieu Darse
820f571aca Move boolean rule with generic ones 2015-11-02 10:54:59 +01:00
Mathieu Darse
e86918de4b Merge native keys, flag & fields syntaxes together (PHRAS-685)
- « IN » syntax was removed
- Tests where updated with new serialized representations (IN is replaced by MATCHES)
- Removed tests of native fields with IN syntax
- 4 tests (lines 77, 80, 83 and 86 in queries.csv) are not passing but
they were not really part of specified functionality. They need some work eventually.
2015-10-12 19:50:23 +02:00
Mathieu Darse
fbac292430 Remove old database/collection/type/id grammar pieces 2015-10-12 18:02:35 +02:00
Mathieu Darse
e4ec73c58b Same grammar path for native keys than « IN » expressions
- Replace Database/Collection/Type/RecordIdentifier specific AST with a generic KeyValueExpression
- « IN » queries in regular fields are still using InExpression right now
- Add some tests for « type:XXXX » queries
2015-10-06 18:41:51 +02:00
Mathieu Darse
8b87e94ff2 Add status match DSL 2015-09-14 19:25:44 +02:00
Jean-Yves Gaulier
e8f61a443b PHRAS-676 #time 3h
new : returns facet on "type" (image, video, ...)
new : query on pseudo-field "type", ex:  "type:image"
2015-09-04 14:34:25 +02:00
Mathieu Darse
1d0257554b Fix code style on latest query parser feature & add tests 2015-07-02 19:06:44 +02:00
Jean-Yves Gaulier
d7c3a9943f PHRAS-482 #time 4h
- added "recordid:xxx"
- added "base:yyy" (makes "Base" facets ok)
to query parser
2015-07-01 17:54:32 +02:00
Mathieu Darse
c813eee73f Add equality expressions 2015-04-15 18:28:12 +02:00
Mathieu Darse
b3f9dd4ca2 Implement inequality in query visitor & fix IN expressions 2015-04-15 18:23:36 +02:00
Mathieu Darse
3ccf1a0c47 Field inequality grammar 2015-04-15 18:23:36 +02:00
Mathieu Darse
6229588cba string() rule should not match multiple words 2015-04-15 18:23:36 +02:00
Mathieu Darse
2cd0fd6f2e Prevent quoted contexts (visitor do not handle that) 2015-04-15 18:23:36 +02:00
Mathieu Darse
d9b4667824 Fixes parsing with multiples text token after IN operator 2015-04-15 18:23:36 +02:00
Mathieu Darse
18cf272805 Simplify some derivation rules 2015-04-15 18:23:35 +02:00
Mathieu Darse
308df4d04a Document query grammar 2015-04-15 18:23:35 +02:00
Benoît Burnichon
e785a55ff6 Merge pull request #1349 from mdarse/facets-strict-match
Strict facet matching (the return)
2015-04-14 10:20:56 +02:00
Mathieu Darse
5715dfc6a0 Fix mandatory escaping sequence in raw expressions 2015-04-13 18:37:38 +02:00
Benoît Burnichon
e5c1cab623 Merge pull request #1347 from mdarse/facets-strict-match
Strict facet matching
2015-04-10 17:29:46 +02:00
Mathieu Darse
38465a591f Strict facet matching
Clicking on a facet value on the left pane now return the expected result count.

This commit implement a new "raw" matcher. It can be used like
`r"some raw value"`. It operate on the the `.raw` multi-field and skips all
analysis.
Escaping `"` is supported by prepending a backslash `\"`. You can also escape
the escaping character `\` by doubling it (`\\`).

Adds a new `ContextAbleInterface` to differenciate matcher supporting an
optional context from those who can't.

Fixes an issue with `QueryContext::narrowToFields()` ignoring passed fields.
2015-04-09 20:32:13 +02:00
Mathieu Darse
c8579d64b3 Support for French operators 2015-04-09 15:15:08 +02:00
Mathieu Darse
74686c67cd Support lower and mixed case operators 2015-04-09 15:14:34 +02:00
Mathieu Darse
927edaa1f6 Keep symbols characters matched in fallback mode 2015-03-30 16:30:12 +02:00
Mathieu Darse
c5fac0c555 String grammar rule can contain multiple word or keyword tokens 2015-03-30 16:30:12 +02:00
Mathieu Darse
32885f80d1 Allow spaces between context parenthesis 2015-03-30 16:30:11 +02:00
Mathieu Darse
d60b731ffa Put colon with other symbols 2015-03-30 16:30:11 +02:00
Mathieu Darse
ce72d2bc1c Split grammar quinary section 2015-03-30 16:30:11 +02:00
Mathieu Darse
b724998043 Add possible space before context parenthesis 2015-03-30 16:30:11 +02:00
Mathieu Darse
4a41234a71 WIP Improve grammar
- Make it understand difference between "INA" and "IN A"
- Clearer indent
- Explicit space handling
- Abstracted "xx:yy" form (in the future, "xx" can be different of "collection")
- Make quoted string explicit vs. regular string (without quotes around)
2015-03-30 16:30:11 +02:00
Mathieu Darse
67dcd09a39 Add "collection:" query support 2015-03-17 19:45:24 +01:00
Mathieu Darse
8c1848afae Expression context support in thesaurus lookup 2015-02-25 12:22:13 +01:00
Mathieu Darse
712850ac67 Update grammar and AST for bracket notation 2015-02-25 12:19:00 +01:00
Mathieu Darse
1dce0ee8df Update grammar for empty queries to work 2015-02-18 13:08:38 +01:00
Mathieu Darse
2aa0b0f1a8 Proper left-associativity in query operators
Remove previous lambda/curring based method
Grammar was simplified for EXCEPT case
Cleanup unused constants
2014-12-03 17:16:22 +01:00