[sc34wg3] Comment on N0328 - identical association members

Marc de Graauw sc34wg3@isotopicmaps.org
Tue, 19 Nov 2002 14:42:28 +0100

| * Marc de Graauw
| |
| | I think it would be good to make it more explicit that an
| | association cannot have two members with the same role and
| | roleplayer.

* Lars Marius Garshol

| Actually, overall, the feedback I've received from people has made it
| very clear that the duplicate removal system in the SAM is not
| sufficiently emphasized for people to know that it is there. It seems
| that we have to add prose to the specification to make the general
| principle that duplicate members are removed from sets clear.
| The question is whether you think that would be enough. Personally, I
| would think that once this is established a glance at the equality
| rule for association roles would be enough to tell people how it
| works. Do you disagree?

No. It's just that XTM allows it, so I think it would be good to make it very

| Actually, associations may perfectly well contain two identical
| members in the interchange syntax. It's just that that's interpreted
| in exactly the same way as an association where one of the two
| identical members are removed.

Why allow it in the interchange syntax if neither SAM nor RM4TM does allow it?

The advantage of the way SAM models it (contrary to XTM) is that it becomes
very simple to explain associations in an intuitive way: an association is a
set of <topic, role> pairs (stricty speaking a set of <topic-reference,
role-reference> pairs). Which would be good for tutorial purposes.

That lead me to thinking whether we could say an association without roles is
simply a set of topics [1]. After all, if someone makes an association without
roles this person does seem to assert the topics in this association form some
kind of collection without further saying anything about the collection
(except maybe through a provided association type). I am not very certain
about the soundness or value of this idea yet. Nor of the relation with the
ongoing RM4TM discussion about roletypes in assertions.


[1] This does not follow mathematically since the set-representation of a
unary tuple <t> is {{t}}, not t.