IP Library Granted Patent US 11,748,560
Granted Patent B2
US 11,748,560 · App. 16/993,827 · Granted Sep 5, 2023

Converting between tabular and structured data formats

Inventors: Qi Ming Teng (Beijing, CN); Christopher Peter Baker (East Sussex, GB); Sai Zeng (Yorktown Heights, NY); Jun Duan (Mount Kisco, NY)
Assignee: Kyndryl, Inc.
G06F40/205G06F16/2237G06F16/258G06F40/103G06F40/18
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,748,560
App. No.
16/993,827
Granted
Sep 5, 2023
Kind
B2
Abstract

Aspects of the present disclosure relate to converting between structured and tabular data formats. Data can be received in a tabular format. An array can be built for each of a plurality of objects within the data in the tabular format, each object corresponding to at least one identified header of the identified headers. A data row can be parsed using at least one of the built arrays and data within the data row can be added to the structured format in a specific location based characteristics indicated in the at least one array. Data can also be converted from the structured format into the tabular format using the built arrays.

Claims (53)

1. A method for converting data in a tabular format to a structured format, the method comprising:

receiving data stored in the tabular format;

identifying headers within the data stored in the tabular format;

building an array for each of a plurality of objects within the data in the tabular format, each object corresponding to at least one identified header of the identified headers;

parsing a data row using at least one of the built arrays and adding data within the data row to the structured format in a specific location based on characteristics indicated in the at least one array; and

converting the data of the tabular format into the structured format by at least the identifying of the headers within the tabular format, and also converting the structured format into the tabular format.

2. The method of claim 1 , wherein headers are identified based on a schema generated from the data in the tabular format, wherein each leaf node within the schema is selected as a header.

3. The method of claim 1 , further comprising:

parsing a next data row using at least one of the built arrays and adding data within the next data row to the structured format in a second specific location based on characteristics indicated in the at least one array;

determining that the next data row is a last data row; and

determining that the data has been converted from the tabular format to the structured format.

4. The method of claim 1 , wherein after receiving the data in the tabular format, the data in the tabular format is normalized.

5. The method of claim 1 , wherein after receiving the data in the tabular format, a header depth of the data in the tabular format is determined such that data is not dumped within the header depth.

6. The method of claim 1 , further comprising:

parsing a second data row using at least one of the built arrays and adding data within the second data row to the structured format in a second specific location based on characteristics indicated in the at least one array; and

parsing a third data row using at least one of the built arrays and adding data within the third data row to the structured format in a third specific location based on characteristics indicated in the at least one array.

7. A computer program product comprising a computer readable storage medium having program instructions embodied therewith, wherein the computer readable storage medium is not a transitory signal per se, the program instructions executable by a processor to cause the processor to perform a method comprising:

receiving data stored in a structured format;

selecting leaf nodes of a schema representing hierarchy of objects within the structured format as headers;

adding the headers to a tabular format;

building an array for each object within the structured format; and

adding data from the structured format to the tabular format using at least one of the built arrays by storing data in proper rows and columns of the tabular format based on characteristics included in each array.

8. The computer program product of claim 7 , wherein the schema is generated using the data in the structured format.

9. The computer program product of claim 7 , wherein the schema is separately received along with the data in the structured format.

10. The computer program product of claim 7 , wherein the headers added to the tabular format are hierarchically organized.

11. The computer program product of claim 7 , wherein the headers added to the tabular format include qualified path names.

12. The computer program product of claim 7 , wherein particular rows and columns within the tabular format are shaded with particular colors based on corresponding arrays that cover the particular rows and columns within the tabular format.

13. The method of claim 1 , wherein the converting the data of the structured format into the tabular format comprises:

selecting leaf nodes of a schema representing hierarchy of objects within the structured format as headers;

adding the headers to the tabular format; and

adding the data from the structured format to the tabular format using the at least one of the built arrays.

14. The method of claim 13 , wherein the structured format includes at least one of JavaScript Object Notation (JSON), YAML Ain't Markup Language (YAML), and Extensive Markup Language (XML) which is converted to the tabular format.

15. A system comprising:

at least one memory; and

at least one processor, wherein the at least one processor is configured to perform a method comprising:

receiving data stored in a tabular format;

identifying headers within the data stored in the tabular format;

building an array for each of a plurality of objects within the data in the tabular format, each object corresponding to at least one identified header of the identified headers;

parsing a data row using at least one of the built arrays and adding data within the data row to the structured format in a specific location based on characteristics indicated in the at least one array;

determining that the data has been converted from the tabular format to the structured format; and

after the data has been converted from the tabular format to the structured format, converting the data back into the tabular format, which comprises:

selecting leaf nodes of a schema representing hierarchy of objects within the structured format as headers;

adding the headers to the tabular format; and

adding data from the structured format to the tabular format using at least one of the built arrays by storing data in proper rows and columns of the tabular format based on characteristics included in each array.

16. The system of claim 15 , wherein headers are identified based on a schema generated from the data in the tabular format, wherein each leaf node within the schema is selected as a header.

17. The system of claim 15 , wherein the method performed by the processor further comprises:

parsing a next data row using at least one of the built arrays and adding data within the next data row to the structured format in a second specific location based on characteristics indicated in the at least one array; and

determining that the next data row is a last data row.

18. The system of claim 15 , wherein after receiving the data in the tabular format, the data in the tabular format is normalized.

19. The system of claim 15 , wherein after receiving the data in the tabular format, a header depth of the data in the tabular format is determined.

20. The system of claim 15 , wherein the method performed by the processor further comprises:

parsing a second data row using at least one of the built arrays and adding data within the second data row to the structured format in a second specific location based on characteristics indicated in the at least one array; and

parsing a third data row using at least one of the built arrays and adding data within the third data row to the structured format in a third specific location based on characteristics indicated in the at least one array.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 18, 2021
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: KYNDRYL, INC.
Reel/Frame 058213/0912 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 14, 2020
From: TENG, QI MING; BAKER, CHRISTOPHER PETER; ZENG, SAI; DUAN, JUN
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 053499/0669 →