# US 2008/0189314 A1 · Generation of template for reformatting data from first data format to second data format

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2008/0189314 A1
- Document ID: US20080189314A1
- Status: Published application
- Kind: A1
- Application number: 11/671,101
- Filed: 2007-02-05
- Published: 2008-08-07
- Earliest claimed: 2007-02-05
- Assignees: International Business Machines Corporation
- Inventors: Venkat A Reddy; Rajesh Kalyanaraman
- Web page: https://patentgrep.com/patent/US20080189314A1

## CPC

- G06F 16/258: {Data format conversion from or to a database}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A template is generated for reformatting, or converting, data from a first data formal to a second data format, where such template generation is achieved without human interaction. Particularly, data formatted in accordance with a first data format, as well as the same data but formatted in accordance with a second data format, are received. Without human intervention, a template is generated based on the data formatted in accordance with both the first and the second data formats. The template enables subsequent reformatting of data from the first data format to the second data format, without human intervention, by, for instance, using a generic data handler.

## Claims

### Claim 1

A method for reformatting data comprising:
receiving data formatted in accordance with a first data format;
receiving the data formatted in accordance with a second data format; and,
generating without human intervention a template based on the data formatted in accordance with the first data format and the data formatted in accordance with the second data format.

### Claim 2 (depends on 1)

The method of claim 1, wherein receiving the data formatted in accordance with the first data format comprises instantiating the first data format to generate complete sample data for the first data format.

### Claim 3 (depends on 1)

The method of claim 1, wherein receiving the data formatted in accordance with the second data format comprises employing a preexisting data handler to convert the data from the first data format to the second data format.

### Claim 4 (depends on 1)

The method of claim 1, wherein generating the template comprises parsing the data formatted in accordance with the first data format into a plurality of nodes.

### Claim 5 (depends on 4)

The method of claim 4, wherein generating the template for each node having a data value further comprises:
determining a structure, of the data, value within the first data format, the structure encompassing one or more nodes;
determining a structure of the data value within the second data format, the structure encompassing one or more nodes; and,
mapping the structure of the data value within the first data format to the structure of the data value within the second data format as part of the template corresponding to format conversion of the node.

### Claim 6 (depends on 5)

The method of claim 5, wherein generating the template further comprises, for each node of a structure of each data value,
determining a handle of the node within the first data format; and,
determining a path of the node within the first data format, the path ultimately preceding the data value within the first data format.

### Claim 7 (depends on 6)

The method of claim 6, wherein generating the template further comprises, for each node of a structure of each data value,
searching the data formatted in accordance with the second data format for the data value; and,
traversing the data formatted in accordance with the second data format to left and to right of the data value located therein for a plurality of delimiters of the node within the second data format corresponding to the path within the first data format.

### Claim 8 (depends on 7)

The method of claim 7, wherein traversing the data formatted in accordance with the second data format for the data value comprises:
constructing a table storing meta information regarding conversion of the first data format to the second data format.

### Claim 9 (depends on 8)

The method of claim 8, wherein at least one of the first and the second data formats comprises a data format in which data values are each delimited by a beam tag and an end tag.

### Claim 10 (depends on 1)

The method of claim 1, wherein at least one of the first and the second data formats comprises a data format in which data values are each delimited with a begin tag and no end tag.

### Claim 11 (depends on 1)

The method of claim 1, wherein at least one of the first and the second data formats comprises a data format in which data values each have a fixed width.

### Claim 12

A data processing system comprising:
a tangible computer-readable medium to store data formatted in accordance with a first data format and the data formatted in accordance with a second data format; and,
logic to generate without human intervention a template based on the data formatted in accordance with the first and the second data formats to enable subsequent reformatting of additional data from the first data format to the second data format without human intervention.

### Claim 13 (depends on 12)

The system of claim 12, further comprising one or more of:
logic to instantiate the first data format to generate the data formatted in accordance with the first data format; and,
a preexisting data handler to specifically convert the data from the first data format to the second data format to generate the data formatted in accordance with the second data format.

### Claim 14 (depends on 12)

The system of claim 12, further comprising a generic data handler to convert the additional data from the first data format to the second data format utilizing the template generated by the logic.

### Claim 15 (depends on 12)

The system of claim 12, wherein the logic is to generate the template by:
parsing the data formatted in accordance with the first data format into a plurality of nodes;
for each node having a data value,
determining a structure of the data value within the first data format,
determining a structure of the data value within the second data format, and
mapping the structure of the data value within the first data format to the structure of the data value within the second data format as part of the template corresponding to format conversion of the node.

### Claim 16 (depends on 12)

The system of claim 12, wherein the logic is to generate the template by:
parsing the data formatted in accordance with the first data format into a plurality of nodes;
for each node having a data value,
determining a handle of the node within the first data format,
determining a path of the node within the first data format as preceding the data value within the first data format.
searching the data formatted in accordance with the second data format for the data value, and
traversing the data formatted in accordance with the second data format to left and to right of the data value located therein for a plurality of delimiters of the node within the second data format corresponding to the path within the first data format.

### Claim 17

A data processing system comprising:
a tangible computer-readable medium to store data formatted in accordance with a first data format and the data formatted in accordance with a second data format; and,
means for generating without human intervention a template based on the data formatted in accordance with the first and the second data formats to enable subsequent reformatting of additional data from the first data format to the second data format without human intervention.

### Claim 18

An article of manufacture comprising:
a tangible computer-readable medium; and,
means in the medium for generating without human intervention a template based on the data formatted in accordance with the first and the second data formats to enable subsequent reformatting of additional data from the first data format to the second data format without human intervention.

### Claim 19 (depends on 18)

The article of manufacture of claim 18, wherein the means is to generate the template by:
parsing the data formatted in accordance with the first data format into a plurality of nodes;
for each node having a data value,
determining a structure of the data value within the first data format,
determining a structure of the data value within the second data format, and
mapping the structure of the data value within the first data format to the structure of the data value within the second data format as part of the template corresponding to format conversion of the node.

### Claim 20 (depends on 18)

The article of manufacture of claim 18, wherein the means is to generate the template by:
parsing the data formatted in accordance with the first data format into a plurality of nodes;
for each node having a data value,
determining a handle of the node within the first data format,
determining a path of the node within the first data format, as preceding the data value within the first data format,
searching the data formatted in accordance with the second data format for the data value, and
traversing the data formatted in accordance with the second data format to left and to right of the data value located therein for a plurality of delimiters of the node within the second data format corresponding to the path within the first data format.
