Necessity of Part 25 change supporting ONEOF?

David Price dmprice at us.ibm.com
Fri Mar 2 15:09:11 EST 2001


Folks,

I've thought a little more about this and believe that to allow the correct
EXPRESS SUPERTYPE semantics to be somehow represented in UML we should do
the following:

1 - If there is no SUPERTYPE constraint, specify the UML overlapping
constraint.
2 - If there is exactly one ONEOF that covers all subtypes of an entity
type, specify the UML disjoint contraint.
3 - In all other cases where any SUPERTYPE constraint is specified, specify
the UML overlapping constraint.

1 and 2 should be clear. I'm proposing 3 because it allows for the overlaps
that do occur in EXPRESS to be represented in the UML model. It does also
allow more combinations in the UML than are legal in the EXPRESS but we
can't allow fewer combinations - which is what happens if you specify
disjoint (or nothing since disjoint is the default). We'll have to assume
that when people create data, the AP or a usage guide they are using to
explain what's legal will result in correct data generation. Perhaps as UML
constraints are harmonized with EXPRESS constraints we can add more to the
mappings in the future.

Anyone disagree with this approach? Anyone agree?
Thanks,
David

IBM Corporation
5300 International Blvd.
N. Charleston, SC 29418, USA
dmprice at us.ibm.com
Phone : +1 (843) 760-4341   Fax : +1 (843) 760-3349
Oooo.
(UNC)
 ) /
(*/


David Price/Bethesda/IBM at IBMUS@steptools.com on 02/16/2001 12:57:02 PM

Sent by:  owner-wg10 at steptools.com


To:   wg10 at steptools.com, xmlsc4 at nist.gov, wg11 at smiling.net
cc:
Subject:  Re: Necessity of Part 25 change supporting ONEOF?



Folks,

If we were going to do anything about this I'd propose something like the
following (or as I said, do nothing):

PROPOSAL - For each EXPRESS entity data type visible in the context of the
mapping that has subtypes visible in the context of the mapping and within
which no SUPERTYPE constraint is specified, a UML "overlapping" constraint
shall appear in the UDS. For each EXPRESS entity data type that is a
subtype of the EXPRESS entity data type within which no SUPERTYPE
constraint is specified, include the UML Generalization representing that
EXPRESS subtype relationship in the UML "overlapping" constraint created
for the EXPRESS supertype.

Thanks,
David

IBM Corporation
5300 International Blvd.
N. Charleston, SC 29418, USA
dmprice at us.ibm.com
Phone : +1 (843) 760-4341   Fax : +1 (843) 760-3349
Oooo.
(UNC)
 ) /
(*/


David Price/Bethesda/IBM at IBMUS@steptools.com on 02/16/2001 11:43:53 AM

Sent by:  owner-wg10 at steptools.com


To:   wg10 at steptools.com, xmlsc4 at nist.gov, wg11 at smiling.net
cc:
Subject:  Necessity of Part 25 change supporting ONEOF?



Part 25/EXPRESS/UML Folks,

At the Charleston ISO meeting I was given the following change to make to
Part  25:

"5 - Make EXPRESS ONEOF an explicit UML disjoint constraint between
subclasses of a
common UML Class representing an EXPRESS entity that is a supertype when
specified
in the EXPRESS supertype constraint."

After reviewing the UML 1.3 spec further I think this change is not
necessary. In fact, if we do anything we need to add "overlapping" in the
case where no SUPERTYPE constraint is specified.

Here's what UML 1.3 says about : Generalization

A generalization is a taxonomic relationship between a more general element
and a more specific element. The more specific element is fully consistent
with the more general element (it has all of its properties, members, and
relationships) and may contain additional information. In the metamodel, a
Generalization is a directed inheritance relationship, uniting a
GeneralizableElement with a more general GeneralizableElement in a
hierarchy. Generalization is a subtyping relationship (i.e., an Instance of
the more general GeneralizableElement may be substituted by an Instance of
the more specific  GeneralizableElement). See Inheritance for the
consequences of Generalization relationships.

Here are two of the Standard Constraints that can be applied. Note that
"disjoint" (i.e. ONEOF) is the default!

disjoint

Specifies a constraint applied to a set of generalizations, indicating that
instance of the parent may be an instance of no more than one of the
given children within the set of generalizations. This is the default
semantics of generalization.

overlapping

Specifies a constraint applied to a set of generalizations, indicating that
an instance of one child may be simultaneously an instance of another
child in the set (but there is no guarantee that such an instance will
actually exist).

Opinions on what do to? I think either 1) do nothing or 2) add overlapping
if no supertype constraint at all, but let's not try and
figure out the complete set of permutations.

Thanks,
David

IBM Corporation
5300 International Blvd.
N. Charleston, SC 29418, USA
dmprice at us.ibm.com
Phone : +1 (843) 760-4341   Fax : +1 (843) 760-3349
Oooo.
(UNC)
 ) /
(*/








More information about the wg10 mailing list