DL/I(ID:1971/dli001)

Data Language/I 


Data Language/I

Query language, linear keyword, data manipulation language for IBM IMS.



Related languages
DL/I => DML   Interface for

References:
  • FRY, J. and GOSDEN, J. "Survey of Management Information Systems and Their Languages" in Critical Factors in Data Management, F, Gruenberger, (Ed.), McGraw-Hill Book Co., 1969, pp41-55. view details Extract: NORTH AMERICAN AVIATION/DL-1
    NORTH  AMERICAN  AVIATION/DL-1
    Background. Data Language-1 (DL-1) is a data management system devloped jointly by the Space Division of North American Aviation, Inc. (NAA) and International Business Machines Corporation (IBM) in 1966. The DL-1 effort is a continuing joint effort by IBM and NAA based on their previous experience with a system called DATE, which was implemented on the IBM 7010 computer. The first version of DL-1 will contain all the features of 7010 DATE system. DL-1 is written for the IBM 360 family of computers and requires Operating System/360 and Data Management to operate. The system also uses COBOL and PL/I as programming languages.
    An on-line facility, called Information Control System (ICS), has also been planned. This system interfaces with DL-1 and permits simultaneous execution of teleprocessing and conventional batch processing programs. ICS includes a routine to handle 60 remote terminals and 50 different types of messages. The system operates under the OS/360 Interim Sequential Partitioned System, and was implemented during the early part of 1968.
    Summary of Capabilities. DL-1 provides a user with the means to organize and describe a hierarchically structured data base. The system creates a set of directories and data description tables required when the data base is initially loaded into the system and when the data is retrieved and manipulated during the execution of the user's applications programs. Data base definition is external to the applications program. DL-1 also provides the means for applications programs to interface with the system in order to create, maintain, and retrieve data from the data base. The system also allows for more than one applications program to access the same data base and allows logical records to span one or more physical disk tracks if necessary.
    Storage media for the data base can be either tapes or disks. The data in tape files are accessed by the Sequential Access Method (SAM) while disk files are accessed via the Index Sequential Access Method (ISAM).
    Specific Features. DL-1 is an interface between problem oriented compilers (COBOL and PL/I) and the IBM operating system OS/360. The primary point of contact of DL-1 with OS/360 is the Data Management section of OS/ 360, which is an I/O system that provides such data handling services as buffering and storage device control.
    The system does not have its own retrieval languages. Each user of the data base is required to prepare an applications program in COBOL or PL/I in order to manipulate the data base. The applications programs contain interface statements to the PL/I system and a communications table called a Program Communication Block (PCB). The interface statements consist of COBOL or PL/I "calls" to DL-1 followed by a series of parameters that indicate the type of operation on the data base that is desired. The actual operation on the data base will be performed by the DL-1 system.
    An output formatting program is not available in the first version of the system but is being planned for future versions. Theoretically, this facility could be provided by a COBOL or PL/I applications program.

    This system also incorporates strong separate terminal and data file protection.
  • Stock, Karl F. "A listing of some programming languages and their users" in RZ-Informationen. Graz: Rechenzentrum Graz 1971 73 view details Abstract: 321 Programmiersprachen mit Angabe der Computer-Hersteller, auf deren Anlagen die entsprechenden Sprachen verwendet werden kennen. Register der 74 Computer-Firmen; Reihenfolge der Programmiersprachen nach der Anzahl der Herstellerfirmen, auf deren Anlagen die Sprache implementiert ist; Reihenfolge der Herstellerfirmen nach der Anzahl der verwendeten Programmiersprachen.

    [321 programming languages with indication of the computer manufacturers, on whose machinery the appropriate languages are used to know.  Register of the 74 computer companies;  Sequence of the programming languages after the number of manufacturing firms, on whose plants the language is implemented;  Sequence of the manufacturing firms after the number of used programming languages.]
  • Stock, Marylene and Stock, Karl F. "Bibliography of Programming Languages: Books, User Manuals and Articles from PLANKALKUL to PL/I" Verlag Dokumentation, Pullach/Munchen 1973 185 view details Abstract: PREFACE  AND  INTRODUCTION
    The exact number of all the programming languages still in use, and those which are no longer used, is unknown. Zemanek calls the abundance of programming languages and their many dialects a "language Babel". When a new programming language is developed, only its name is known at first and it takes a while before publications about it appear. For some languages, the only relevant literature stays inside the individual companies; some are reported on in papers and magazines; and only a few, such as ALGOL, BASIC, COBOL, FORTRAN, and PL/1, become known to a wider public through various text- and handbooks. The situation surrounding the application of these languages in many computer centers is a similar one.

    There are differing opinions on the concept "programming languages". What is called a programming language by some may be termed a program, a processor, or a generator by others. Since there are no sharp borderlines in the field of programming languages, works were considered here which deal with machine languages, assemblers, autocoders, syntax and compilers, processors and generators, as well as with general higher programming languages.

    The bibliography contains some 2,700 titles of books, magazines and essays for around 300 programming languages. However, as shown by the "Overview of Existing Programming Languages", there are more than 300 such languages. The "Overview" lists a total of 676 programming languages, but this is certainly incomplete. One author ' has already announced the "next 700 programming languages"; it is to be hoped the many users may be spared such a great variety for reasons of compatibility. The graphic representations (illustrations 1 & 2) show the development and proportion of the most widely-used programming languages, as measured by the number of publications listed here and by the number of computer manufacturers and software firms who have implemented the language in question. The illustrations show FORTRAN to be in the lead at the present time. PL/1 is advancing rapidly, although PL/1 compilers are not yet seen very often outside of IBM.

    Some experts believe PL/1 will replace even the widely-used languages such as FORTRAN, COBOL, and ALGOL.4) If this does occur, it will surely take some time - as shown by the chronological diagram (illustration 2) .

    It would be desirable from the user's point of view to reduce this language confusion down to the most advantageous languages. Those languages still maintained should incorporate the special facets and advantages of the otherwise superfluous languages. Obviously such demands are not in the interests of computer production firms, especially when one considers that a FORTRAN program can be executed on nearly all third-generation computers.

    The titles in this bibliography are organized alphabetically according to programming language, and within a language chronologically and again alphabetically within a given year. Preceding the first programming language in the alphabet, literature is listed on several languages, as are general papers on programming languages and on the theory of formal languages (AAA).
    As far as possible, the most of titles are based on autopsy. However, the bibliographical description of sone titles will not satisfy bibliography-documentation demands, since they are based on inaccurate information in various sources. Translation titles whose original titles could not be found through bibliographical research were not included. ' In view of the fact that nany libraries do not have the quoted papers, all magazine essays should have been listed with the volume, the year, issue number and the complete number of pages (e.g. pp. 721-783), so that interlibrary loans could take place with fast reader service. Unfortunately, these data were not always found.

    It is hoped that this bibliography will help the electronic data processing expert, and those who wish to select the appropriate programming language from the many available, to find a way through the language Babel.

    We wish to offer special thanks to Mr. Klaus G. Saur and the staff of Verlag Dokumentation for their publishing work.

    Graz / Austria, May, 1973
  • Nievergelt, J. "Binary search trees and file organization" pp195-207 view details
          in [ACM] ACM Computing Surveys (CSUR) 6(3) September 1974 view details
  • Kapp, Dan; Leben, Joseph F. "IMS Programming Techniques : A Guide to Using DL/1" New York, NY: Van Nostrand Reinhold Company, 1978 view details
          in [ACM] ACM Computing Surveys (CSUR) 6(3) September 1974 view details
  • Baron, Robert J. [and] Linda G. Shapiro Data structures and their implementation Van Nostrand Reinhold Company 1980 view details Extract: Some Systems That Use Interesting Data Structures
    Some Systems That Use Interesting Data Structures

    OVERVIEW
    In this chapter, we describe three examples of software systems where structures play an important part. The systems described are: IMS, a hierarchical database system; ESP3, a high-level graphics system; and GROPE, a graph processing system. For each system, we discuss the purpose of the system, the user interface language, and the data structures used in its implementation.


    9.1 INTRODUCTION
    Although we have given a number of examples to illustrate the concepts presented in this text, most of them have been small or incomplete. In this chapter, we describe three interesting and different software systems where data structures play an important part. The first system described is IMS (Information Management System), a database system that runs on the IBM 360/370 series computers. IMS is a hierarchical system and uses tree structures to store the data. The second system described is ESP3 (Extended SNOBOL Picture Pattern Processor), a high-level graphics language;
    The ESP3 system uses multi-linked structures to represent pictures. The third system is GROPE (Graph Operations Extension), a graph processing system implemented as a set of FORTRAN routines on CDC 6600 and IBM 360 computers. GROPE uses a variety of data structures including, lists, sets, nodes, arcs, and graphs. Although the three systems were developed by different people for different purposes, they share a common goal of providing a group of users with a special purpose, high-level, easy to use system, where the data structures and basic algorithms are provided. We will now examine each of these systems in some detail.
    Extract: IMS: A HIERARCHICAL DATABASE SYSTEM
    IMS: A HIERARCHICAL DATABASE SYSTEM
    A database is a collection of data stored on a secondary storage device and used in an application system; for example, a hospital might keep a database containing information concerning patients, employees, supplies, and accounting. Most databases are relational structures; that is, there are relationships linking the basic entities together. In the hospital example, some of the employees may be doctors; for each doctor, there will be a group of patients who are current patients of that doctor, and a group of patients who are previous patients of that doctor. Also, for each patient, there will be a group of doctors who have cared for that patient.
    A hospital administrator receiving a complaint from a patient may wish to find out who all the doctors are who have cared for that patient. The administrator must query the database to find the answer to his question. Thus a database system must consist of a structure for storing the data and a retrieval system, including a query language. In this section, we will discuss the structure and implementation of IMS, a hierarchical database system. We will also describe briefly the IMS query language. The design of a query language is beyond the scope of this book
    Extract: The IMS structure
    The IMS structure
    The information in IMS databases has a natural hierarchic structure. For example, for each patient in the hospital database, name, age, height, weight, address, phone number, current allergies, current ailments, and past history of illnesses could be important. In an IMS system, the data for one patient might have the structure shown below. Each patient has a patient number which uniquely identifies him or her and a record containing personal data, such as age, height, weight, address, and so on; each patient can have several different current allergies, each of which is identified by an allergy number, and several different current ailments, each of which is identified by an ailment number.
    Finally, each former illness is included in the structure, along with each doctor who cared for the patient during that illness, each medication given, and each treatment required.
    The blocks in the tree structure shown above represent IMS segment prototypes, and the tree structure shows the hierarchical relationship among the segment prototypes. The block labeled PATIENT is a prototype for all PATIENT segments. Each segment will be a fixed length block containing a set of fixed lengthfield occurrences; thus each PATIENT segment will contain two fixed length fields: PATIENT NUMBER and PATIENT DATA. (In reality, the PERSONAL DATA field would probably be partitioned into the many smaller fields it represents; we have merged them for simplicity.)
    Associated with each PATIENT segment will be a set of CURRENT ALLERGY segments, a set of CURRENT AILMENT segments, and a set of a FORMER ILLNESS segments. Associated with each FORMER ILLNESS segment will be a set of DOCTOR segments, a set of MEDICATION segments, and a set of TREATMENT segments.
    The data structure for each patient has a tree-like organization. The root node is a PATIENT segment;
    the PATIENT segment is the parent segment of three child segments, some of which have child segments of their own.
    Extract: The IMS query language
    The IMS query language
    The IMS system permits the definition of a structure, insertion and deletion of segments, and retrieval of information from the structure. We will be concerned with only the insertion, deletion, and retrieval aspects. The following operations are allowed:
    Operation.....Use
    GU.....GET UNIQUE.....direct retrieval
    GN.....GET NEXT.....sequential retrieval
    GNP.....GET NEXT WITHIN PARENT.....sequential retrieval
    under current parent
    GHU.....GET HOLD UNIQUE.....direct retrieval with
    DLET/REPL option
    GHN.....GET HOLD NEXT.....sequential retrieval
    with DLET/REPL option
    GHNP.....GET HOLD NEXT WITHIN.....sequential retrieval
    PARENT.....under cur. rent parent
    with DLET/REPL option
    ISRT.....INSERT.....add a new segment
    DLET DELETE delete a segment
    REPL REPLACE replace a segment
    We will use the simplified syntax suggested by Date (1975) to illustrate the use of some of these commands.
    The GET UNIQUE (GU) command causes a forward scan starting at the beginning of the database. The segment retrieved will be the first segment that satisfies all the conditions specified in the command.


          in [ACM] ACM Computing Surveys (CSUR) 6(3) September 1974 view details
  • Blackman, K. R. "Technical Note -- IMS celebrates thirty years as an IBM product" pp374ff view details External link: Journal online Extract: Historical background
    In the early 1960s, President John F. Kennedy envisioned humans walking on the moon and set the goal for this vision to be accomplished before the end of the decade. Achieving this goal presented a challenge to American industry. North American Rockwell won the bid to launch the first spacecraft to the moon, and in 1965 they established a partnership with IBM to fulfill the requirement for an automated system to manage large bills of material for the construction of the spacecraft.

    In 1966, 12 members of the IBM team working with 10 members from North American Rockwell and 3 members from Caterpillar Tractor started the design and development of the Information Control System (ICS) and Data Language/I (DL/I). During the design and development process, the IBM team was moved to Los Angeles and increased to 21 members. This team completed and shipped the first release of ICS.

    In April 1968, ICS was installed. The first "IMS READY" message was displayed on an IBM 2740 terminal at the Rockwell Space Division in Downey, California, on August 14, 1968. ICS was renamed Information Management System/360 in 1969. Thus, IBM's Information Management System (IMS*) came into being, and the database management system revolution began.

    Database management system. The IMS database management system (DBMS) implemented the hierarchical model tree structure to organize the collection of records in a one-to-many entity-relationship data model. The use of a database introduced the concept of separating application code from the data. The database management system controlled the access and recovery of data. This established a new data processing technology paradigm. Now the application code could focus on the access and manipulation of the data. DL/I was developed to provide the application code with a standard interface to the data.

    Data Language/I. Navigational access to the data for application code is through the DL/I standard callable interface data manipulation language (DML). Since the data control was moved from the application, an opportunity was provided for on-line access to the data.

    An on-line component initially called Information Control System/Data Language/I (ICS/DL/I) was developed to support data communication access. To enable data communication transparency to the application program, the DL/I callable interface was extended to the on-line component. To maintain the integrity of data communication messages and to provide a queuing concept for scheduling application programs, a message queue function was created. ICS/DL/I evolved to become the transaction manager function of IMS.

    IMS has evolved to a family of product solutions that enables managed access to corporate business data. In 1998, IMS is celebrating its thirtieth year as an IBM software product.
          in IBM Systems Journal, 37(4) 1998 view details
  • Blackman, K. R. "Technical Note - IMS celebrates thirty years as an IBM product" IBM Systems Journal 37(04) 1998 view details Abstract: This technical note recognizes the thirtieth anniversary of the IBM Information Management System (IMS) and describes the initial requirements that led to the development of IMS. It also describes how IMS has evolved over the past thirty years to implement new technology while preserving customers' application programming investments. External link: Online copy Extract: Introduction
    In the early 1960s, President John F. Kennedy envisioned humans walking on the moon and set the goal for this vision to be accomplished before the end of the decade. Achieving this goal presented a challenge to American industry. North American Rockwell won the bid to launch the first spacecraft to the moon, and in 1965 they established a partnership with IBM to fulfill the requirement for an automated system to manage large bills of material for the construction of the spacecraft.

    In 1966, 12 members of the IBM team working with 10 members from North American Rockwell and 3 members from Caterpillar Tractor started the design and development of the Information Control System (ICS) and Data Language/I (DL/I). During the design and development process, the IBM team was moved to Los Angeles and increased to 21 members. This team completed and shipped the first release of ICS.

    In April 1968, ICS was installed. The first "IMS READY" message was displayed on an IBM 2740 terminal at the Rockwell Space Division in Downey, California, on August 14, 1968. ICS was renamed Information Management System/360 in 1969. Thus, IBM's Information Management System (IMS*) came into being, and the database management system revolution began.

          in IBM Systems Journal, 37(4) 1998 view details