Methods and apparatus for mapping a hierarchical data structure to a flat data structure for use in generating a report
First Claim
1. A method of generating a report, comprising:
- obtaining a query via a graphical user interface using a virtual relational database such that data in a data source appears to be stored in a relational database, the data source including one or more files having a hierarchical file format, the virtual relational database including one or more virtual tables, each of the virtual tables including one or more virtual columns, wherein the query identifies at least one of the virtual tables and at least one of the virtual columns of the virtual relational database, wherein a mapping maps the virtual relational database to at least a portion of the data in the data source, wherein the virtual relational database does not store data;
obtaining data corresponding to the query using the mapping, wherein the data is not obtained from a relational database, wherein the data is not stored in a relational database;
generating a report including the obtained data;
wherein the hierarchical file format includes a plurality of data elements, each of the plurality of data elements having an element name;
wherein each of the virtual columns corresponds to one of the plurality of data elements, wherein generating a mapping comprises;
incrementing a number upon encountering one of the plurality of data elements or a closing tag for the one of the plurality of data elements, wherein the one of the plurality of data elements is associated with one of the virtual columns; and
inserting the number as a primary key into at least one of the files or an intermediary data structure such that the number identifies the one of the virtual columns.
5 Assignments
0 Petitions
Accused Products
Abstract
Methods and apparatus for generating a report from hierarchically formatted data are disclosed. First, a data source including one or more files having a hierarchical file format is identified, where each of the files includes one or more data elements. A relational database model is obtained, where the relational database model includes one or more virtual tables, each of the virtual tables including one or more virtual columns. The relational database model is then mapped to the hierarchical file format. A query may be obtained using the virtual relational database. Data is then obtained from the virtual relational database corresponding to the query, thereby enabling a report including the data to be generated.
-
Citations
62 Claims
-
1. A method of generating a report, comprising:
-
obtaining a query via a graphical user interface using a virtual relational database such that data in a data source appears to be stored in a relational database, the data source including one or more files having a hierarchical file format, the virtual relational database including one or more virtual tables, each of the virtual tables including one or more virtual columns, wherein the query identifies at least one of the virtual tables and at least one of the virtual columns of the virtual relational database, wherein a mapping maps the virtual relational database to at least a portion of the data in the data source, wherein the virtual relational database does not store data; obtaining data corresponding to the query using the mapping, wherein the data is not obtained from a relational database, wherein the data is not stored in a relational database; generating a report including the obtained data; wherein the hierarchical file format includes a plurality of data elements, each of the plurality of data elements having an element name; wherein each of the virtual columns corresponds to one of the plurality of data elements, wherein generating a mapping comprises; incrementing a number upon encountering one of the plurality of data elements or a closing tag for the one of the plurality of data elements, wherein the one of the plurality of data elements is associated with one of the virtual columns; and inserting the number as a primary key into at least one of the files or an intermediary data structure such that the number identifies the one of the virtual columns. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46)
-
-
47. A computer-readable medium storing thereon computer-readable instructions that when executed on a computer cause the computer to generate a report, comprising:
-
instructions for obtaining a relational database model, the relational database model including one or more virtual tables, each of the virtual tables including one or more virtual columns; instructions for generating a mapping between the relational database model and at least a portion of data in a data source, the data source including one or more files having a hierarchical file format, each of the files including one or more data elements; instructions for obtaining a query via a graphical user interface using the relational database model such that the data appears to be stored in a relational database, wherein the query identifies at least one of the virtual tables and at least one of the virtual columns, wherein the relational database model does not store data; instructions for obtaining data corresponding to the query using the mapping, wherein the data is not obtained from a relational database, wherein the data is not stored in a relational database; and instructions for generating a report including the obtained data; wherein the hierarchical file format includes a plurality of data elements, each of the plurality of data elements having an element name; wherein each of the virtual columns corresponds one of the plurality of data elements, wherein the instructions for generating a mapping further comprises; instructions for incrementing a number upon encountering one of the plurality of data elements or a closing tag for the one of the plurality of data elements, the one of the plurality of data elements being associated with one of the virtual columns; and instructions for inserting the number as a primary key into at least one of the files or an intermediary data structure, wherein the number identifies the one of the virtual columns. - View Dependent Claims (48, 49, 50)
-
-
51. An apparatus for generating a report, comprising:
-
a processor; and a memory, at least one of the processor and the memory being adapted for; obtaining a relational database model, the relational database model including one or more virtual tables, each of the virtual tables including one or more virtual columns; generating a mapping between the relational database model and at least a portion of data in a data source, the data source including one or more files having a hierarchical file format, each of the files including one or more data elements; obtaining a query via a graphical user interface using the relational database model such that the data appears to be stored in a relational database, wherein the query identifies at least one of the virtual tables and at least one of the virtual columns, wherein the relational database model does not store data, wherein the data is not stored in a relational database; obtaining data corresponding to the query using the mapping, wherein the data is not obtained directly or indirectly from a relational database; and generating a report including the obtained data; wherein the hierarchical file format includes a plurality of data elements, each of the plurality of data elements having an element name; wherein each of the virtual columns corresponds to one of the plurality of data elements, wherein generating a mapping further comprises; incrementing a number upon encountering one of the plurality of data elements corresponding with one of the virtual columns or upon encountering a closing tag for the one of the plurality of data elements corresponding with the one of the virtual columns; and inserting the number associated with the one of the virtual columns as a primary key into at least one of the files or an intermediary data structure, the primary key identifying the one of the virtual columns. - View Dependent Claims (52)
-
-
53. A method of generating a report, comprising:
-
identifying a data source including one or more files having a hierarchical file format including data; obtaining a relational database model, the relational database model including one or more virtual tables, each of the virtual tables including one or more virtual columns, wherein the relational database model does not store the data; mapping the relational database model to the hierarchical file format by mapping each of the virtual tables and each of the virtual columns to an element name or path in the corresponding file in response to input received via a graphical user interface, wherein the data is not stored in a relational database; receiving a query that identifies at least one of the virtual tables and at least one of the virtual columns of the relational database model; and generating a report in response to the query; wherein the files include a plurality of data elements, each of the plurality of data elements having an element name; wherein each of the virtual columns corresponds to one of the plurality of data elements, wherein mapping the relational database model to the hierarchical file format comprises; incrementing a number upon encountering one of the plurality of data elements in at least one of the files or upon encountering a closing tag for the one of the plurality of data elements in at least one of the files, the one of the plurality of data elements corresponding with one of the virtual columns; and inserting the number as a primary key into the at least one of the files or an intermediary data structure, the primary key identifying the one of the virtual columns. - View Dependent Claims (54, 55, 56, 57, 58, 59, 60, 61, 62)
-
Specification