GA22-6822-20 IBM System/360 and System/370 Bibliography July 1973, pages 77–78 (PDF pages 83-84) provides an extensive list of manuals for it. However, I doubt you will come across copies of any of these (except with immense effort and/or luck). From it, I gather that the original GIS had IBM program number 5736-CX1, while GIS Version 2 (aka GIS/2) had IBM program number 5734-XX1.
Griffin, M. A. (1976). Information Processing Systems. A I I E Transactions, 8(3), 307–313. doi:10.1080/05695557608975084 is the best source I can find in terms of technical details. While only a brief paper, it gives a couple of actual examples of the Data Description Tables (DDTs) which GIS uses to define its data files. Here is "Fig. 2. A master DDT for a file named PERSONEX":
DDT;*FILE:NAME=PERSONEX, RCDLVL=L L L L L L L L L L L L L L L L L L L L L;**FLD:NAME=PAY, LENGTH=1, JUST=R;*FLD: NAME=BDATE, LENGTH=6;MASK:PATTRN=ZZ/ZZ/ZZ;RDFN:FIELDS=MONTH,Z,DAY,2,YEAR,2;*FLD: NAME=NAME, LENGTH=25;*FLD:NAME=ADDRESS, LENGTH=20*FLD:NAME=PHONE, LENGTH=1O;MASK: PATTRN=ZZZ-ZZZ-ZZZZ;*FLD:NAME=MARSTAT, LENGTH=l, JUST=R, HEADER=MARITAL STATUS;ENCO:TYPSPC=LKUP, ERRORD=S, CONVA=S, CONVF=N, LGTHA=8, LGTHF=1, ;#EEDVAL=DIVORCED,4,MARRIED ,1,SINGLE ,2,WIDOWED, 3;DECD:TYPSPC=LKUP, LGTHA=1, LGTHF=8, CONVA=N, EEDVAL=1,MARRIED ,;#2,SINGLE ,3,WIDOWED, 4,DIVORCED;*SEGM:NAME=VITALINF, LEVEL=O, TYPE=RECORD, UNIND=Y, SORT=NAME,A;**DATM:DSORG=IS, CREATE-YES, CATLG=NO, UNIT=2314, DSNAME=CSIE166B, ;#KEYNAME=NAME, LRECL=132, RECFM=FB, BLKSIZE=1320, ;#ALLOC=CYL, SPACE=1, INDXSEP=NO, INDXSIZE=O, NTM=1, ;#INDOFL=O, CYLOFL=1, VDLUME=SER=GISPCK;**FLD:NAME=POSCODE, LENGTH=4;DECD:TYPSPC=LKUP, LGTHA=4, LGTHF=10, EEDVAL=1234,PROGRAMMER,2234,ANALYST ,;#5678, INSTRUCTOR;*FLD:NAME=SALARY, LENGTH=7, JUST=R;EDIT:TYPSPC=RNGE, LGTHA=7, CONVA=N, ERR0RD=E, EEDVAL=0500D00,6500000;MASK: PATTRN=$ZZ,ZZZ.ZZ;*SEGM:NAME=JOBDATA, LEVEL=1, TYPE=TRAILR, UNIND=Y, OPTION=CNT, ;#OPTFNM=PAY, SORT=DATE,A,POSCOD ,A;**END:
Here is an example of a procedure to create a file:
//GISMAG JOB (ACCOUNTING INFORMATION)//X EXEC GIS,PARM.GISFP=3,DDT='CSIEDDT'//SYSIN DD *CREATE PERSONEX FROM SOURCE2STRUCTURE JOBDATA FROM CARD3EQUATEMARSTAT TO MARITALEND EQUATEINSERT JOBDATA/ *//GISFP.FPSYSIN DD DATA//GISMAGB JOB (ACCOUNTING INFORMATION)AAARON, EDITH B. WIDOWED F205...B2310 22ND NORTHPORTC1100000010170D1234ABC Repeat Cards for Each RecordD .../*
Here is an example of a query, it produces a list of females with a salary between $10,000 and $12,000, sorted by name:
//GISMAG JOB (ACCOUNTING INFORMATION)//X EXEC GIS,PARM.GISFP=3,DDT='CSIEDDT'//SYSIN DD *QUERY CSIE166CLOCATE RECORDLOCATE JOBDATA(LAST)WHEN SEX EQ'F'ADD SALARY BT 1000000,1200000HOLD HOLDFL1 NAME,SALARYEXHAUST JOBDATAEXHAUST RECORDSORT HOLDFL1 NAMEQUERY HOLDFL1LOCATE RECORDLIST RECORDEXHAUST RECORDEND PROCEDURE/*//GISFP.FPSYSIN DD DATA//GISMAG2 JOB (ACCOUNTING INFORMATION)/*
Here is an example of a single job which starts with using GIS to query data out of a database, then passes the query results on to SAS for statistical analysis:
//GISMAGA JOB (1550,DBCA,O,2,2),'MAGRIFFIN',CLASS=M,MSGLEVEL=(1,0)//X EXEC GIS,PARM.GISFP=3,DDT='CSIEDDT'//SYSIN DD **QUERY CSIE166CLOCATE RECORDLOCATE JOBDATA (LAST)HOLD HOLOFL1 SALARY, SEX, MARSTATEXHAUST JOBDATA OR 1EXHAUST RECORD*SORT HOLDFL1 SEX, MARSTAT*QUERY HOLDFL1DEFINEVARIABLE1=0,7VARIABLE2=0,1END DEFINELOCATE RECORDLIST RECORDCHANGE VARIABLE1 TO SALARYCHANGE VARIABLE2 TO MARSTAT*LINK LINKRT USING VARIABLE1,VARIABLE2,SEX/*EXHAUST RECORDEND PROCEDURE*//GISFP.FPSYSIN DD DATA//GISMAGB JOB (1550,DBCA,1,3,2),'MAGRIFFIN',CLASS=M//GISTEP03.SASIN DD DSN=&SASIN,DISP=(NEW,PASS),// SPACE=(TRK,(5,5)),UNIT=2314,DCB=(LRECL=255,// BLKSIZE=255,RECFM=F),VOL=SER=SCRTO1*// EXEC SAS//SAS.DDCAROI DD OSN=&SASIN,DISP=(OLD,DELETE)//SAS.STSIN DD *TITLE 'LINKING FROM GIS TO LINKRT TO SAS' ;DATA:INPUT DDNAME=DDCARD1 SALARY 10-16 2 MARSTAT 32 SEXY $ 33;PROC PRINT;PROC MEANS;BY SEXY MARSTAT:PROC ANOVA;CLASSES MARSTAT SEXY;MODEL SALARY=MARSTAT SEXY;PROC DUNCAN;CLASSES MARSTAT SEXY;/*
It refers to this specific IBM manual: Generalized Information System, Version 2 (GlSI2) Program Description Volume 3, Procedural Language, SH20-1033-1 – which can be found in the above bibliography.