[sc34wg3] CTM: Proposal for %mergemap directive

Lars Heuer heuer at semagia.com
Thu Nov 22 13:11:04 EST 2007

Hi Xuân,

> The notation information is an annotation to a thing (i.e. a topic). It
> is odd to make annotations special for this use-case, while topicmaps
>     %mergemap http://example.org/somedocument
>     tm:is-written-in(tm:document: http://example.org/somedocument ,
>     tm:media-type:tm:xtm) 

Yes, your proposal goes into the same direction as the proposal from

I like the idea (like I like the idea that functions are topics), but
it is IMO too chatty. If the CTM-parser sees "%mergemap" and the IRI,
the topic map to which the reference is made, should be deserialized

   %mergemap http://example.org/file

   [... 1190 lines of CTM ...]

   # Oh, well, it's AsTMa= I wish I had that info
   # at line 2 of the document ;)
   written-in(tm:document: ..., tm:syntax: astma)

> I do not see need for the notation, because we have media-types (like
> "application/xtm+xml" or "text/ctm" (in principle)) and we have
> autodetection (like "%ctm 1.0"), and if this does not help, we still
> have the standard-way of annotation.

The media type is not available in all cases. And the %version
directive is not enforced by CTM. We can make the %version directive
normative, but this wouldn't help if the referred document is encoded
in LTM, AsTMa= or XTM. You can come up with some more or less
intelligent sniffers or you can consider the file extension, but "xtm"
is IMO more clear. A string (or an IRI) is simple, it works and it is
easy to use and to implement.

Side note: I like the idea to use topic maps to encode functions,
templates etc., but you need too much syntax. The Compact Topic Maps
Notation is not compact enough to justify it. We can, for example drop
all directives and encode everything in CTM, but it looks ugly, it is
cumbersome and not *compact*.

Best regards,

More information about the sc34wg3 mailing list