CODASYL(英: conference/committee on data systems languages)は主として多くのコンピュータで利用できる標準プログラミング言語の開発を推進することを目的として組織され、COBOLの標準規格のメンテナンスと、関係データベース以前のデータベースのモデリングなどといった活動を行ったデータ処理業界の団体である。日本語では「コダシル」と読む。
CODASYL は1959年に組織された。メンバーはデータ処理に関係する業界と米国の政府機関の人間であった。その大きな目標は、データシステム分析・設計・実装の効率化の推進であった。数年にわたって各種言語について作業したが、具体的な標準化はなされず、標準化作業はANSIに引き継がれた。
1965年、CODASYL はリスト処理部会[1]を結成した。このグループはレコード集合の処理をCOBOL言語の拡張として開発することを目的としていた。名称はチャールズ・バックマンの IDS[2]システム(プロジェクトの技術的な出発点)でレコード間の関係をポインタでレコード同士を連結すること(つまりリスト)で管理していたことから来ている。1967年、同グループはデータベース作業班[3] (DBTG) と改称し、1968年1月に同グループはレポート[4]を発表した。1969年10月、DBTG はネットワーク型データモデルの言語仕様を発表し、これが一般に CODASYL データモデルと呼ばれるようになった。この仕様はいくつかの言語を定義している。ひとつのデータ記述言語(DDL)はデータベースの論理スキーマを定義し、別のDDLがデータベースのアプリケーションビューを定義するサブスキーマを生成する。そしてデータ操作言語(DML)でデータベースを操作する機能を COBOL に組み込む際の仕様を定義している。この仕様はCOBOLに照準を合わせていたが、(DDLとDMLを分離したことから)言語とは独立したデータベースという概念が生まれる元となり、IBM はそれを利用して PL/I を COBOL の後継として宣伝した。
1971年、プログラミング言語からの独立性を求める声が強くなり、組織は再編され、DDL の開発はデータ記述言語委員会[5]が受け持ち、COBOL DML の方は COBOL 言語委員会[6]が受け持つようになった。後世から見れば、この分割がよくない結果を生んだ。両者の仕様策定は同期されることなく独自に行われ、ベンダーはその差異に悩まされることになる。結果として、実装された製品間で非互換が発生することとなった。
いくつかのベンダーがDBTG仕様に(大まかに)準拠したデータベース製品を実装した。主なものは以下の通り:
- Integrated Data Store() (IDS/2) - ハネウェル
- Integrated Database Management System() (IDMS) - Cullinet
- DMS-1100 - UNIVAC
- DBMS32 - DEC
Cullinet(当時の名称は Cullinane)はグッドリッチから技術を導入した。Cullinet は後にコンピュータ・アソシエイツ(CA)に買収されるが、CAは2006年現在も IDMS の後継製品を販売している。
CODASYL の委員会の一部は現在も活動しているが、CODASYL 自体は既に存在しない。CODASYL に関する記録はチャールズ・バベッジ研究所が保管しており、同研究所のウェブサイトで見ることができる。
1980年代に関係データベースが注目されるようになると共に CODASYL の活動は減退していった。
- The Codasyl Approach to Data Base Management. T. William Olle. Wiley, 1978. ISBN 0-471-99579-7.
- The Codasyl Model. J. S. Knowles and D. M. R. Bell, in Databases - Role and Structure, ed. P. M. Stocker, P. M. D. Gray, and M. P. Atkinson, CUP, 1984. ISBN 0-521-25430-2
- ^ 英: list processing task force
- ^ 英: integrated data store
- ^ 英: data base task group
- ^ 英: COBOL extensions to handle data bases
- ^ 英: data description language committee
- ^ 英: COBOL Language Committee