Only one TOTAL_OVER
Ed Barkmeyer
edbark at nist.gov
Mon May 13 13:04:00 EDT 2002
Phil Spiby wrote:
> The argument for this was that a subtype constraint allows clearer
> specification of the rational for the semantics. Your example should, I
> believe, be re-written:
>
> SUBTYPE_CONSTRAINT gender_constraint FOR person;
> TOTAL_OVER(female, male);
> END_SUBTYPE_CONSTRAINT;
>
> SUBTYPE_CONSTRAINT citizenship_constraint FOR person;
> TOTAL_OVER(alien, citizen);
> END_SUBTYPE_CONSTRAINT;
>
> I know EXPRESS was never intended to enforce good modelling, and it shows
> from a number of models!!, but in this case we decided that we would have
> try!
If that were the only motivation, it would be misplaced. But Phil's "good
modelling practice" is the expert designer/modeler's gut reaction "I wouldn't do
that, but I can't immediately pinpoint the reason."
The real reason is: Those two constraints are "separable".
When person, citizen and alien are interfaced into another schema, but male and
female aren't, the second constraint should be implicitly interfaced, while the
first constraint should not be.
But SUBTYPE_CONSTRAINT will be interfaced all or nothing. If you allow it to be
a portmanteau, there would be a requirement on the modeler to ensure that
separable constraints were not packed into one SUBTYPE_CONSTRAINT bag, as in
this case.
-Ed
P.S. I too thought this restriction was unwarranted. But it never hurts to
separate things that can and will be combined automatically. If you combine
things that should be separated, you can make an ugly mess, e.g. the SUPERTYPE
clause. We are learning from our mistakes.
--
Edward J. Barkmeyer Email: edbark at nist.gov
National Institute of Standards & Technology
Manufacturing Systems Integration Division
100 Bureau Drive, Mail Stop 8260 Tel: +1 301-975-3528
Gaithersburg, MD 20899-8260 FAX: +1 301-975-4482
"The opinions expressed above do not reflect consensus of NIST,
and have not been reviewed by any Government authority."
More information about the wg11
mailing list