Seems like this is not working. the @cascade(predicate) does not raise error but also does not effect the query by filtering out data if the predicate is missing.
The parameterized cascade works on levels (e.g. on the root function or on lower levels). You need to specify @cascade(param) on the exact level you want it to be applied.
What if you try changing your query to the following one?
Nor in our more complex query when tried on the root level, 2nd level and etc. Tried @cascade(meas.id) on all levels.
Notice that in this query only one of tagv.txt / tagv.int / tagv.float exist. so general cascade will eliminate all records.
And I need to eliminate all app.tags that are not connected to meas.id at the end.
I think, what you are trying to achieve with this is: Remove all Apps which are not connected to tnnt.cn. And if you apply @cascade for tnnt.cn at root level, it won’t have any effect as tnnt.cn isn’t a root level predicate.
So, maybe you are looking for this: