[sc34wg3] SIDP vs Assertion types

Jan Algermissen sc34wg3@isotopicmaps.org
Tue, 22 Apr 2003 18:23:29 +0200

Graham Moore wrote:
> Hi,
> I've been thinking about TMM applications in general and not just the SAM.
> The TMM allows for any arbitrary complex data structure to be either an SIDP
> or and OP.
> It also requires that any Application of TMM states all association types.
> The SAM has, for example, BaseNames. These could be mapped as SIDP
> properties (as they are just complex data structures) or they could be
> modelled as Assertions with the type defined as 'BaseName'.

Yes. This is a basic design decision to be made by TMAs: Is a relationship to
be modeled as an assertion or as a property. Thus, the SAM-as-a-TMA would have
to decide if the relationship between a subject and its name is regarded as
being a subject in its own right or not. Since there is a scope on the relationship,
the SAM-as-a-TMA must do the former.

In addition to all this, there is the possibility of defining a property
such as "BaseNames" that will have the list of all basenames (the strings)
as it's value. They would be conferred on the basis of the topic's participation
in 'BaseName' assertions.

You could think of this property as an equivalent to an RDBMS index (being
there for optimized access to a frequently used information)

> Is there anything in TMM that standardises when to do which? 

No, this absolutely depends on the requirements that the TMA designer
(or the customer of a particular TMA) has.

> If not then I
> could have multiple SAM ->TMM mappings. 

Well, ther will only be one SAM of course, but there are different
possibilities what the SAM can be (one possible example is N0396 
expressed as a TMA (what I am working on at the moment), another example
would be what I personally think the SAM should be. On the basis of
the TMM, these things can be discussed and consequences of certain decisions
can be (I hope) seen more clearly.

> The two extremes being one where I
> do everything as SIDPs/OPs and the other where I do everything with
> assertion types.

Exactly. If you do everything as properties you'd end up with something
like a relational schema that only has relations (tables) that represent
entity classes and no relations (tables) that represent relationship classes.

Rather efficient, but not very topic map-ish ;-)
> I would see that there are two generic connection mechanisms with TMM and
> I'm unclear when to use each in a TMA.

Again, whatever the TMA designer want's its TMA to be. 

TMAs can even be modularized, so we *could* (not a proposal) make the
SAM modular, putting some semantics in a core part and providing additional
modules that provide things like 'basenames as property' vs 'basename as
> What is the thinking on this?

I think that I am very glad you ask these questions, thanks.


> cheers
> gra
> --------------------
> Graham Moore, Ontopian               <URL: http://www.ontopia.net >
> GSM: +44 (0) 7769658611             moore@ontopia.net
> _______________________________________________
> sc34wg3 mailing list
> sc34wg3@isotopicmaps.org
> http://www.isotopicmaps.org/mailman/listinfo/sc34wg3

Jan Algermissen                           http://www.topicmapping.com
Consultant & Programmer	                  http://www.gooseworks.org