I'm very new to MPS and I'm following the fast track. It should be the simplest problem but I don't seem to find the answer.
I have a concept C with four children; CH1 and CH2 each of cardinality of [0..n] and CH3 and CH4 of cardinality of 1. Now I want to have a constraint so that at least one child from CH1 or Ch2 is presented. So this should never happen:
C--> no CH1, no CH2, one CH3, one CH4 X
but any of the following is acceptable:
C--> one (or more) CH1, no CH2, one CH3, one CH4 OR
C--> no CH1, one (or more) CH2, one CH3, one CH4 OR
C--> one (or more) CH1, one (or more) CH2, one CH3, one CH4
I could kind of solve this by adding the following line to the "can be parent" field:
node.CH1.isNotEmpty || node.CH2.isNotEmpty
but the shown error message says that C cannot be a parent of CH3 and CH4 and that's not the error here. The error should say you should provide at least one instance of CH1 or CH2.
How should I enforce this constraint?
In general how can I learn about constraints in MPS. All I could find talk about constraints on references but not on children.
Thank you in advance,