Re: The Network Data Model, foundation for Relational Model

From: Ken North <knorth2_at_deletethis.yahoo.com>
Date: Sun, 16 May 2004 13:22:03 -0700
Message-ID: <c88ico$k6i$1_at_ngspool-d02.news.aol.com>


"Leandro Guimarães Faria Corsetti Dutra" <leandro_at_dutra.fastmail.fm> wrote in message news:pan.2004.04.24.17.29.23.632444_at_dutra.fastmail.fm...

<< ... would you have a reference to Bachman or someone else having thought of a data model before Codd?

Codd's contribution was enormously important. His work, like so much else in this field, benefited from giants who preceded him. The origins of database and the relational model are included in these slides. Slide 17 is about the foundation for the relational model (Cantor, Childs): http://www.webservicessummit.com/Trends/ComputingTrends_part1_files/frame.htm

Childs' paper (March 1968) was cited by Codd in his seminal work on relational data banks (June 1970). Childs' work explained the set-theoretic data structure (STDS). An STDS included a collections of sets and a collection of set operations (union, intersection, domain, cartesian product).

> > It seems clear that the CODASYL DBTG was working on "the network model"
throughout its task

I've never heard the term "network model" DBMS in any context other than the CODASYL DBTG standard.

<< starting in 1969.

Earlier -- I have minutes from CODASYL DBTG meetings in 1968.

> > But it's clear that they were arriving at a model, not an individual
> > implementation.

The minutes of Sept. 12, 1968 explained primitives for operating on sets. Item 2d says "The language of the DBTG should follow similar idealized rules, and its generality should not be restricted. It should avoid specifying methods of implementation."

> Do you have any reference (online if possible) to them having a data model in
their collective minds?

The terms "data model" and "network model" weren't used in any discussion I remember about CODASYL DBTG in the late '60s.

However, the orientation was sets and operations on sets. The CODASYL DBTG was creating a standard for programming languages to define and manage sets, to run queries that operated on sets, to select a member of a set and so on.

Today we use "formal data model" to define how data is represented, organized and operated on. For example, these documents traces the evolution of the formal data model for W3C XML Query:

2001: http://www.w3.org/TR/2001/WD-query-datamodel-20010215/ Nov 2003: http://www.w3c.org/TR/xpath-datamodel/

Query Algebra (2001) http://www.w3.org/TR/2001/WD-query-algebra-20010215/ (deprecated).
Formal Semantics (Feb 2004) http://www.w3.org/TR/xquery-semantics/

The CODASYL DBTG effort researched operations on sets. In the Sept. 1968 meetings, for example there was a discussion of basic set operations (PRIMITIVES), recursiveness, and retrieval techniques. The spec that was published a few years later covered how sets were defined and navigated.

>> It was an implementation of a language

The CODASYL DBTG undertook development of a standard that was multi-lingual (e.g., FORTRAN and COBOL). The initial work in the 60s focused on COBOL because it was the de facto standard for transactions and business data processing. Those
 were likely candidates to use databases instead of ISAM files.



Minutes: CODASYL DBTG Meeting at Bell Labs (August 12-16, 1968)

"During the discussion of philosophy, C. Bachman drew a matrix of indexing methods (file access) vs. inter-record relationships (set access). Under indexing methods were listed:

Direct
Sequential
Random
Index Sequential
Multi list
Inverted list
Hierarchical

Under inter-record relationships were listed:

No relationship among records
Owner-member relationship
Double-owner-member relationships (PERT-like)

The goal of the task group is to achieve all those indexing techniques by using a system of multi-owner-member relationships."


Received on Sun May 16 2004 - 22:22:03 CEST

Original text of this message