logo
Epicycles in the 21st Century < SQL as TM Query Language? No, thanks! < < Home 

PrevUpNext

Epicycles in the 21st Century

The fact that I can store a topic map in a tabular model and that - consequently - I can construe a query covering a particular use case, proves just that. The same procedure can be repeated by storing XML content into a relational database (which many actually do) and query that. It may also be possible (no, I did not really try that) to store a topic map in a text file and use UNIX tools like awk to generate the results.

All this proves that - given the necessary amount of tables - every data structure can be theoretically mapped onto a tabular model. And - given a finite set of use cases - that for each of them an SQL equivalent can be constructed.

Slightly digressing, Ptolemeus, a second century A.D. astronomer came up once with the clever idea to explain seemingly strange planetary movements (they make loops when seen from earth). He used cycles moving on cycles [epicycles]. It is a good example of not having the right choice of an orthogonal system. Using many, many tables sounds very much like this.

It may be partly blamed on the TMQL use case selection in the first place, that it did not overly stress the semantic aspect, i.e. those queries which involve this little bit of reasoning which includes instance-of and (transitive) subclass relationships to be used. The queries were also meant to exemplary; real-life queries are usually much more convoluted. And the use case document only implicitely covers application scenarios which include the formulation of (adhoc ontological) rules.