System and method for information filtering
AssigneeOpen TV
InventorFelix Freimann
Life of this patent
Estimating the term…
Abstract
According to an embodiment of the present invention, a fast matching algorithm uses a memory space efficient data structure to accomplish information filtering in a system receiving information, such as a set top box used in conjunction with a television set. The data structure, according to an embodiment of the present invention, may include a node with a plurality of levels of expected values of data fields with an associated index to another node to be used when a matching identification of a particular level is not found. Additionally, according to an embodiment of the present invention, the nodes in this data structure may include a level field which identifies levels which are valid within the node.
Claims8
A method for filtering table data received at a set top box in an interactive television system comprising:
- accessing table data associated with a section at a set top box;
- accessing a data value in a field in a data structure, the data structure comprising a plurality of criteria;
- accessing the data structure in accordance with the data value for a match to the received table data, to determine if the table data matches criteria in the data structure;
- (a) setting a current sub table node to a root for the sub table node;
- (b) accessing a level value for a current sub table node;
- (c) comparing the table data to a criterion of the current sub table node at a current level;
- if the table data is equal to the criterion of the current sub table node at the current level,
- then go to step (d) if not go to step (e)
- (d) if the current level is less than the level value,
- then go to step (e) else go to step (f)
- (e) setting the current level to current level+1 and
- going to step (c)
- else go to step (f)
- (f) accessing an index associated with the current level, the index pointing to the next sub table node;
- if the next sub table node is valid,
- then go to step (g)
- (g) setting the current level to 1,
- setting the current sub table node equal to next sub table node;
- and
- going to step (g)
- else, go to step (h)
- (h) rejecting the section associated with the table data.
A computer readable medium containing instructions that when executed by a computer implement a method for filtering table data received at a set top box in an interactive television system comprising:
- accessing table data associated with a section at a set top box;
- accessing a data value in a field in a data structure, the data structure comprising a plurality of criteria;
- accessing the data structure in accordance with the data value for a match to the received table data, to determine if the table data matches criteria in the data structure;
- (a4) setting a current sub table node to a root for the sub table node;
- (b4) accessing a level value for a current sub table node;
- (c4) comparing the table data to a criteria of the current sub table node at a current level;
- (d4) if the table data is equal to the criteria of the current sub table node at the current level,
- then go to step (e4) if not go to step (f4)
- (e4) if the current level is less than the level value,
- then go to step (f4)
- (f4) setting the current level to current level+1 and going to step (c4)
- else go to step (g4)
- (g4) accessing an index associated with the current level, the index pointing to the next sub table node;
- if the next sub table node is valid, then go to step (h4)
- (h4) setting the current level to 1,
- setting the current sub table node equal to next sub table node;
- and
- going to step (b4)
- else, go to step (i4)
- (i4) rejecting the section associated with the table data.
A computer readable medium containing instructions that when executed by a computer implement a method for filtering table data received at a set top box in an interactive television system comprising:
- accessing table data associated with a section at a set top box;
- accessing a data value in a field in a data structure, the data structure comprising a plurality of criteria;
- accessing the data structure in accordance with the data value for a match to the received table data, to determine if the table data matches criteria in the data structure;
- (a7) accessing a last section number from a current section;
- (b7) pointing to a first section map;
- (c7) if the last section number is less than the number of bits in a section map field, then going to step (d7)
- (d7) setting an indicator bit to a 1 to indication there are no further section maps;
- else going to step (e7)
- (e7) decrementing the last section number by the number of bits in a second portion of a section map field;
- (f7) setting an indicator bit to a 0 to indicate further section maps;
- accessing a new section and linking the new section map to the current section map;
- and
- (g7) pointing to the new section map.
Dependencies are inferred from the claim text.