[GeoNetwork-devel] Virtual CSW endpoint broken with uppercase terms filters ?

Hi,

i've already filed https://github.com/geonetwork/core-geonetwork/issues/316 for this issue, but i'm really puzzled at this issue and would like developers with experience in the Lucene parts of geonetwork to chime in - the fact that a cswCustomFilter (on the virtual CSW server-side) is lowercased by default by the QueryParser while a proper Filter passed via a CSW client isnt lowercased/mangled is beyond my understanding.

Since i need to setup a somewhat complex filter excluding some documents by orgName (ie 'inspireannex:(i or ii or iii) - orgName:Institut*National*IGN* - orgName:DGFIP' - that works perfectly if i directly querty the index via LUKE), i can still resort to hacks filtering on the known _id field (like 'inspireannex:(i or ii or iii) - _id(66 or 91 or 328 or 72)'), but that's not a viable option on the longterm, so if anyone has an idea on how to properly fix this, and where to look at... didnt spot anything special wrt casing, besides in GeonetworkAnalyser.java where it inherits from a LowerCaseFilter by default ? Is that the issue, and if so what's the reason ?

--
Landry Breuil
Mouton a 5 pattes du CRAIG