[
Lists Home |
Date Index |
Thread Index
]
- From: matt@veosystems.com
- To: papresco@technologist.com
- Date: 16 Sep 1998 17:25:35 -0700
- Date: Wed, 16 Sep 1998 17:25:35 -0700 (PDT)
Paul Prescod wrote:
>
> On 15 Sep 1998 matt@veosystems.com wrote:
>
> > I know your opinion here. But inheritance is just a subset of
> > subclass relationships (subclass is an as-a relationship, inheritance
> > is an is-a relationship, and all is-a relationship are also as-a
> > relationships).
>
> I don't think that there is anything in the word "inheritance" that
> implies an is-a relationship, though I agree that sometimes it is used
> that way.
>
"Sometimes" meaning rarely, or "sometimes" meaning almost always, but
I'm not ready to concede the point? (I, too, can split hairs! ;-)
Inheritance and subclassing are both about substitutability. I think
it would be fair to say that inheritance has _almost always_ been
associated with wholesale borrowing of the structure of the thing
being inherited from, either through copy or reference (through
delegation). The exceptions, like C++'s private inheritance, are at
the margins. In what language that you are aware of does inheritance
or subclassing not imply substitutability?
>
> So let me do so:
>
> XML element types have three interesting properties: content models,
> attributes and GIs. So to me, "inheritance" between element types would be
> about borrowing some or all of another element types content model,
> attributes or GIs.
>
If you only borrow some, you lose substitutability. If you want to
borrow without substitution, just use pe's. You haven't gained
anything semantically interesting.
> Subclassing, on the other hand, would be about having an element of one
> type "play the part of" an element of another type, such as a
> cross-reference "playing" an XLink.
>
Inheritance means playing the part of the element you are inheriting
from (with a nod towards awkward exceptions at the margin).
Matthew Fuchs
matt@veosystems.com
xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/
To (un)subscribe, mailto:majordomo@ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo@ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa@ic.ac.uk)
- References:
- OO Schemas
- From: Paul Prescod <papresco@technologist.com>
|