ON THE NECESSITY OF DATA DESCRIPTION LANGUAGE
with Fabian Pascal

 

 

 

From: William Sisson

Date: 9 Jan 2006

 

In your recent posting on O/R mapping and in the paper Truly Relational: What it Really Means you state that you and David McGoveran are "not convinced that a unified data and programming language is the best idea."

 

I am very intrigued by what direction you are heading here as I have also had some doubts about whether another programming language is really the best approach in the context of the relational model.

 

One matter that has troubled me pretty much from when I started working with SQL DBMSs is the perceived need for a data description language in addition to a data manipulation language. Now it seems to me that as all data in a relational database is represented only as relations (including the metadata) then changing the schema is just doing data manipulation on the metadata and a separate language should not really be necessary for this purpose and indeed only adds unnecessary complexity. Or am I missing something obvious here?

 

As I cannot find a logical reason for the existence of data description language that I am satisfied with, I wonder if it only exists for historical reasons? After all the "CREATE TABLE" statement is close enough to such programming constructs as structures or COBOL file descriptions to be "comfortable" for programmers.

 

I would be interested to know what your thoughts on this matter are.

 

 

From:  Fabian Pascal

 

In the paper I explain why Codd went for a sublanguage in a host language. That's it.

 

Have not thought about this. The system would have to generate the catalog database with tables and domains and constraints somehow; and there would have to be a theoretically required definition of such a database to ensure completeness. I am not sure it's possible [without a DDL, be it implicit].

 

80-90% SQL stuff is historical coupled with the fact that those in charge never understood RM + 10-20% that understanding of the RM was rather limited in that stage. The direct image implementation is a clear example. Contrast this with TRM.

 

 

Posted 3/10/06

© Fabian Pascal 2006 All Rights Reserved