cpy2xml

Top  Previous  Next

This tool analyzes a COBOL description of a record and generates XML view of the structure.

Each structure is described by the following XML elements:

datadef
datastruct
dataitem

Datadef elements represent the whole structures set. Each structure is described by a datastruct element. The dataitem elements describe both elementary and structured fields.

Syntax

cpy2xml [-options] <file>

Parameters

-v, --version

shows version

-o, --output <file>

specifies output file

-d, --store-dtd

generates DTD (Document Type Definition) file

-r, --report

verbose report

-i, --ignore-uncritical-redef

ignores non critical redefines. If set, the tool does not produce elements for non critical redefines.

-t, --tag-uncritical-redef

tags non critical redefines. If set each critical redefines element is tagged with the attribute discardable = "false"

-n, --rename-filler

renames filler fields with a unique ID

-h, --help

shows help

XML File

The file generated by cpy2xml, contains the following elements and attributes

Datadef  

The datadef attribute defines a data structure corrisponding to 01 level in Cobol language. 

Its attributes are:

attribute

required

description

built


contains the date of creation

language


language used

source


the name of source used to create xml file

Datastruct  

The datastruct element defines a data structure with elementary subitem or other nested structure. 

Dataitem element

The dataitem element defines the elementary field items.

Its attributes are:

attribute

required

description

Admittable values

name

yes

field name

 

level

yes

nested item level

 

redefines

 

name of the field redefined

 

occurs

 

max value indexed structure (default 1)

 

length

 

field size in bytes

 

picture

 

COBOL picture clause

 

usage

 

field usage

display

comp

binary

comp-4

comp-1

comp-2

comp-3

packed

comp-5

comp-x

index

pointer

nchar

japanese

signed

 

boolean indicator: true if field is signed

 

sign

 

sign type for signed fields

implicit

trailing

leading

conversion

 

conversion type. Auto default. You could force different type of conversion

auto

binary

packed

char

dbcs

float

discardable

 

boolean indicator: false if field is a critical redefines

 

 

Example

<?xml version="1.0" encoding="UTF-8"?>
<datadef built="Mon Jun 12 14:10:36 CEST 2006" language="COBOL" source="VCKI0LF1.G2.cpy">
<datastruct>
    <dataitem level="1" name="X-ACKI0015">
       <dataitem length="4" level="5" name="X-RECORDKODE" picture="X(04)" signed="false" usage="display"/>
       <dataitem length="4" level="5" name="X-RECORDINDIKATIE" picture="X(04)" signed="false" usage="display"/>
       <dataitem level="5" name="X-KEY">
         <dataitem length="7" level="10" name="X-AKTIEKODE" picture="X(07)" signed="false" usage="display"/>
       </dataitem>
       <dataitem level="5" name="X-BEGIN-PERIODE">
         <dataitem length="4" level="10" name="X-BEGIN-JJ" picture="9(04)" signed="false" usage="display"/>
         <dataitem length="2" level="10" name="X-BEGIN-MM" picture="9(02)" signed="false" usage="display"/>
         <dataitem length="2" level="10" name="X-BEGIN-DD" picture="9(02)" signed="false" usage="display"/>
       </dataitem>
       <dataitem level="5" name="X-EIND-PERIODE">
         <dataitem length="4" level="10" name="X-EIND-JJ" picture="9(04)" signed="false" usage="display"/>
         <dataitem length="2" level="10" name="X-EIND-MM" picture="9(02)" signed="false" usage="display"/>
         <dataitem length="2" level="10" name="X-EIND-DD" picture="9(02)" signed="false" usage="display"/>
       </dataitem>
       <dataitem length="3" level="5" name="X-MODEL" occurs="10" picture="X(03)" signed="false" usage="display"/>
         <dataitem length="1" level="5" name="X-TAAK-LMH-IND" picture="X(01)" signed="false" usage="display"/>
         <dataitem length="1" level="5" name="X-TAAK-NORM-IND" picture="X(01)" signed="false" usage="display"/>
         <dataitem length="4" level="5" name="X-BEDRAG-LAAG" picture="S9(05)V99" signed="true" usage="comp-3"/>
         <dataitem length="4" level="5" name="X-BEDRAG-MIDDEN" picture="S9(05)V99" signed="true" usage="comp-3"/>
         <dataitem length="4" level="5" name="X-BEDRAG-HOOG" picture="S9(05)V99" signed="true" usage="comp-3"/>
         <dataitem length="4" level="5" name="X-BEDRAG-OVERSCORE" picture="S9(05)V99" signed="true" usage="comp-"/>           <dataitem length="1" level="5" name="X-DUBBEL-IND" picture="X(01)" signed="false" usage="display"/>
         <dataitem length="7" level="5" name="X-REAL-AKTIEKODE" picture="X(07)" signed="false" usage="display"/>
         <dataitem length="2" level="5" name="X-REAL-MAANDNUMMER" picture="9(02)" signed="false" usage="display"/>
         <dataitem length="1" level="5" name="X-VAL-EG" picture="X(01)" signed="false" usage="display"/>
         <dataitem length="30" level="5" name="X-RESERVE" picture="X(30)" signed="false" usage="display"/>
       </dataitem>
   </datastruct>
</datadef>