Project: mulestudio
Issue STUDIO-4338: Framework: Implement a type/category filter language for describing which elements can exist inside a container
We need to iterate over the existing category/types filtering capabilities that were implemented in the framework for batch (containers). Currently containers can declare which category/types they accept or are accepted in, but only supporting one logical operation per sentence and with no sense of cardinality. These needs are also covered in a lot of other components such as scopes, composite sources, poll, etc. This is currently achieved in a lot of custom ways (with a lot of custom attributes like acceptsOnlyOne, hasMultipleChildren, allowsOnlyInbound, etc) leading to absolute chaos. We aim to build an expression language for building filters similar to regex language which allows to: * use logical operations * use nested sentences with parentheses * declare cardinality * handle types and categories
Story points: 8