The Theca interface - RQL
The predecessor of Theca, Typhoon , provided an XML-based API for both input(queries) and output(result sets). Although some customers still insist in communicating via API's, we have seen several advantages in applying an approach that is more suited for relational thinking. That’s why we developed the Relational Query Language, RQL. RQL allows both DML and DDL operations within the same scope of operations. RQL is highly inspired by SQL, but it avoids some of the pitfalls that has struck SQL.

RQL strictly follows the relational model. The relational model is based on sets, not bags. RQL does therefore not allow duplicates in relations, and unifies bags into sets automatically. The relational model is based on predicate and binary logics. By allowing NULL’s, SQL enters the twilight zone of 3-valued logics. RQL does therefore not allow nulls. RQL focus merely on expressing data management with no regards of external environments. Backward compatibility towards extinct programming languages such as Fortran is therefore spared in RQL. RQL allows specialisations of types, structures and operators at the lowest levels of the kernel.

Beside the basic differences mentioned above, the RQL syntax is intentionally influenced by SQL and it does not take an experienced SQL developer more than a couple of hours to feel confident behind the controls.

For customers upgrading to Theca from Typhoon, who want to keep the previous XML interface towards Theca, an RQL-XML interpreter is provided.
Tell me more!