There are 3 comments.
 
 
XWiki Platform / cid:jira-generated-image-avatar-119f0f59-c270-4037-88e3-af883a397c35 XWIKI-18274 Open

The Advanced Filtering panel shows operators that are not supported by the live data source

 
View issue   ยท   Add comment
 

3 comments

 
cid:jira-generated-image-avatar-643694fa-2399-46dc-8802-9cf19b68dafc Vincent Massol on 06/Nov/26 17:12
 

Another use case: a custom Live Data source backed by a remote service. The OpenProject integration (Live Data source projectmanagement) declares, for each property, only the operators that OpenProject supports for that field (e.g. ~ and Unable to render embedded object: File (~}} for the subject, {{=}} and {{) not found. for the id). Since the operators of the default configuration (liveDataConfiguration.json) are always merged in, the filter panel also offers "Starts with", "Equals", "Contains", "Empty", "<" and ">" on these properties, and when the user picks one the remote service rejects the query, so the Live Data only shows "Updating the entries failed for an unknown reason".

The only thing such a source can do is to translate each generic operator into the closest one supported by the remote service, or ignore it, which means the UI offers operators that don't do what their name says (e.g. "Equals" on the subject behaving as "Contains").

+1 for a way for a source (and for a property descriptor) to restrict the operators, e.g. the "activated": false flag proposed by Manuel, which keeps the current merge behaviour.

 
cid:jira-generated-image-avatar-643694fa-2399-46dc-8802-9cf19b68dafc Vincent Massol on 06/Nov/26 17:13
 
Another use case: a custom Live Data source backed by a remote service. The OpenProject integration (Live Data source {{projectmanagement}}) declares, for each property, only the operators that OpenProject supports for that field (e.g. {{~}} and {{ \ !~}} for the subject, {{=}} and {{ \ !}} for the id). Since the operators of the default configuration ({{liveDataConfiguration.json}}) are always merged in, the filter panel also offers "Starts with", "Equals", "Contains", "Empty", "<" and ">" on these properties, and when the user picks one the remote service rejects the query, so the Live Data only shows "Updating the entries failed for an unknown reason".

The only thing such a source can do is to translate each generic operator into the closest one supported by the remote service, or ignore it, which means the UI offers operators that don't do what their name says (e.g. "Equals" on the subject behaving as "Contains").

+1 for a way for a source (and for a property descriptor) to restrict the operators, e.g. the {{"activated": false}} flag proposed by Manuel, which keeps the current merge behaviour.
 
cid:jira-generated-image-avatar-643694fa-2399-46dc-8802-9cf19b68dafc Vincent Massol on 06/Nov/26 17:13
 
Another use case: a custom Live Data source backed by a remote service. The OpenProject integration (Live Data source {{projectmanagement}}) declares, for each property, only the operators that OpenProject supports for that field (e.g. {{ \ ~}} and {{\! \ ~}} for the subject, {{=}} and {{\!}} for the id). Since the operators of the default configuration ({{liveDataConfiguration.json}}) are always merged in, the filter panel also offers "Starts with", "Equals", "Contains", "Empty", "<" and ">" on these properties, and when the user picks one the remote service rejects the query, so the Live Data only shows "Updating the entries failed for an unknown reason".

The only thing such a source can do is to translate each generic operator into the closest one supported by the remote service, or ignore it, which means the UI offers operators that don't do what their name says (e.g. "Equals" on the subject behaving as "Contains").

+1 for a way for a source (and for a property descriptor) to restrict the operators, e.g. the {{"activated": false}} flag proposed by Manuel, which keeps the current merge behaviour.