Kaufman v. Microsoft Corp.

Decision Date20 May 2022
Docket Number2021-1634, 2021-1691
Citation34 F.4th 1360
Parties Michael Philip KAUFMAN, Plaintiff-Cross-Appellant v. MICROSOFT CORPORATION, Defendant-Appellant
CourtU.S. Court of Appeals — Federal Circuit

Ronald Abramson, Alex G. Patchen, Liston Abramson LLP, New York, NY, argued for plaintiff-cross-appellant. Also represented by Ari Jason Jaffess.

Christina Jordan Mccullough, Perkins Coie LLP, Seattle, WA, argued for defendant-appellant. Also represented by Dan L. Bagatell, Hanover, NH; Tara Lauren Kurtis, Chicago, IL; Ahmed Jamal Davis, Leah A. Edelman, Fish & Richardson P.C., Washington, DC; John Stephen Goetz, Excylyn Hardin-Smith, New York, NY; Jason W. Wolff, San Diego, CA.

Before Dyk, Reyna, and Taranto, Circuit Judges.

Taranto, Circuit Judge.

Michael Philip Kaufman owns now-expired U.S. Patent No. 7,885,981, on which he is a co-inventor. The patent describes and claims methods for using a computer to automatically generate an end-user interface for working with the data in a relational database. Mr. Kaufman brought the present action against Microsoft Corporation, asserting infringement of claims of the patent by Microsoft's making and selling of its Dynamic Data product. A jury found Microsoft liable and awarded damages of $7 million to Mr. Kaufman. The district court upheld the verdict against Microsoft's post-judgment challenges, Kaufman v. Microsoft Corp. , No. 1:16-cv-02880, 2021 WL 242672, at *1 (S.D.N.Y. Jan. 25, 2021) ( JMOL Order ), and it also denied Mr. Kaufman's motion to amend the judgment to include prejudgment interest, Kaufman v. Microsoft Corp. , No. 1:16-cv-02880, 2021 WL 260485, at *1 (S.D.N.Y. Jan. 25, 2021) ( Prejudgment Interest Order ).

Microsoft and Mr. Kaufman both appeal. We reject Microsoft's challenges and thus affirm the denial of Microsoft's post-judgment motions. But we agree with Mr. Kaufman's challenges and reverse the denial of prejudgment interest.

I
A

The '981 patent addresses the creation of user interfaces that permit users to interact with data in relational databases, which store data in multiple tables that are related to each other in defined ways. For a particular database, such an interface should permit the user to view and manipulate the data according to the structure of the tables and their relationships—i.e. , the "data model" or "schema" of the database. See '981 patent, col. 2, lines 29–52. The specification notes that in the prior art, the database software itself and the user interface were typically developed separately, and significant manual programming was needed to create an interface that matched the data model built into the database software. Id. , col. 2, line 53, through col. 3, line 4. An object of the invention, the patent indicates, is to enable a developer to create "a complete and fully functional user interface (UI) for any arbitrarily complex or large database schema, without any custom software programming." Id. , col. 3, lines 8–11.

Claim 1 of the '981 patent is representative for purposes of the issues before us. It recites:

1. A method for operating a server comprising a processor for automatically generating an end-user interface for working with the data within a relational database defined within a relational DBMS whose data is stored in machine-readable media and which is accessible to said server, wherein said relational database comprises a plurality of tables, constraints and relationships stored in said DBMS in accordance with a data model comprising said tables and their column-complements and datatypes, said constraints, and the relationships across said tables, and wherein said relational database may be of any arbitrary size or complexity, said method comprising
(a) providing an output stream from said server, for user display and input devices, defining a user interface paradigm comprising a set of modes for interacting with a given database table, said modes comprising create, retrieve, update and delete, and a corresponding display format for each mode;
(b) causing said server to scan said database and apply a body of rules to determine the table structures, constraints and relationships of said data model, and store representations thereof in machine-readable media accessible to said server; and
(c) causing said server to use said representations to construct a corresponding client application for access through said user display and input devices, wherein said client application provides a connection to said database, provides displays of the table contents of said database for each of said modes in accordance with the display formats of said paradigm, integrates into each said mode display processes for representing, navigating, and managing said relationships across tables , for selecting among said modes, and for navigating across said tables and interacting in accordance the selected mode with the data in the tables that are reached by said navigation, while observing and enforcing relational interdependencies among data across said tables.

Id. , col. 377, lines 2–38 (emphases added). As described in limitation (a), the interface created by the claimed method uses a known "CRUD" paradigm for categorizing the universe of user operations as "creating," "retrieving," "updating," and "deleting" records in the database. See, e.g. , J.A. 5162 (Microsoft documentation describing the accused product in terms of CRUD).

The '981 patent describes in detail a single embodiment of the claimed invention: an "implementation of the invention" called SCHEMALIVE™. '981 patent, col. 4, lines 34–38. The specification includes screen shots, id. , Figs. 1–4, 7–8, 9A–9E, textual description, id. , col. 4, line 51, through col. 26, line 52, and source code, id. , col. 27, through col. 376, describing SCHEMALIVE™, although certain features that are described are not implemented in the code included in the patent, id. , col. 4, lines 44–46.

The patent claims priority to a provisional patent application filed in October 2000, and it issued on February 8, 2011. Id. , title page.

B

In 2016, Mr. Kaufman sued Microsoft for infringing the '981 patent by making and selling certain "development tools for its .NET Framework software platform," which allegedly automate the generation of a software application for interacting with a database based on the underlying data model. J.A. 282–83 (Compl. ¶ 11). The complaint focuses on a Microsoft product called Dynamic Data, which, the complaint says, "automatically generates" a Web application for "viewing and editing data based on the schema of the data." J.A. 285 (Compl. ¶ 20) (citation omitted); see J.A. 5162.

In 2019, Microsoft moved for summary judgment of noninfringement. It argued that the phrase "automatically generating" found in the preamble of claim 1 is limiting, that "automatic" means "no human labor required," that limitation (b) ("causing said server to scan said database and apply a body of rules ... and store representations ...") must be performed "automatically," and that Microsoft does not infringe because "[t]he accused Dynamic Data functionality requires significant developer effort to ‘scan said database’ and to complete the claimed steps." J.A. 2083–87. In opposing summary judgment, Mr. Kaufman stated that the human involvement Microsoft had identified was "preliminary set-up by the user" that "does not affect the automatic nature of the scanning." J.A. 2334. In reply, Microsoft stated that there was a "fundamental legal dispute as to the meaning of ‘automatic[ ] in the claims," J.A. 2639, and it reiterated the "no human labor required" meaning, but it did not propose a construction that identified the line between what actions had to be automatic and what actions the developer could take manually. J.A. 2640–41. Microsoft had previously argued during claim construction that the plain and ordinary meaning of "automatically" "permits some user intervention." J.A. 400 n.3.

Microsoft made a second argument in its summary-judgment motion, independent of its argument based on the claim's "automatic" language. It argued that its Dynamic Data software does not meet limitation (c) because that software does not integrate into each mode display in the created user interface processes for representing, navigating, and managing table relationships. J.A. 2088–89. Microsoft cited Mr. Kaufman's expert, Dr. Shasha, who had admitted in his deposition that some Dynamic Data mode displays do not have all three of those processes—specifically, the mode display corresponding to the "retrieve" and "delete" modes does not include a "managing" process. J.A. 2144–45. Microsoft stated that, while "each" and "and" carry their plain and ordinary meanings in the claim language, "the parties dispute what that ordinary meaning is." J.A. 2088. Microsoft argued that the combination of "each" and "and" required all three processes to be present in any given mode display. J.A. 2089.

At the summary judgment motion hearing on January 16, 2020, which also served as the pretrial hearing, Microsoft stated that there was "a claim construction dispute between the parties""a legal issue that needs to be resolved before trial under O2 Micro . " J.A. 2982. After some discussion, the parties appeared to agree that "automatic" means that "no separate developer input occurs." J.A. 2987. When Microsoft stated, "[T]he issue is that the parties have a fundamental disagreement as to the meaning of ... automatic and how that applies to the scanning and each of these limitations here," the district court stated its belief that the parties did not disagree on the word automatic, but rather "on when an automatic operation comes into play and when it ends." J.A. 2997. It then stated, "I can't tell you who is right, whether there is contemplated a human selection that itself will then cause an automatic generation of some other function or some other result or whether everything has to be automatic." J.A. 2998. After Microsoft's counsel asked, "Can we...

To continue reading

Request your trial
17 cases
  • DNA Genotek Inc. v. Spectrum Sols.
    • United States
    • U.S. District Court — Southern District of California
    • November 29, 2022
    ...that excludes a preferred embodiment is rarely, if ever correct and would require highly persuasive evidentiary support." Kaufman, 34 F.4th at 1372. But, here, there highly persuasive evidentiary support for Spectrum's proposed construction and Spectrum's contention that the reagent compart......
  • Fate Therapeutics, Inc. v. Shoreline Biosciences, Inc.
    • United States
    • U.S. District Court — Southern District of California
    • February 22, 2023
    ... ... SHORELINE BIOSCIENCES, INC.; and DAN S. KAUFMAN, Defendants. No. 22-cv-00676-H-MSB United States District Court, S.D. California February 22, 2023 ... patentee is entitled the right to exclude.'” ... Phillips v. AWH Corp., 415 F.3d 1303, 1312 (Fed ... Cir. 2005) (en banc) (citations omitted). “The purpose ... and would require highly persuasive evidentiary ... support.'” Kaufman v. Microsoft Corp., 34 ... F.4th 1360, 1372 (Fed. Cir. 2022) (quoting Epos ... Technologies Ltd ... ...
  • Sanchez v. Sec'y of Health & Human Servs.
    • United States
    • U.S. Court of Appeals — Federal Circuit
    • May 20, 2022
  • HRT Enters. v. City of Detroit
    • United States
    • U.S. District Court — Eastern District of Michigan
    • September 1, 2023
    ... ... prevent manifest injustice.” Intera Corp. v ... Henderson , 428 F.3d 605, 620 (6th Cir. 2005) (citing ... GenCorp, Inc. v. Am ... award of prejudgment interest.”); Kaufman v ... Microsoft Corp. , 34 F.4th 1360, 1374 (Fed. Cir. 2022) ... (“[B]ecause ... ...
  • Request a trial to view additional results

VLEX uses login cookies to provide you with a better browsing experience. If you click on 'Accept' or continue browsing this site we consider that you accept our cookie policy. ACCEPT