[tmql-wg] TMQL Proposal

Stefan Lischke lischke@ivs.tu-berlin.de
Wed, 02 Feb 2005 02:16:45 +0100


Kal Ahmed wrote:

> We implemented transitive closure as a stored procedure using a 
> well-known graph traversal algorithm - its not that hard to do.

I know that this can be done in some ways, but i think graph functions 
like that must be part of a more abstract Query Language to achieve 
interoperability and to avoid duplicate code.

As Lars pointed out, this abstract language could be implemented with 
TMRQL or for example XQuery (like plan to do it for my XTM4XMLDB) or 
with some other native stuff.

LMG and Robert, can you guys point out if and how graph functions, which 
i talked about (traversal, matching..), can be represented using the 
latest TMQL approach?
Or is it outside the requirement scope? If so, i have to say sorry to 
Kal, than thats not a strong argument against TMRQL


> Cheers,
> Kal
> On 1 Feb 2005, at 18:30, Stefan Lischke wrote:
>> Hi,
>> I have some points about this proposal.
>> In my head a topic map is represented as a graph of information items 
>> (defined by TMDM). For me the big advantage of topic maps is the 
>> abstraction in the model. We dont spend any time on thinking about 
>> "how" all our information items are connected. Therefor we created 
>> the abstract model TMDM. A Topic plays a role in an AssociationRole 
>> which is contained in an Association which may contain other 
>> AssociationRole. (plays and contains are edges)
>> With that i can imagine a huge topic map graph of all those TMDM 
>> defined information items.
>> But when looking at TMRQL, i have to change from a graph in my mind 
>> to a bunch of tables which are interconnected via id's.
>> The proposal says:
>> "One of the inherent principles that is embodied in the views 
>> approach is that every topic map object (topic, name, occurrence etc) 
>> has some kind of system identity."
>> That is definitely true, from the view of a Topic Map Engine 
>> developer. There has to be an identity for every information item.
>> But in my opinion it is not necessary for the user who works with 
>> topic maps. The user who creates a query must be able to stay in his 
>> abstract graph representation/imagination.
>> If the actual TMQL proposal fits to that needs is another question.
>> I researched about Graph Query Languages and subGraph Matching 
>> (especially efficient approaches with neural nets).
>> Kal maybe you can convince me. That i can stay by the graph 
>> representation in my mind and work with TMRQL.
>> How could i express the following query with TMRQL:
>> "Give me a subgraph of the TM, that contains a topic A, that has a 
>> path to topic B and C."
>> The problem of this query is the "path" operator, which is often used 
>> in Graph Query Languages. A path in a topic map is a chain of  
>> topic->assocRole->assoc->assocRole->topic->assocRole->assoc->......
>> Such queries are very common. For example in semantic enhanced search 
>> engines, where you can enter the words A, B, C. You'll get all 
>> occurrences of the subgraph that contains A, B, C as result.
>> just my 2c
>> Stefan
>> Kal Ahmed wrote:
>>> Dear all,
>>> Graham and I have published a paper proposing a different approach 
>>> to topic map querying. Rather than define a new query language, we 
>>> define a relational view of the topic map data model which can then 
>>> be queried using a standard relational query language such as SQL.
>>> Full details, including worked examples of the TMQL Use Cases which 
>>> run on TMCore05 can be found at 
>>> http://www.networkedplanet.com/download/TMRQL.pdf
>>> We would like this document to be taken as input from Networked 
>>> Planet Limited into the ISO TMQL standardisation process.
>>> Best regards,
>>> Kal Ahmed
>>> _______________________________________________
>>> tmql-wg mailing list
>>> tmql-wg@isotopicmaps.org
>>> http://www.isotopicmaps.org/mailman/listinfo/tmql-wg
>> -- 
>> My place : http://user.cs.tu-berlin.de/~lischke
> _______________________________________________
> tmql-wg mailing list
> tmql-wg@isotopicmaps.org
> http://www.isotopicmaps.org/mailman/listinfo/tmql-wg

My place : http://user.cs.tu-berlin.de/~lischke