OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

topicmaps-comment message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]


Subject: RE: [topicmaps-comment] TAO vs. ERA


> I came to this view by wondering how to represent relational tables in a
> topic map.  A row is a set of data elements.  If you create an association
> and label it as a "set" type, the resulting set could represent the row.
> Each role type is analogous to a column type.   In further support of this
> view, remember that C.J. Date, for example, emphasizes that a row is a
> "relation".
>
> Note that in the relation database, the type of the column is specified in
> the schema (or the DDL), whereas in the topic map it is specified by the
> topic reference of the role.

When you define a column in a relational table you are inherently defining
two classes (types).  The first defines the domain of the column from which
values may be drawn - one can think of it as the type of the column.  The
second is a subtype of the first and is the set of things that play the role
that is implicit in the column in one or more tuples in the relation.  The
relational model itself does not provide a specific mechanism for saying
much more about the role, beyond using a suitable name for the column, but
nevertheless the class is there.

One of the characteristics of such 'role-based' classes is that in the
general case a member of the supertype class can be a member of any number
of the 'role-based' subtype classes.  They therefore do not make good
candidiate entity types (entity sets in Chen's E-R model) in an E-R-A model
as they are not sortal types.

'Composer' seems to me to be a good example of a notion that has multiple
overlapping classes associated with it.  Certainly one can say that someone
who has composed a piece of music is a 'composer'.  But one may also wish to
designate someone as a 'composer' without providing specific evidence of
their role in any compositions.  One may also wish to define a person as a
'composer' on some basis which considers the quality or significance of what
they have composed.  There again, a person might only wish to designate
themselves as a 'composer' if it is their principal occupation.  These are
clearly all different classes that are subtypes of some 'composer' powerset,
and one can also define generalisations of sets of them.

I think that one has to be careful about drawing too much of an analogy
between E-R and topics and associations, partly because of restrictions in
the E-R model.  Among the things that I would cite are the following:

(1) A relationship cannot be treated as an entity whereas an association can
be reified as a topic.

(2) A topic can equate to either an entity set (using Chen's terminology) or
an entity (i.e. an entity type or an instance of an entity type) - something
that the E-R model does not support.

(3) An association can exist between a topic that equates to an entity set
and a topic that equates to an instance of an entity set.

Regards
Chris Angus



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]


Powered by eList eXpress LLC