[MDSAL-617] Refactor DOMQueryPredicate for proper algebra Created: 28/Oct/20  Updated: 01/Nov/20  Resolved: 01/Nov/20

Status: Resolved
Project: mdsal
Component/s: DOM API, DOM runtime
Affects Version/s: None
Fix Version/s: 5.0.15, 7.0.2, 6.0.8

Type: Improvement Priority: Medium
Reporter: Robert Varga Assignee: Robert Varga
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Current predicates do not quite work for complex queries. We have the makings of a DOMQueryPredicate.And in the fact that a query has a set of predicates and DOMQueryPredicate.Not, which is a negation.

Generalize these concepts to have proper algebra and combination of predicates. As Predicate.Not is showing such CompositePredicates do not have a path – hence we'll have two immediate subclasses of DOMQueryPredicate to distinguish these two.

It seems that we have to separate the combination of predicates with differing paths (lookup+match) and same paths (lookup + multiple matches). Target class hierarchy will be ... interesting, but should cover the algebra quite well.

Also update DOMQueryMatcher to handle these changes.


Generated at Wed Feb 07 20:10:15 UTC 2024 using Jira 8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d.