W3C home > Mailing lists > Public > www-ws-arch@w3.org > May 2003

RE: isa and hasa in UML

From: Cutler, Roger (RogerCutler) <RogerCutler@chevrontexaco.com>
Date: Fri, 30 May 2003 16:10:28 -0500
Message-ID: <7FCB5A9F010AAE419A79A54B44F3718E01817E5E@bocnte2k3.boc.chevrontexaco.net>
To: "Martin Chapman" <martin.chapman@oracle.com>, "Francis McCabe" <fgm@fla.fujitsu.com>, www-ws-arch@w3.org

Well, that's progress of a sort.  Now what do "generalization" and
"aggregation" mean, and how does this differ from the current
definition?

I ask because in Rennes I used the term "has a" and was told I had
misused it.  I countered, correctly I believe, that I was using it
consistently with the definition in the document.  I was then told that
this definition was inconsistent with UML.  So how do I understand how
to use the word in the UML sense?

Is this something where I have to understand the entire UML methodology,
and then the meaning will be self-evident but not expressible?  If not,
if it is expressible, kindly do so.  

-----Original Message-----
From: Martin Chapman [mailto:martin.chapman@oracle.com] 
Sent: Friday, May 30, 2003 3:16 PM
To: Cutler, Roger (RogerCutler); Francis McCabe; www-ws-arch@w3.org
Subject: RE: isa and hasa in UML


my suggestion would simple be to have a statement saying that the
document uses UML plus a statement to the effect that when the term is-a
is used it means generalization, and when has-a is used it means
aggregation.

Martin.


> -----Original Message-----
> From: Cutler, Roger (RogerCutler) 
> [mailto:RogerCutler@chevrontexaco.com]
> Sent: Friday, May 30, 2003 12:16 PM
> To: Martin Chapman; Francis McCabe; www-ws-arch@w3.org
> Subject: RE: isa and hasa in UML
>
>
> How can you give up when you haven't started?  All I am asking you to 
> do is to go beyond saying "there exists a definition" and tell us what

> it is.  If you are implying that for me to find out would be easy if I

> just looked at the tools and/or books -- well, then, it should be 
> trivial for you since I assume you already have the tools and books 
> (and I don't). It sort of sounds to me like Frank is, indeed, looking 
> at the tools and/or books and so far he's giving me a headache.  And 
> Walden is not helping by saying it's really OK to equate yeti's and 
> unicorns.  At the risk of being swallowed by the trout, it seems to me

> that given a hypothetical realization in front of me I could easily 
> distinguish whether it were one or the other, based on my conceptual 
> understanding of yeti-ness and unicorn-ness.  Or are is this about 
> whether we believe in Platonic forms or whatever the alternative is?  
> The concept versus the realization or whatever?  If so, I think we've 
> gone too far.
>
> Anyway, back to the point, so far you have not suggested any 
> definition, or description, of the terms, you have only objected to 
> those which others have proposed (and used).  I think that I am making

> a reasonable request.  Propose your own definition, or description of 
> how the term should be understood differently than in the current 
> document, or stop objecting.  This is not a theoretical thing -- I 
> honestly would like to understand what the term means if we use it, 
> and so far I have no idea what you think it means.
>
> -----Original Message-----
> From: Martin Chapman [mailto:martin.chapman@oracle.com]
> Sent: Friday, May 30, 2003 1:53 PM
> To: Cutler, Roger (RogerCutler); Francis McCabe; www-ws-arch@w3.org
> Subject: RE: isa and hasa in UML
>
>
> i give up on this.
> there is a standard out there which a number of tools support, planty 
> of books to read. So instead we invent our own notation - crazy.
>
> Martin.
>
> > -----Original Message-----
> > From: www-ws-arch-request@w3.org 
> > [mailto:www-ws-arch-request@w3.org]On
> > Behalf Of Cutler, Roger (RogerCutler)
> > Sent: Friday, May 30, 2003 11:40 AM
> > To: Martin Chapman; Francis McCabe; www-ws-arch@w3.org
> > Subject: RE: isa and hasa in UML
> >
> >
> >
> > There are concise definitions of is-a and has-a in the "old" doc.  
> > If you don't like them, it seems to me that you should come up with 
> > a better alternative.  Failing that, I suggest that we continue with

> > what we have.
> >
> > -----Original Message-----
> > From: Martin Chapman [mailto:martin.chapman@oracle.com]
> > Sent: Friday, May 30, 2003 1:34 PM
> > To: Cutler, Roger (RogerCutler); Francis McCabe; www-ws-arch@w3.org
> > Subject: RE: isa and hasa in UML
> >
> >
> > and how is is-a and has-a as defined in our doc any less or more 
> > powerful than uml. its all about set theory and if you choose to 
> > model
>
> > bad sets thats up to you.
> >
> > Martin.
> >
> > > -----Original Message-----
> > > From: www-ws-arch-request@w3.org 
> > > [mailto:www-ws-arch-request@w3.org]On
> > > Behalf Of Cutler, Roger (RogerCutler)
> > > Sent: Friday, May 30, 2003 10:43 AM
> > > To: Francis McCabe; www-ws-arch@w3.org
> > > Subject: RE: isa and hasa in UML
> > >
> > >
> > >
> > > This is REALLY discouraging.  I thought that the UML experts in 
> > > the room at Rennes were saying that "everybody knows" what has-a 
> > > means in UML, and all you have to do is strip it out of your 
> > > favorite undergraduate textbook.
> > >
> > > I have a strong feeling of distaste for ditching the definition of

> > > "has-a" currently in the document, which at least has the virtue 
> > > that I can understand and apply it, in favor of a definition that 
> > > appears to be like the Indian rope trick -- something that 
> > > everybody
>
> > > knows exists because somebody else has seen it.
> > >
> > > -----Original Message-----
> > > From: Francis McCabe [mailto:fgm@fla.fujitsu.com]
> > > Sent: Friday, May 30, 2003 12:01 PM
> > > To: www-ws-arch@w3.org
> > > Subject: isa and hasa in UML
> > >
> > >
> > >
> > > This is in partial fulfillment of my action item re is-a and has-a

> > > w.r.t. UML
> > >
> > > 0. There is a rather (unintentionally) funny comment in the UML 
> > > 2.0
> > > spec:
> > >
> > > 2.3.2.3 Semantics
> > >    The meanings of the constructs are defined using natural 
> > > language. ...
> > >
> > > (This is after a lot of promises of being formal.)
> > >
> > >    However, UML uses OCL for those cases where natural language is

> > > not
> >
> > > enough. OCL is similar to a first order predicate calculus. Having

> > > said that, the spec does not use OCL very often; including for the

> > > definition of relationships such as generalization (is-a) and 
> > > association (has-a kind of)
> > >
> > > 1. As I have indicated earlier, UML does not have a precise notion

> > > of is-a. The closest is the generalization relationship. This is 
> > > defined in 3.50:
> > >
> > > Generalization is the taxonomic relationship between a more 
> > > general element and a more specific element that is fully 
> > > consistent and that adds additional information.
> > >
> > > A couple of comments:
> > >
> > > 1. Basing is-a on taxonomics raises some serious logical issues. 
> > > This is analogous to basing everything on sets: every member of 
> > > the penguin
> >
> > > set is also a member of the bird set.
> > >
> > > The problem is that it becomes really difficult to talk about 
> > > weird or
> >
> > > abstract sets. Basing is-a on this would lead to the following 
> > > counter-intuitive result: every unicorn is a yeti. (There are no 
> > > documented instances of either, so the set of unicorns and yetis 
> > > is
> > > indistinguishable.)
> > >
> > > A more serious issue, sticking with birds for the moment, is that 
> > > it
>
> > > is similarly hard to talk about properties of birds such as 
> > > flying: we
> >
> > > could not express the fact that all birds except penguins fly.
> > >
> > > An even more serious issue is that we need to capture the 
> > > following
> > > situation:
> > >
> > > A service has an identifier
> > >
> > > A Web service is a service
> > > A Web service has a URI
> > >
> > > The Web service's URI counts_as the service identifier
> > >
> > > It is that counts_as that is beyond the capabilities of UML's 
> > > generalization. We *could* extend UML's generalization, and that 
> > > may
>
> > > be the best overall approach. In fact, we would really need to do 
> > > that
> >
> > > for all our relationships, use <is-a> and <has-a> and *never* rely

> > > on UML's built-in relationships. <is-a> and <has-a> could probably

> > > be defined in OCL.
> > >
> > >
> > > More to follow....
> > > Frank
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> >
> >
> >
> >
> >
>
>
>
>
Received on Friday, 30 May 2003 17:10:56 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 3 July 2007 12:25:19 GMT