[sc34wg3] TMQL, State of Affairs

Lars Marius Garshol sc34wg3@isotopicmaps.org
Wed, 25 May 2005 19:17:17 +0200

* Steve Carton
| It seems to me that in and of itself, the complexity of a data model
| isn't justification for a query language specific to that model.
| Now does it seem to me that the fact of many data models being
| coupled with dedicated (or at least adapted) query languages is a
| justification for a new one. It seems to me that the justification
| lies in promoting adoption.

There is a lot of truth to that. I guess Robert and I make it sound as
though using SQL/XQuery is just too awful to even consider, and as you
point out here:
| No question (IMHO) that we could "normalize" TMs and implement them
| in RDBMS tables, and then query these using SQL.  I've done it --
| but it isn't something I would imaging would gain popular
| acceptance. I can also imagine an implementation using XQuery.  But,
| again, it would not be for the faint of heart.

that is not the case; it's just that that way of doing things wouldn't
hold much appeal for anyone. 
| It seems to me that the nature of the TM data model is such that a
| query language that enables easy expression of the relationships
| inherent in the TM is required -- and by easy, I guess I mean easy
| to understand and adopt. I don't know of any existing query language
| that supports this.  So, for me at least, that is justification for
| a TM QL.

Exactly. And since most of it is likely to be implementable with SQL
(or XQuery), there's nothing to stop anyone from building an
implementation that is just a TMQL->SQL compiler. That would provide
the end-user benefit (and adoption :), without requiring the
implementor to really do all that much. Ie: it would be an approach
that would be very much economically viable.

In the WG3 meeting today we pretty much resolved that this was what
the UK's comment boiled down to: a large subset of TMQL (most of the
language core, if you like) has to be efficiently implementable on
SQL. Provided we have achieved that, we can have our cake and at the
same time eat it. Ie: it's possible to use SQL to query topic maps
(even if no human being actually writes that SQL), and at the same
time efficient native implementations are possible.

Lars Marius Garshol, Ontopian         <URL: http://www.ontopia.net >
GSM: +47 98 21 55 50                  <URL: http://www.garshol.priv.no >