Method and system for converting a schema-based hierarchical data structure into a flat data structure
First Claim
1. A method for converting a hierarchical data structure into a flat data structure comprising:
- in an application program, loading a schema and loading hierarchical data conforming to the schema wherein the hierarchical data includes data fields and data content linked together in a hierarchical relationship, wherein the schema defines hierarchical relationships between the data fields and attributes appearing in the hierarchical data;
wherein the schema is separate from the hierarchical data;
wherein the schema to load is identified by the loaded hierarchical data;
examining the loaded schema to identify properties and element types in the schema;
wherein the properties identify occurrence requirements for the data fields and the data content defined in the schema, the properties comprising;
a first property that specifies that data fields may occur in any order but may only occur once and that data fields within the first property are displayed within a same row;
a second property that specifies that data fields must occur in the specified order and may occur zero to more than once and that data fields within the second property are displayed on a same row unless the loaded schema defines an element as occurring more than once; and
a third property that specifies that data fields do not share a relationship with each other and are chosen and that data fields within the third property are displayed on separate rows;
applying a plurality of layout rules to the hierarchical data based on the examining of the loaded schema to create the flat data structure; and
organizing the hierarchical data so that the hierarchical data is inserted in rows and columns in the flat data structure.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and system are provided for converting a hierarchical data structure into a flat data structure based on a schema. The format of the hierarchical data structure may be XML. A hierarchical data structure conforming to a schema is loaded into an application program. The data structure includes elements and attributes linked together in a parent-child relationship. The schema defines the hierarchical relationships between the elements and attributes in the hierarchical data structure. After the hierarchical data structure conforming to the schema has been loaded, a plurality of layout rules is applied to the hierarchical data based on the schema to create a flat data structure. The layout rules determine how the hierarchical data will be inserted in the flat data structure. The layout rules may be applied by identifying properties in the schema which identify occurrence requirements for elements defined in the schema. After the layout rules have been applied to the hierarchical data, the hierarchical data is rendered into a spreadsheet by inserting the data in rows and columns.
25 Citations
20 Claims
-
1. A method for converting a hierarchical data structure into a flat data structure comprising:
-
in an application program, loading a schema and loading hierarchical data conforming to the schema wherein the hierarchical data includes data fields and data content linked together in a hierarchical relationship, wherein the schema defines hierarchical relationships between the data fields and attributes appearing in the hierarchical data;
wherein the schema is separate from the hierarchical data;
wherein the schema to load is identified by the loaded hierarchical data;examining the loaded schema to identify properties and element types in the schema;
wherein the properties identify occurrence requirements for the data fields and the data content defined in the schema, the properties comprising;
a first property that specifies that data fields may occur in any order but may only occur once and that data fields within the first property are displayed within a same row;
a second property that specifies that data fields must occur in the specified order and may occur zero to more than once and that data fields within the second property are displayed on a same row unless the loaded schema defines an element as occurring more than once; and
a third property that specifies that data fields do not share a relationship with each other and are chosen and that data fields within the third property are displayed on separate rows;applying a plurality of layout rules to the hierarchical data based on the examining of the loaded schema to create the flat data structure; and organizing the hierarchical data so that the hierarchical data is inserted in rows and columns in the flat data structure. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer system for converting a hierarchical data structure into a flat data structure comprising:
-
a memory for storing; the hierarchical data structure, a schema associated with the flat data structure, and the flat data structure; and a processing unit functionally coupled to the memory, for executing computer-executable instructions operable for; loading the schema and loading the hierarchical data conforming to the schema, wherein the hierarchical data includes data fields and data content linked together in a hierarchical relationship, wherein the schema defines hierarchical relationships between the data fields the and attributes;
wherein the schema is separate from the hierarchical data and wherein the schema to load is identified by the hierarchical data;identifying properties from the schema, wherein the properties identify occurrence requirements for the data fields defined in the schema, the properties comprising;
a first property that specifies that data fields may occur in any order but may only occur once and that data fields within the first property are displayed within a same row;
a second property that specifies that data fields must occur in the specified order and may occur zero to more than once and that data fields within the second property are displayed on a same row unless the loaded schema defines an element as occurring more than once; and
a third property that specifies that data fields do not share a relationship with each other and are chosen and that data fields within the third property are displayed on separate rows;applying a plurality of layout rules based on the identified properties to create the flat data structure; and rendering the hierarchical data so that the hierarchical data is inserted in rows and columns in the flat data structure. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A computer-readable storage medium having computer-executable instructions which, when executed on a computer, cause the computer to perform a method for converting a hierarchical data structure into a flat data structure, the method comprising:
-
in an application program, loading a schema and loading hierarchical data conforming to a schema wherein the hierarchical data includes data fields and data content linked together in a hierarchical relationship, wherein the schema defines hierarchical relationships between the data fields;
wherein the schema is separate from the hierarchical data;
wherein the schema to load is identified by the hierarchical data;determining properties of the schema, the properties comprising;
a first property that specifies that data fields may occur in any order but may only occur once and that data fields within the first property are displayed within a same row;
a second property that specifies that data fields must occur in the specified order and may occur zero to more than once and that data fields within the second property are displayed on a same row unless the loaded schema defines an element as occurring more than once; and
a third property that specifies that data fields do not share a relationship with each other and are chosen and that data fields within the third property are displayed on separate rows;applying a plurality of layout rules to the hierarchical data based on the schema to create the flat data structure; and organizing the hierarchical data so that the hierarchical data is inserted in rows and columns in the flat data structure. - View Dependent Claims (20)
-
Specification