Patent US 7539685 B2 concerns the normalization of btree index keys in a database management system.
There is no citation of the 1977 paper "An Encoding Method for Multifield Sorting and Indexing" by Blasgen, Casey and Eswaran in the subject issued patent from Microsoft.
However, the citation seems relevant and could be very convincingly argued to be prior art. As far as I can tell, the only difference is that the 1977 paper doesn't describe how the same technique can be used with a variety of binary types such that they can also be concatenated, but this is so obvious as to be redundant.
Further, the omission of a citation of that paper is glaring, because it was produced by a group of researchers working on the seminal IBM System R RDBMS, which is widely influential. The influence of that system on Microsoft SQL server (which the patent references - it's from Microsoft research) is widely acknowledged and undeniable.
The first claim of '685 is:
A system for index key normalization in a database comprising a processor adapted for:
(a) Selecting an index key for normalization, wherein the index key contains more than one column, and wherein each column of the index key has a type, and wherein the index key contains more than one type of column type;
(b) Tracking column normalization, wherein tracking column normalization comprises: creating a tracking variable, wherein the tracking variable has a maximum value determined by a number of columns in the index key; incrementing the tracking variable value each time one of the columns of the index key is normalized; and
Determining that normalization of the index key is complete when the maximum value of the tracking variable value is reached;
generating a normalized value for the index key, wherein generating the normalized value for the index key comprises:
- determining a column type for a column; and determining an associated transformative function relating to the type of the column; and applying the associated transformative function to a value of the column resulting in the normalized column value;
- generating a marker corresponding to the column, wherein the marker acts as a header for the normalized column value;
- storing a normalized index key value, wherein the normalized index key value is updated for each column value that is normalized; and
- appending the marker and the normalized column value to a previously generated marker and normalized column value.
Does anyone have any advice on having the patent invalidated? What is involved, what does it cost?
Thanks