



















               HONEYWELL INFORMATION SYSTEMS

              EDMS SCHEMA TO I-D-S/II DDL/DMCL

                     CONVERSION PROGRAM

                       USER'S MANUAL



                      October 1, 1979

                     Table Of Contents





1.0  INTRODUCTION . . . . . . . . . . . . . . . . . .



2.0  COMPONENTS OF THE ESCH CONVERTER . . . . . . . .



3.0  CP-V CONVERTER JCL . . . . . . . . . . . . . . .



4.0  JCL ON CP-6  . . . . . . . . . . . . . . . . . .



5.0  TRANSLATION FROM EDMS TO I-D-S/II  . . . . . . .



 5.1  SCHEMA AND AREA CLAUSES  . . . . . . . . . .



 5.2  GROUP AND ITEM CLAUSES . . . . . . . . . . .



 5.3  SET CLAUSE . . . . . . . . . . . . . . . . .



6.0  CONVERSION CONSIDERATIONS  . . . . . . . . . . .

1.0  INTRODUCTION.



Conversion tool ESCH reads EDMS schemas and generates a file

of I-D-S/II DDL and DMCL for CP-6.  Many EDMS  features  are

converted  directly.   Some  features cannot be converted at

all.  Some features are converted to close  neighbors  which

may require some changes to application programs.



The EDMS data base converter is a separate tool wich assumes

that  ESCH  schema  converter output is used to generate the

I-D-S/II schema.  The resulting DDL and DMCL for CP-6 may be

edited only if the data base converter is not used.



A basic assumption of the data base  conversion  package  is

that  a  CP-V data base must be re-organized if necessary to

represent the image of the resulting CP-6  data  base.   The

as a part of the CP-V conversion package.

2.0  COMPONENTS OF THE ESCH CONVERTER.



The files used in  the  EDMS  Schema  to  I-D-S/II  DDL/DMCL

Converter are defined as follows:





ESCH_SI1 Source for COBOL schema conversion program.



ESCH_OU1 Object unit for ESCH_SI1.



ESCH_CI2 Source for some COBOL callable subroutines to fix

  the in-core subschema to match the schema being

  accessed as a data base.



ESCH_OU2 Object unit of ESCH_SI2



ESCH_CI3 Compressed Source for Subschema of Schema (METASYM)

  This is a copy of EDMS CF011.



ESCH_OU3 Object unit of ESCH_CI3 for inclusion in run unit.



ESCH_CI4 Compressed Source for F:DB01.  This is a copy of EDMS

  CD094.



ESCH_OU4 Object unit of ESCH_CI4.



ESCH_CI5 SYSTEM file required for the assembly of ESCH_CI2.



ESCH_CI6 Compressed Source for SYSTEM DMS.  This is a copy of

  EDMS CD001.



ESCH_RU  EDMS DML converter run unit.



ESCH_SI7 Schema and subschema DDL for all EDMS schemas.



ESCH-SI8 COBOL COPY file from ESCH-ID11 required for compilation

  of ESCH_SI1.



ESCH_ID1 Schema DDL for a test schema for input to the converter.



ESCH_ID2 Test input schema for the converter.  Created by

    TRTESTDDL.



ESCH-ID10 Schema for all EDMS schemas.



ESCH-ID11 Subschema for all EDMS schemas.



ESCH_CL To compile all modules, link the run unit and

  run a sample test job.



ESCH_LX  To link object units into a run unit.



  to replace file names in this file of canned JCL.



3.0  CONVERTER JCL (CP-V).



The  following JCL is defined in the file ESCH_BA.  The EDMS

schema is read using  EDMS.   Output  work  files  ESCH_WF1,

ESCH_WF2  and ESCH_WF3 are concatenated into file DDLOUT for

export to CP-6.



!JOB

!LIMIT (TIME,6),(CORE,32),(ACCOUNT)

!PCL

DELETE ESCH_WF1,ESCH_WF2,ESCH_WF3

END

!.     THE INPUT TO THIS CONVERTER MUST BE AN EDMS SCHEMA

!SET F:SCHE/SCHEMA

!SET F:DB01/SCHEMA

!SET F:SSCH DC/ESCH-ID11

!.     THE OUTPUT OF THIS CONVERTER IS THREE WORK FILES

!.          WHICH ARE CONCATENATED AT THE END BY PCL.

!SET F:LOCK-OUT/ESCH_WF3;SAVE;KEYED

!SET F:LOCK-IN/ESCH_WF3;SAVE;INOUT

!SET F:DDL-OUT/ESCH_WF1;SAVE;KEYED

!SET F:DMCL-OUT/ESCH_WF2;SAVE;KEYED

!SET F:DMCL-IN/ESCH_WF2;SAVE;INOUT

!RUN (LMN,ESCH_RU)

!.     MERGE THE THREE WORK FILES INTO ONE OUTPUT FILE.

!PCL

COPY ESCH_WF1,ESCH_WF2,ESCH_WF3 OVER DDLOUT(LN)

DELETE ESCH_WF1,ESCH_WF2,ESCH_WF3

END









To batch a job,



!BATCH ESCH_BA SCHEMA=file1,DDLOUT=file2



Where:



file1    Input EDMS schema file.

file2   Concatenated schema DDL, DMCL and LOCKS. (Default DDLOUT)



The only file which must be specified is  the  input  schema

file.  The output file name is DDLOUT.

4.0  JCL ON CP-6.





Transfer  the output file to CP-6 and run with the following

JCL after defining the schema-name, subschema-name  and  the

subschema-ddl-name



!SET M$SO subschema-ddl-name

!DBACS input-file-from-CPV

!DBACS subschema-ddl-name

DBACS VALIDATE SUBSCHEMA subschema-name

               SCHEMA schema-name END

EDMS SCHEMA TO I-D-S/II DDL/DMCL

CONVERTER

5.0  TRANSLATION FROM EDMS TO I-D-S/II.



The following pages in this section define EDMS DDL on a page

followed by a page of equivalent I-D-S/II DDL and DMCL.

The pages may be placed side by side for comparison.

The first page defines the sechema and area clause.

The second page defines the group and item clauses.

The third page defines the set clauses.



5.1  EDMS SCHEMA DDL

  (SCHEMA/AREA)



SCHEMA NAME IS schema-name

  ;PRIVACY LOCK FOR EXTRACT IS lock-value-1



  ;PRIVACY LOCK FOR ALTER IS lock-value-2



  ;PASSWORD IS password-1  **

 ,RETRIEVE lock-value-3, lock-value-4 ...

 ,UPDATE lock-value-5, lock-value-6 ...



AREA NAME IS area-name-1

 CONTAINS integer-1 PAGES

  ;NUMBER IS type-1

  ;INVENTORY PERCENT IS integer-3

  ;OVERFLOW integer-4 integer-5 **

  ;FILL PERCENT IS integer-6 **

  ;LINES PER PAGE IS/ARE integer-7







(If the area contains one INDEXED record type

     and contains no sets area may be INDEXED)



(If an area is not INDEXED,

 then it must be INTEGRATED)



  ;CHECKSUM IS REQUIRED

  ;JOURNAL IS REQUIRED

  ;ENCIPERING IS REQUIRED

5.1 (cont) I-D-S/II SCHEMA DDL   I-D-S/II SCHEMA DMCL

    (SCHEMA/AREA)     (SCHEMA/AREA)



SCHEMA NAME IS schema-name  SCHEMA NAME IS schema-name

  ;PRIVACY COPY lock-name-1

  ;PRIVACY DISPLAY lock-name-1

  ;PRIVACY ALTER lock-name-2

  ;PRIVACY LOCKS lock-name-2









AREA NAME IS area-name-1  AREA NAME IS area-name-1

           ALLOCATE integer-8



           INVENTORY integer-3

        (INTEGRATED area only)



           PAGE INTERVAL IS integer-9

           (CALC_INT defaults to PAGE_INT)





           ORGANIZATION IS INDEXED





           ORGANIZATION IS INTEGRATED



           CHECKSUM

           JOURNAL

           ENCRYPTION

5.2  EDMS SCHEMA DDL

    (RECORD)



GROUP NAME IS group-name-1

  ;WITHIN area-name-1

 RANGE IS PAGE integer-1 THRU PAGE integer-2

  ;LOCATION MODE IS DIRECT

  ;LOCATION MODE IS DIRECT

 ,STORAGE SET IS set-name-1 SET  **

  ;LOCATION MODE IS INDEXED USING item-name-1

 (, item-name-2) ...  **







  ;LOCATION MODE IS CALC USING item-name-3

 (, item-name-4) ...

 DUPLICATES ARE (NOT) ALLOWED

  ;LOCATION MODE IS VIA set-name-2

  ;LOCATION MODE IS VIA set-name-2

 ,STORAGE IS set-name-3 SET  **

  ;NUMBER IS type-2

  ;PRIVACY LOCK FOR RETRIEVE IS lock-value-7

  ;PRIVACY LOCK FOR UPDATE IS lock-value-8



  ;STATISTICS ARE (NOT) REQUIRED **

INVERT ON item-name-5

  ;NUMBER IS type-3

  ;WITHIN area-name-1

 RANGE integer-7 integer-8  **

  ;DUPLICATES ARE (NOT) ALLOWED

item-name-1

  ;PICTURE IS character-string

  ;TYPE IS BINARY

  ;TYPE IS FLOATING SHORT

  ;TYPE IS FLOATING LONG

  ;TYPE IS PACKED DECIMAL integer-1

  ;TYPE IS CHARACTER integer-2

  (Alpha-numeric)

  (Alphabetic)

  (Signed numeric)

  (Numeric)

  ;OCCURS integer-3 times **

  ;PRIVACY LOCK FOR RETRIEVE IS lock-value-9

  ;PRIVACY LOCK FOR UPDATE IS lock-value-10

  ;CHECK IS PICTURE OF literal-1 THRU literal-2 **

  ;CHECK IS RANGE OF literal-1 THRU literal-2 **





5.2 (cont) I-D-S/II SCHEMA DDL   I-D-S/II SCHEMA DMCL

   (RECORD)     (RECORD)



RECORD NAME IS group-name-1  RECORD NAME IS group-name-1

WITHIN-area-name-1        RANGE IS integer-1 to integer-2

           IN area-name-1

  ;LOCATION MODE IS DIRECT REF-CODE

  ;LOCATION MODE IS DIRECT REF-CODE



  ;LOCATION MODE IS INDEXED      KEY NAME IS key-item-name-1

           USING KEY-item-name-1

    ;KEY NAME IS KEY-item-name-1     KEY_ID IS integer-1

     ASCENDING item-name-1

    DUPLICATES ARE NOT ALLOWED

  ;LOCATION MODE IS CALC USING

     item-name-3 (, item-name-4) ...

 DUPLICATES (NOT) ALLOWED

  ;LOCATION MODE IS VIA set-name-2 SET

  ;LOCATION MODE IS VIA set-name-2 SET





  ;PRIVACY FIND, GET IS lock-name-7

  ;PRIVACY INSERT, REMOVE, STORE,

 DELETE, MODIFY IS lock-name-8



  ;KEY NAME IS KEY-item-name-5 KEY NAME IS key-item-name-1

 ASCENDING item-name-5      KEY_ID IS integer-1





 DUPLICATES ARE (NOT) ALLOWED

02 item-name-1      (NONE)



  ;TYPE IS BINARY 35

  ;TYPE IS FLOAT BINARY 35

  ;TYPE IS FLOAT BINARY 71

  ;TYPE IS DECIMAL integer-1 SIGNED



  ;TYPE IS CHARACTER integer-2

  ;TYPE IS CHARACTER integer-3

  ;TYPE IS DECIMAL integer-4 SIGNED

  ;TYPE IS DECIMAL integer-5 SIGNED

    (See DDL Note about OCCURS below)

  ;PRIVACY LOCK FOR GET IS lock-name-9

  ;PRIVACY LOCK FOR MODIFY IS lock-name-10







5.3  EDMS SCHEMA DDL

      (SET)



SET NAME IS set-name-1

  ;OWNER IS group-name-1

  ;OWNER IS AREA area-name-1

  ;ORDER IS SORTED



    (Duplicates defined as MEMBER subclause)

  ;ORDER IS SORTED WITH GROUP-NO AS MAJOR/MINOR



    (Duplicates defined as MEMBER subclause)

  ;ORDER IS FIRST

  ;ORDER IS LAST

  ;ORDER IS NEXT

  ;ORDER IS PRIOR

  ;LINKED TO PRIOR

  ;STATISTICS ARE (NOT) REQUIRED **



MEMBER IS group-name-1

  ;INCLUSION IS AUTOMATIC

  ;INCLUSION IS OPTIONAL AUTOMATIC

  ;INCLUSION IS MANUAL

  ;LINKED TO OWNER

  ;SET OCCURRENCE SELECTION IS THRU

 CURRENT OF SET

 LOCATION MODE OF OWNER

      (DIRECT location mode)

      (CALC location mode)

     (ALIAS FOR item-name-1 IS item-name-2) ...

(If the location mode of the owner is VIA and

  the VIA set is also location mode of owner, then

        LOCATION MODE OF OWNER

          that is CURRENT)

          that is DIRECT)

          that is CALC)

          that is CALC with ALIAS)



  ;ASCENDING KEY IS item-name-3 ...

  ;ASCENDING RANGE KEY IS item-name-4 ...

  ;DESCENDING KEY IS item-name-5 ...

  ;DESCENDING RANGE KEY IS item-name-6

 DUPLICATES ARE FIRST

 DUPLICATES ARE LAST

 DUPLICATES ARE NOT ALLOWED

5.3 (cont) I-D-S/II SCHEMA DDL   I-D-S/II SCHEMA DMCL

   (SETS)     (SETS)



SET NAME IS set-name-1    (NONE)

  ;OWNER IS record-name



  ;ORDER IS PERMANENT INSERTION IS SORTED

      BY DEFINED KEYS

      DUPLICATES ARE LAST/NOT ALLOWED

  ;ORDER IS PERMANENT INSERTION IS SORTED

    WITHIN RECORD-NAME

 DUPLICATES ARE LAST/NOT ALLOWED

  ;ORDER IS PERMANENT INSERTION IS FIRST

  ;ORDER IS PERMANENT INSERTION IS LAST

  ;ORDER IS PERMANENT INSERTION IS NEXT

  ;ORDER IS PERMANENT INSERTION IS PRIOR

  ;SET IS PRIOR PROCESSABLE  (required)





MEMBER IS record-name-1

 INSERTION IS AUTOMATIC RETENTION IS MANDATORY

    INSERTION IS AUTOMATIC RETENTION IS OPTIONAL

 INSERTION IS MANUAL RETENTION IS OPTIONAL

LINKED TO OWNER

  ;SET SELECTION IS THRU set-name-1

    OWNER IDENTIFIED BY APPLICATION



    OWNER IDENTIFIED BY DATA_BASE_KEY

    OWNER IDENTIFIED BY CALC_KEY

      EQUAL TO identifier-1 (, identifier-2) ...



  ;SET SELECTION IS THRU set-name-2

    OWNER IDENTIFIED BY APPLICATION

    OWNER IDENTIFIED BY DATA_BASE_KEY

    OWNER IDENTIFIED BY CALC_KEY

      EQUAL TO identifier-3 (, identifier-4)...

    MEMBER SELECTION THEN THRU set-name-3

      WHERE OWNER IDENTIFIED BY data-base-identifier

  ;KEY IS ASCENDING data-base-identifier-3 ...



  ;KEY IS DESCENDING data-base-identifier-5 ...



DUPLICATES ARE FIRST

DUPLICATES ARE LAST

DUPLICATES ARE NOT ALLOWED





6.0  CONVERSION CONSIDERATIONS.



General EDMS Schema Conversion Considerations



1.   The  EDMS  schema is converted into I-D-S/II schema DDL

and DMCL without referencing the original  DDL.   Therefore,

the  conversion  program  is  not  dependent  upon  EDMS DDL

statement syntax, statement order, or optional wording.



2.   EDMS   privacy-locks   are   equivalent   to   I-D-S/II

lock-values.  There is no EDMS lock-name analog and I-D-S/II

lock-values  are not assigned in the schema definition.  The

conversion program generates a lock-name of PWn:R  for  each

the  lock  and  a statement is included in the lock file for

input with the use of the  ASSIGN  LOCKS  directive  in  the

DBACS.   Likewise,  for each password and update key pair, a

lock-name of PWn:U is generated and a statment is  added  to

the  locks  file  for use with the ASSIGN LOCKS directive in

the DBACS.  A typical  locks  file  statement  will  be  SET

lock-name-1 = lock-value-1.



3.   Hyphens  used in EDMS DDL names will be translated into

underscores.  I-D-S/II COBOL  subschema  names  are  written

with  hyphens  and  do  not  require  alias statements to be

considered synonymous with schema names which  use  hyphens.



4.  STATISTICS are not implemented in I-D-S/II at either the

record or the set level.



5.   STORAGE  SET  on  LOCATION MODE IS DIRECT or VIA is not

present in I-D-S/II.



6.  The integers used in I-D-S/II RANGE statements are  half

of the value used in EDMS.  Range boundaries are arranged to

avoid  overlaps due to EDMS range boundaries on odd numbers.



7.  The level-number for data items is arbitrarily  assigned

by the conversion program.



8.   OWNER  IS  AREA  is  not present in I-D-S/II.  A DIRECT

location mode record is created to serve as set owner.



9.  PRIOR and OWNER pointers are required in I-D-S/II.



10.  INDEXED areas must contain only records  with  LOCATION

MODE IS INDEXED.



11.   INDEXED  records may not participate in sets.  INDEXED

location mode records that participate in sets  are  changed

to CALC records.



12.   INDEXED  areas  must not contain inverted groups since





13.  The primary key of INDEXED records must consist of  one

item  within  the  record.   Multiple item keys used in EDMS

will be shortened by the translator to the first item  only.



14.   OCCURS  is  a  clause  not supported in I-D-S/II.  The

solution implemented in the  EDMS  schema  converter  is  to

translate an OCCURS item into many individually named items.

The  names  of  the  new  items  will  be  generated  by the

translator by appending Z0,...,Zn to the end of the original

EDMS item name.  Then in the I-D-S/II subschema,  the  items

may be grouped under the original name with an appended Z as

02  and  with  the  newly  generated names as 03.  The COBOL

application program may move  the  items  to  another  group

which is difined with the OCCURS clause.



15.   ORGANIZATION  IS  INDEXED statement is generated if an

area has one record type  and  only  with  INDEXED  location

mode.



16.   KEY_ID  integers  are  assigned sequentially from 1 to

1000 by the EDMS schema converter.



17.  EDMS CHECK statements will be  ignored  by  the  schema

converter since no comparable I-D-S/II function exists.



18.   EDMS  signed  and  unsigned  numeric  data  types were

characters in EDMS and will  be  signed  packed  decimal  in

I-D-S/II.   The  I-D-S/II subschema can change the data type

of numeric items back to character  for  use  in  the  COBOL

program.



19.  SORTED sets WITHIN RECORD_NAME are not sorted by record

type  as  a major key but are sorted without regard to other

record types in the set.





I-D-S/II DMCL Considerations



1.  The number of data base keys is  kept  the  same  as  in

EDMS.   The  number  of  pages is halved since the pages are

twice as long.



2.  The CALC interval will be the twice that used in EDMS to

create one CALC headers on each page.  The  number  of  CALC

headers  will  be one per page which is half the number that

was used in EDMS.  Two CALC headers per page cause the  line

offset  table  at  the end of the page to be half built upon

initialization.



3.  Statements concerning OVERFLOW and  LOAD  LIMIT  do  not

apply to I-D-S/II.

