Enhancement
Whitelisting by declaration: player restriction
Issue description
A frequent requirement in enterprise systems is the restriction the range of options of one selection based on the choice of another selection. This is currently possible via whitelisting. It requires to program JavaScript and is quite difficult and therefore time consuming. It would be easier to do by declaration. For this reason a new topic type should be introduced: player restriction constraint. It bears some similiarity with the rarely used role combination constraint. It could also be called player combination contraint. But the initial intention is to restrict (whitelist) something, therefore we go with 'restriction'.
Developer comments
*Real world example 1*: when creating a rental contract the customer is selected first, the next field Collector should only display employees of the selected customer. The second field should only become active when the customer selection is performed.
*Real world example 2*: when creating a new contact (e.g. a phone call) in a row form to a lead, the contact person should be an employee of the company the lead is connected to.
In the spirit of the topic role constraint one could think it a bit more flexible, but i am not sure if this increase in compexlity will pay off: currently the two topic role constraints are not equal, one is the restricted, one is the restricting. If the user picks the second one first, the restriction is merly reversed. In example 1 this would mean selecting the collector determines the customer, and approach that has been used in some systems, but this fails if the collector is optional.
I think the mutual restriction is better. Whatever you select first restricts the other. Therefore it becomes more like a role combination constraint.
This is quite difficult to think about because of the complicated structure of association types. There is at least three association types involved and in the simplest case this means 6 topic role constraints (restriction directly in the main form), in the more complicated version there is an additional association type which increases the number of topic role constraints to 8.
Rejection comment
The player restriction constraint needs: a restricted topic role constraint, a restricting topic role constraint and lastly one or two selecting topic role constraints.
|
|
We are sorry
This page cannot be displayed in your browser. Use Firefox, Opera, Safari, or Chrome instead.