Method of storing and flattening a structured data document
First Claim
Patent Images
1. A method of flattening a structured data document, comprising the steps of:
- a) receiving a structured data document;
b) searching for a first data entry;
c) when the first data entry is found, determining if an attribute is defined before the first data entry; and
d) when the attribute was defined before the first data entry, creating a first line containing all open tags before the attribute and the attribute.
3 Assignments
0 Petitions
Accused Products
Abstract
A method of flattening a structured data document includes the steps of receiving a structured data document. Next, a first data entry is searched for by the system. When the first data entry is found, it is determining if an attribute is defined before the first data entry. When the attribute is defined before the first data entry, a first line containing all open tags before the attribute and the attribute is created. A record indicator is stored on the first line.
-
Citations
19 Claims
-
1. A method of flattening a structured data document, comprising the steps of:
-
a) receiving a structured data document;
b) searching for a first data entry;
c) when the first data entry is found, determining if an attribute is defined before the first data entry; and
d) when the attribute was defined before the first data entry, creating a first line containing all open tags before the attribute and the attribute. - View Dependent Claims (2, 3, 4, 5, 6, 7)
e) determining if a second attribute is defined before the first data entry;
f) when the second attribute is not defined before the first data entry, creating another line containing a set of open tags up to the first data entry.
-
-
3. The method of claim 1, wherein step (b) further includes the step of:
b1) defining a record in the structured data document.
-
4. The method of claim 3, further including the steps of:
g) adding the first data entry and a record indicator to the another line.
-
5. The method of claim 4, further including the steps of:
-
h) searching for a next data entry;
i) when the next data entry is found, determining if the next data entry is in a different record than the first data entry;
j) when the next data entry is in the different record, creating a next line containing all open tags before the attribute and the attribute.
-
-
6. The method of claim 5, further including the steps of:
-
k) storing all open tags preceding the next data entry in a line after the next line and the next data entry and a new record indicator;
l) repeating the steps to form a flattened document.
-
-
7. The method of claim 6, further including the steps of:
-
m) receiving a query having two targets;
n) determining if a first target entries and a second target entries have a common record indicator;
o) when one of the first target entries and the second target entries have the common record indicator, retrieving a record associated with the common record indicator.
-
-
8. A method of storing a flattened structured data document, comprising the steps of:
-
a) receiving the flattened structured data document having a plurality of lines, each of the lines having a tag, a data entry and a format character;
b) creating a map index;
c) determining if the data entry is unique;
d) when the data entry is not unique, determining if a duplicates flag is set;
e) when the duplicates flag is set, incrementing a duplicates count;
f) calculating a transform of the data entry with an instance count to form a first instance transform; and
g) storing a first map pointer in the map index at an address associated with the first instance transform. - View Dependent Claims (9, 10, 11, 12)
h) storing an association at the address in the map index.
-
-
10. The method of claim 9, further including the steps of:
i) calculating a transform of the second data entry with the association to form a first associated data entry.
-
11. The method of claim 10, further including the steps of:
-
j) receiving a query having two targets;
k) determining if a first target has fewer entries than a second target;
m) when the first target has fewer entries than the second target, looking up a first instance of the first target to find a first association;
n) transforming the second target with the association to form a second target association;
o) performing a lookup at an address pointed to by the second target association;
p) when the entry for the second target is found, determining a match has been found.
-
-
12. The method of claim 11, further including the steps of:
-
q) when the second target is not found, looking up a second instance of the first target to find a second association;
r) repeating steps n through p with the second association.
-
-
13. A system for storing a flattened structured data document, comprising:
-
a flattener receiving the structured data document;
a parser connected to the flattener and locating a data element;
a transform generator receiving the data element;
a map store connected to the parser and the transform generator;
a map index connected to the parser and the transform generator; and
a dictionary connected to the map store. - View Dependent Claims (14, 15, 16, 17, 18, 19)
-
Specification