|
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 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>
|