[tmql-wg] Every thing is a 'thing'

Lars Marius Garshol larsga at garshol.priv.no
Sat Mar 10 09:44:59 EST 2007

* Robert Barta
> You now completely derailed me :-)

Sorry. :)

> Under tm:topic [ TMDM interpretation ] I understood
>    3.18
>    topic
>    symbol used within a topic map to represent one, and only one,
>    subject, in order to allow statements to be made about the subject
> So with
>    where $thing isa tm:topic
> I will never get a living, breathing person, but only 'symbols within
> a topic map to...'. And in TMQL-land this is the topic item.

Yes. Now Imagine this query:

   select $a where
     $thing isa tm:topic &
     $thing / shoesize > 30

Isn't the meaning of this "give me all topics which have shoe sizes  
larger than 30"? But what topic has a shoesize? Only people have  
shoesizes, so this should return nothing.

There is a semantic difference between "topic" and "things  
representable with topics". It's not the case that every topic is an  
instance of tm:topic, but every topic is an instance of "thing  
representable with a topic".

> OK, if 'everything' in the universe is meant, then a query for it is
> probably useless inside a TMQL query. I would hate it as a person if I
> would be have to be passed through a Java interface. I do not like
> that.

I thought so.

> Maybe ask the other way round: Do we have a term for 'all items in the
> topic map'? Not necessarily including the data values, which are not
> _items_ according to TMDM.

TMDM says:

   "A topic map construct is a component of a topic map; that is, a
   topic map, a topic, a topic name, a variant name, an occurrence,
   an association, or an association role."

In other words: yes, we do. But it's not a very pretty term. :)

I guess one issue here is whether "isa" is necessarily the right  
operator to use. What if we defined some other axis (or whatever)  
which could be used to test whether something is a topic, name,  
association, or data value?

> Hehehe, it seems that we have to work on the semantic grounding of
> Topic Maps :-)))

Yes. And "we" means me, in the first instance. :)

> Yes we need something for
>   - all items in the map                (tm:subject??? not sooo good)
>   - all topics                          (tm:topic)
>   - all assocs                          (tm:association)
>   - all names                           (tm:name)
>   - all occurrences                     (tm:occurrence)
>   - maybe all 'names+occurrences'       (?????)
>   - something else?

We do. I guess my question is whether we have to use types for this.

> Have to break here and will come back to the rest later.


--Lars M.

More information about the tmql-wg mailing list