Newbie Topic Map Question

Hyeon Young Lee

Usenet Archive
Joined
Jul 5, 2004
Messages
2
Reaction score
0
Hello,

I am creating a relatively complex topic map in XTM. There are numerous associations. My question: If I use a <roleSpec> in my associations to define a relation R between two topics A and B, is it advisable to also use <instanceOf> in my topics to say that A is an instance of B? Is this good, wrong, or does it depend on the purpose?

An example:

<topic id="s1">
<instanceOf>
<topicRef xlink:href="#document"/>
</instanceOf>
.....
</topic>

<association>
<instanceOf>
<topicRef xlink:href="#user_created_document"/>
</instanceOf>
<member>
<roleSpec>
<topicRef xlink:href="#user"/>
</roleSpec>
<topicRef xlink:href="#hy"/>
</member>
<member>
<roleSpec>
<topicRef xlink:href="#document"/>
</roleSpec>
<topicRef xlink:href="#s1"/>
.....
</association>

As you can see, the relation between document and s1 is defined twice. I have seen this in several topic maps, but found no clear guidelines.

Thanks....

Hyeon Young Lee
 

Lars Marius Garshol

Usenet Archive
Joined
Jan 4, 2000
Messages
357
Reaction score
0
Hi there,

* Hyeon Young Lee
|
| I am creating a relatively complex topic map in XTM. There are | numerous associations. My question: If I use a <roleSpec> in my | associations to define a relation R between two topics A and B, is | it advisable to also use <instanceOf> in my topics to say that A is | an instance of B? Is this good, wrong, or does it depend on the | purpose?

Actually, there are three different things involved here:

- the types of the topics,

- the types of the associations between them, and

- the types of the roles they play in the associations.

The first two are both expressed with <instanceOf> but still different, while the third is expressed with <roleSpec>.

| An example:
|
| <topic id="s1">
| <instanceOf>
| <topicRef xlink:href="#document"/>
| </instanceOf>
| ....
| </topic>
|
| <association>
| <instanceOf>
| <topicRef xlink:href="#user_created_document"/>
| </instanceOf>
| <member>
| <roleSpec>
| <topicRef xlink:href="#user"/>
| </roleSpec>
| <topicRef xlink:href="#hy"/>
| </member>
| <member>
| <roleSpec>
| <topicRef xlink:href="#document"/>
| </roleSpec>
| <topicRef xlink:href="#s1"/>
| ....
| </association>
|
| As you can see, the relation between document and s1 is defined | twice. I have seen this in several topic maps, but found no clear | guidelines.

To say that s1 is a document and that it plays the role of document in the user_created_document association is actually two different statements, so there is no redundancy here.

A more relevant question is perhaps whether the topic type "document" and the role type "document" are actually the same thing. This topic map claims that they are, but I'm not so sure this is the case. The best fix to this problem might be to change the association to something like (using LTM syntax):

created-by(hy : creator, s1 : creation)

That would be like this in XTM:

<association>
<instanceOf>
<topicRef xlink:href="#created-by"/>
</instanceOf>
<member>
<roleSpec>
<topicRef xlink:href="#creation"/>
</roleSpec>
<topicRef xlink:href="#hy"/>
</member>
<member>
<roleSpec>
<topicRef xlink:href="#creator"/>
</roleSpec>
<topicRef xlink:href="#s1"/>
....
</association>

This avoids using "document" for two different things and at the same time improves the association (and the role types) by generalization.

I hope this helps!
 

Hyeon Young Lee

Usenet Archive
Joined
Jul 5, 2004
Messages
2
Reaction score
0
Hello Lars Marius,

many thanks! What a pleasant surprise to hear from someone as knowledgeable as you!

Best regards--

Hyeon Young

Lars Marius Garshol said:
Hi there,

* Hyeon Young Lee
|
| I am creating a relatively complex topic map in XTM. There are | numerous associations. My question: If I use a <roleSpec> in my | associations to define a relation R between two topics A and B, is | it advisable to also use <instanceOf> in my topics to say that A is | an instance of B? Is this good, wrong, or does it depend on the | purpose?

Actually, there are three different things involved here:
[...]
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
548,208
Messages
3,104,799
Members
249,594
Latest member
henrywalsh

Latest Threads

Top