Hi
Ok my previous email was not clear, I'll try to shorten it ! Please tell
me if it's unclear, unrealistic, too complicated...or just stupid !
Given the model below, I'd like to discuss some points:
(1) Concerning the link spouse
- Idealy, assigning spouse should be done with an existing instance of
Person, or with a new created one. Magritte actual version only allows
to create a new Person (tell me if I'm wrong). I once tried to do a
variation of MAToOneRelationDescription adding a repository of existing
instances). Is it somethink you'd like Magritte to allow ? According to
me, having a kind of repository for existing instances in a given
context should be interesting. What do you think ?
- Also on the same example, assigning a spouse to a person must assign
the opposite (spouse spouse: aPerson) as it's a bidirectionnal
relation. Is it something you'd like to address (unidirectional and
bidirectional references) ?
(2) Validation Condition
- It sems to me that MAValidation allow to model unary contraints like
value of lastName can't be nil, or valid value of marital status are in
the list #(unmarried married widowed). Bot for more complicated
constraints (binary, constraints on instances...) it seems impossible to
me. For instance, if a person maritalStatus is set to unmarried, then
the person cannot have children (this is the model example ;) ). Would
you like to allow to model that kind of constraints or is it out of the
scope of Magritte ? I think this is becoming very complex (CSP field,
rule based...) especially if we want to do that on the fly but maybe
doing a check afterwhile could be more realistic...
I stop here and I hope it's a bit clearer at least point (1)... Is it ?
Do you understand my concern ? If not can you tell me the modeling
limits of Magritte ? What you want it to be or not...
Thanks you
Cédrick
------------------------------------------------------------------------
------------------------------------------------------------------------