[topicmapmail] graphic language for describing TopicMaps
Are Gulbrandsen
a.d.gulbrandsen@usit.uio.no
Thu, 13 May 2004 13:33:53 +0200
On 13. mai. 2004 Thomas Schwotzer wrote:
> Very good. Very readable. It's interesting, you also draw associations
> as arcs.
> This is possible, if only two topics are members of an association.
Yes, I view occurrence as a binary association with special semantics
and model it as an arc. [1]
BTW, I wondered how to model the requirement of a PSI for a topic type.
Isn't it possible to view a PSI as a special type of occurrence for a
topic? - An occurrence offering both a unique identifier and
definition.
As an experiment I have modelled a required PSI as a required
occurrence in a new example of a 3-ary room-booking association:
http://folk.uio.no/areg/topicmaps/graphicalTM.html
> BTW, associations don't have a direction. The arc should be a line,
> shouldn't it?
The arrow is the notation for subtype. Men and a women are subtypes of
person. This is similar to the use in UML.
> Can you draw the relation e.g. between three topics which are
> members of the same association playing different roles?
Yes. ORM allows relationships of any arity. I have made a new example
of a 3-ary association on my webpage:
http://folk.uio.no/areg/topicmaps/graphicalTM.html
I'm programmed (brainwashed?) to always try to break down relationships
to binary relationships. In ORM associations, and everything else, can
be objectified to be first class object types, similar to reification
in TM-terminology. I think this is an advantage of the ORM metamodel.
Another advantage with ORM is that the notation includes a wide range
of restrictions [2].
Currently I'm a bit careful when I talk to "database people". Topic
Maps seems to be a little too anarchistic to many of them. TMCL is
going to be fun, and especially if the standard will reuse TMQL for
making complex restrictions. Suddenly it will be possible to enforce
restrictions that I most often have left out when making databases,
because they're too hard to handle.
Best Regards,
Are D. Gulbrandsen
The XML-group,
Center for Information Technology Services
University of Oslo
[1] In ORM one would model this as a binary relation where the
occurrence had the shape of a stipled circle. I find that this takes up
too much space in the diagram, and the role-descriptions don't give any
useful information. I thin it's both more compact and clearer to model
the "occurrence association" as an arc. The only trouble is that in ORM
it's very easy to objectify it, and with my notation one would have to
rely on the tool to change a bit more when reifying an occurrence.
[2] Mandatory role constraints and uniqueness constraints are the most
used. ORM notation also offers OR-constraints, subset-constraints,
equality constraints and ring constraints. ORM provides six built-in
ring constraints: antisymmetric (Oans), asymmetric (Oas), acyclic
(Oac), irreflexive (Oir), intransitive (Oit), and symmetric (Osym). See
http://www.orm.net/uml_orm.html for an introduction to and full
coverage of the ORM metamodel.