DCT

1:11-cv-02365

Microsoft Corp v. DataTern Inc

I. Executive Summary and Procedural Information

  • Parties & Counsel:
  • Case Identification: 1:11-cv-02365, S.D.N.Y., 04/07/2011
  • Venue Allegations: Venue is alleged to be proper in the Southern District of New York because Defendant DataTern, Inc.'s principal place of business is located in the district.
  • Core Dispute: Plaintiff seeks a declaratory judgment that Defendant's patents concerning object-relational database mapping technology are invalid and not infringed by Plaintiff's ADO.NET software framework.
  • Technical Context: The technology addresses the persistent challenge of bridging the "impedance mismatch" between the object-oriented programming model and the tabular structure of relational databases.
  • Key Procedural History: The complaint states that Defendant DataTern has filed numerous patent infringement lawsuits in the Eastern District of Texas against third-party users of Plaintiff Microsoft's software, creating a justiciable controversy for this declaratory judgment action. A claim construction hearing in a related Texas case was reportedly scheduled for October 25, 2011.

Case Timeline

Date Event
1997-06-19 U.S. Patent No. 5,937,402 Priority Date
1997-09-26 U.S. Patent No. 6,101,502 Priority Date
1999-08-10 U.S. Patent No. 5,937,402 Issue Date
2000-08-08 U.S. Patent No. 6,101,502 Issue Date
2009-06-02 DataTern files infringement action against The Allstate Corporation, et al.
2010-02-16 DataTern files infringement action against Suntrust Banks, et al.
2010-04-19 DataTern files infringement action against Staples, Inc., et al.
2010-09-17 DataTern notifies BP America Inc. of alleged infringement
2010-10-07 DataTern files infringement action against Eli Lilly and Company, et al.
2011-03-30 DataTern notifies J.C. Penney Company, Inc. of alleged infringement
2011-04-04 DataTern files infringement action against Abbott Laboratories, et al.
2011-04-07 Complaint Filing Date

II. Technology and Patent(s)-in-Suit Analysis

U.S. Patent No. 5,937,402, System for Enabling Access to a Relational Database from an Object-Oriented Program, issued August 10, 1999

The Invention Explained

  • Problem Addressed: The patent identifies a fundamental conflict between object-oriented (OO) applications and relational databases. It notes that translating OO operations into relational database calls is "processor-intensive," and that the "normalized" structure of relational databases, where data is split across many tables to reduce redundancy, does not map cleanly to the structure of "well designed object[s]" (’402 Patent, col. 1:13-42).
  • The Patented Solution: The invention proposes a system that uses "logical tables" and "logical keys" to bridge this gap. A logical table is a virtual construct, defined as a subset of columns from an underlying physical database table, which can be designed to better represent an OO software object ('402 Patent, Abstract). A key aspect of this solution is the "normalization process," which allows a user to define these logical tables from existing database tables and to specify which rows of the physical table belong to the logical table by using a "discriminator," described as a "valid 'where' constraint clause" ('402 Patent, col. 4:40-47; FIG. 5).
  • Technical Importance: The invention provides a middleware layer to resolve the well-known "impedance mismatch" between OO programming and relational data models, a significant challenge in enterprise software development during the relevant time period ('402 Patent, col. 1:13-16).

Key Claims at a Glance

  • The complaint seeks a declaratory judgment on all claims; independent claims of the '402 Patent include 1, 4, and 8. The elements of independent claim 1 are:
    • defining a logical table comprising a subset of columns from at least one of the one or more physical tables;
    • designating one column of the logical table as a logical primary key column;
    • forming a normalized relational schema object representing the logical table;
    • generating, responsive to the normalized relational schema object, one or more object classes associated with the normalized relational schema object; and
    • employing an object of an object class including the one or more object classes associated with the normalized relational schema object and a respective corresponding logical primary key value to access data in the at least one of the physical tables in the relational database.

U.S. Patent No. 6,101,502, Object Model Mapping and Runtime Engine for Employing Relational Database with Object Oriented Software, issued August 8, 2000

The Invention Explained

  • Problem Addressed: The patent addresses the same OO-to-relational interface problem as its predecessor, noting the inefficiency of translating queries and the structural mismatch caused by data normalization (’502 Patent, col. 1:25-49).
  • The Patented Solution: This invention describes a comprehensive architecture for automating the connection. It comprises a "mapping tool" to generate a "map" defining relationships between an "object model" and a database "schema," a "code generator" that uses this map to create "interface objects," and a "runtime engine" that invokes these objects to handle data access transparently ('502 Patent, Abstract; FIG. 1). The stated goal is that programmers need not have "knowledge of the database structure, the database programming interface, database security, or the database transaction model" to access the data ('502 Patent, col. 2:1-6).
  • Technical Importance: The technology provides an automated framework for creating a data access layer, potentially reducing development time and decoupling application logic from the underlying database implementation ('502 Patent, col. 2:1-6).

Key Claims at a Glance

  • The complaint seeks a declaratory judgment on all claims; independent claims of the '502 Patent include 1 and 10. The elements of independent claim 1 are:
    • selecting an object model;
    • generating a map of at least some relationships between schema in the database and the selected object model;
    • employing the map to create at least one interface object associated with an object corresponding to a class associated with the object oriented software application; and
    • utilizing a runtime engine which invokes said at least one interface object with the object oriented application to access data from the relational database.

III. The Accused Instrumentality

  • Product Identification: Microsoft's ADO.NET and ADO.NET Entity Framework software (Compl. ¶22, 24, 26).
  • Functionality and Market Context: The complaint describes these products as tools and frameworks used to develop object-oriented applications that access or interface with relational databases, such as Microsoft SQL Server (Compl. ¶26). The ADO.NET Entity Framework is an object-relational mapping (O/RM) framework that provides services for developers to work with data in the form of domain-specific objects and properties, rather than the underlying database tables and columns. The complaint notes that DataTern has alleged infringement against numerous third-party companies based on their use of these Microsoft products in their enterprise systems (Compl. ¶1, 13-17).

IV. Analysis of Infringement Allegations

The complaint is a declaratory judgment action and therefore does not contain infringement allegations against the defendant. Instead, it describes infringement theories that Defendant DataTern has allegedly asserted against Microsoft's customers in other lawsuits (Compl. ¶1, 22, 26). According to the complaint, DataTern's theory is that the "development of ... object oriented applications through the use of tools such as ADO.NET and/or ADO.NET Entity Framework, and their subsequent access or interfacing with a relational database ... constitutes direct infringement" of the patents-in-suit (Compl. ¶26).

The complaint references "generic claim charts" that DataTern allegedly provided to various defendants in prior litigation, but these exhibits are not attached to the filed complaint (Compl. ¶22, 24, 26). Without these charts, a detailed, element-by-element analysis of the alleged infringement is not possible based on the provided document.

No probative visual evidence provided in complaint.

V. Key Claim Terms for Construction

  • Term from the ’402 Patent: "logical table"

    • Context and Importance: This term is the central component of the '402 Patent's claimed solution. The outcome of the infringement analysis may depend on whether the data models or mapping constructs generated by Microsoft's ADO.NET Entity Framework can be considered a "logical table" as defined by the patent.
    • Intrinsic Evidence for a Broader Interpretation: The specification states a logical table is "a group of at least one column from a physical table ... and is henceforth referred to as a logical table" ('402 Patent, col. 4:33-36). This general language could support an interpretation covering various forms of data abstraction layers.
    • Intrinsic Evidence for a Narrower Interpretation: The patent repeatedly links the creation of a "logical table" to a user-supplied "Discriminator," which "is a valid 'where' constraint clause which must be syntactically valid in an SQL Select statement on the physical table" ('402 Patent, col. 4:42-46). This may suggest that the term requires a specific implementation tied to an SQL "WHERE" clause, potentially narrowing its scope.
  • Term from the ’502 Patent: "interface object"

    • Context and Importance: This term defines the critical software component that, according to the claims, bridges the application and the runtime engine. Whether the classes, data context, and other entities within the ADO.NET framework function as claimed "interface objects" will be a key question.
    • Intrinsic Evidence for a Broader Interpretation: The claims functionally describe the term as an object "employed by the object oriented software application ... to access the relational database" via a runtime engine ('502 Patent, col. 2:35-39). Such a broad functional description could potentially read on a wide variety of software components.
    • Intrinsic Evidence for a Narrower Interpretation: FIG. 1 and the detailed description show a specific architecture where a "code generator 18" explicitly creates the "interface objects 20" based on a "map 12" ('502 Patent, col. 2:30-35). An argument could be made that the term is limited to objects created through this particular generate-from-map process, raising questions about whether the architecture of the accused ADO.NET framework aligns with this more specific structure.

VI. Other Allegations

  • Indirect Infringement: Microsoft explicitly seeks a declaratory judgment that it has not induced or contributed to the infringement of the patents-in-suit (Compl. ¶39, 42). The complaint establishes the basis for this by detailing DataTern's litigation campaign against Microsoft's customers, where the infringement allegations are predicated on the use of Microsoft's software frameworks (Compl. ¶1, 22, 26).
  • Willful Infringement: As a declaratory judgment complaint filed by the accused infringer, it does not allege willfulness. However, the facts alleged in the complaint, such as DataTern's extensive litigation history and its specific notice letters to Microsoft's customers, would be relevant to a potential willfulness claim by DataTern if it were to file a counterclaim for infringement (Compl. ¶13-17, 22, 26).

VII. Analyst’s Conclusion: Key Questions for the Case

  • A core issue will be one of technical and definitional scope: Can the claims of the patents-in-suit, which describe a specific architecture involving "logical tables," "discriminators," "maps," and "interface objects," be construed to read on the functionality of Microsoft's ADO.NET Entity Framework? The case may turn on whether the accused framework operates in a technically equivalent manner to the specific systems disclosed in the patents, or if there is a fundamental mismatch in their respective architectures and operations.
  • A second central question will be one of patent validity: Microsoft seeks a judgment that the patents are invalid, including for being anticipated or rendered obvious by prior art (Compl. ¶31-32, 35-36). Given that the patents address the well-known "impedance mismatch" problem, a key question for the court will be whether the claimed inventions represent a specific, non-obvious technological solution or if they attempt to claim the broader, abstract idea of an object-relational mapping layer, a field that was subject to extensive research and development at the time.