DCT

3:20-cv-06152

Express Mobile Inc v. M

I. Executive Summary and Procedural Information

  • Parties & Counsel:
  • Case Identification: 3:20-cv-06152, N.D. Cal., 10/27/2020
  • Venue Allegations: Plaintiff alleges venue is proper in the Northern District of California because Defendants have committed acts of infringement in the district and maintain regular and established places of business in San Francisco and Mountain View.
  • Core Dispute: Plaintiff alleges that Defendants’ website and application platforms, including Microsoft Office Web App and LinkedIn's professional networking service, infringe five patents related to browser-based website creation, content generation, and mobile device integration.
  • Technical Context: The technology relates to browser-based, WYSIWYG tools for creating and displaying websites and mobile content, a foundational technology for modern web and application development platforms.
  • Key Procedural History: The complaint notes that two of the patents-in-suit, U.S. Patent Nos. 6,546,397 and 7,594,168, have previously survived multiple challenges to their patent-eligible subject matter under 35 U.S.C. § 101 in other district courts. Rulings in the Northern District of California and the Eastern District of Texas found the patents were directed to a specific technological improvement over prior website creation methods, not an abstract idea.

Case Timeline

Date Event
1999-12-02 Priority Date for ’397 and ’168 Patents
2003-04-08 ’397 Patent Issued
2008-04-07 Priority Date for ’044, ’287, and ’755 Patents
2009-09-22 ’168 Patent Issued
2015-06-23 ’755 Patent Issued
2016-10-18 ’287 Patent Issued
2018-03-27 ’044 Patent Issued
2019-07-27 Plaintiff allegedly provides notice to Microsoft
2020-10-26 Plaintiff allegedly provides notice to LinkedIn
2020-10-27 Complaint Filing Date

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

U.S. Patent No. 6,546,397 - “Browser Based Web Site Generation Tool and Run Time Engine”

  • Patent Identification: U.S. Patent No. 6,546,397, titled “Browser Based Web Site Generation Tool and Run Time Engine,” issued April 8, 2003. (Compl. ¶15).

The Invention Explained

  • Problem Addressed: The patent’s background section describes conventional website building tools as computationally slow, platform-dependent, and requiring significant expertise in markup and scripting languages, which limited the ability to efficiently create dynamic, rich-media websites. (’397 Patent, col. 1:10-31).
  • The Patented Solution: The invention provides a browser-based system with two main components: a "build tool" and a "run time engine" (Compl. ¶15). A user interacts with the build tool through visual menus and panels inside a web browser to design a website. The tool captures these user selections—representing website elements, styles, and layouts—and stores this information in a structured database. Later, a client browser invokes a separate run time engine, which retrieves the stored information from the database and generates the final website display commands for a virtual machine. (’397 Patent, Abstract; col. 2:20-53).
  • Technical Importance: This approach separated the design environment from the final code generation, enabling a "what you see is what you get" (WYSIWYG) website editor that could run directly in a browser, thereby overcoming the platform dependencies and technical complexity of prior tools (Compl. ¶31).

Key Claims at a Glance

  • The complaint asserts at least independent claim 1. (Compl. ¶59).
  • Essential elements of claim 1 include:
    • A method for users to produce Internet websites on a computer with a browser and a virtual machine.
    • Presenting a viewable menu with a user-selectable panel of settings through the browser.
    • Having at least one user-selectable setting in the panel correspond to a command for the virtual machine.
    • Generating a display in accordance with the user-selected settings substantially contemporaneously with the selection.
    • Storing information representative of the user-selected settings in a database.
    • Generating the website by retrieving the stored information.
    • Building web pages from at least a portion of the database and at least one run time file.
    • The run time file utilizing the stored information to generate virtual machine commands for displaying the web pages.

U.S. Patent No. 7,594,168 - “Browser Based Web Site Generation Tool and Run Time Engine”

  • Patent Identification: U.S. Patent No. 7,594,168, titled “Browser Based Web Site Generation Tool and Run Time Engine,” issued September 22, 2009. (Compl. ¶21).

The Invention Explained

  • Problem Addressed: The complaint alleges that the inventions of the ’168 patent solve technical problems related to website creation by improving designer productivity, specifically through an "innovative implementation for styles." (Compl. ¶22).
  • The Patented Solution: The patent describes a browser-based website creation system where a server contains a "build engine." This build engine is configured to accept user input to associate styles with various objects (e.g., images, buttons) on a plurality of web pages. A key aspect is that styles can include values defining transformations and timelines for objects. The system then produces a database containing a multidimensional array that defines each object, its style, and its location within the website. A browser with a runtime engine can then access this database to generate the final website. (’168 Patent, col. 63:60-64:23; Compl. ¶24).
  • Technical Importance: The system provides a structured, database-driven method for managing complex styles, including animations and transformations, across numerous objects and pages within a website, streamlining a difficult aspect of web development (Compl. ¶22).

Key Claims at a Glance

  • The complaint asserts at least independent claim 1. (Compl. ¶91).
  • Essential elements of claim 1 include:
    • A system for assembling a website, comprising a server with a build engine.
    • The build engine accepting user input to create a website with multiple pages and objects.
    • The build engine accepting user input to associate a style with objects, where each page has at least one button or image object.
    • The style for the button or image object includes values defining transformations and timelines.
    • Each web page is defined entirely by its constituent objects and their associated styles.
    • The system produces a database with a multidimensional array defining each object's style, number, and web page location.
    • The database is provided to a server accessible to a web browser.
    • A web browser with a runtime engine is configured to generate the website from the object and style data in the database.

U.S. Patent No. 9,928,044 - “Systems and Methods for Programming Mobile Devices”

  • Patent Identification: U.S. Patent No. 9,928,044, titled “Systems and Methods for Programming Mobile Devices,” issued March 27, 2018. (Compl. ¶34).
  • Technology Synopsis: The patent addresses the technical problem of generating and displaying content uniformly and efficiently across different types of devices (e.g., PC, mobile, tablet). The solution involves a data-efficient association between a "symbolic name" (e.g., a name for a widget) and a corresponding User Interface (UI) object. Information representing the UI object is stored in a database and later retrieved by a "player" to build and display an application on a target device. (Compl. ¶¶35, 37).
  • Asserted Claims: At least claim 1. (Compl. ¶142).
  • Accused Features: The complaint alleges that Microsoft's Office Web App and LinkedIn's platform infringe by using symbolic names for web components (e.g., "Table" or "Create a Poll"), storing user selections related to these components in a database, and using a player (browser) to generate an application from that data for display. (Compl. ¶¶145, 151-152, 162, 167).

U.S. Patent No. 9,471,287 - “Systems and Methods for Integrating Widgets on Mobile Devices”

  • Patent Identification: U.S. Patent No. 9,471,287, titled “Systems and Methods for Integrating Widgets on Mobile Devices,” issued October 18, 2016. (Compl. ¶40).
  • Technology Synopsis: The patent describes a system for efficiently generating code to display content uniformly across different devices. The invention creates an association between a "symbolic name" and a UI object (e.g., a widget). A "device-independent application" that includes the symbolic name is produced and provided to the target device along with a "device-platform-dependent player" to render the UI object efficiently. (Compl. ¶¶41, 43).
  • Asserted Claims: At least claim 1. (Compl. ¶178).
  • Accused Features: The complaint alleges that the accused Microsoft and LinkedIn platforms infringe by associating symbolic names with UI objects (e.g., "TableContainer"), generating a device-independent application (e.g., JavaScript files), and providing it with a device-dependent player (e.g., the browser's rendering engine) to display content across different devices. (Compl. ¶¶181, 186-187, 196, 201).

U.S. Patent No. 9,063,755 - “Systems and Methods for Presenting Information on Mobile Devices”

  • Patent Identification: U.S. Patent No. 9,063,755, titled “Systems and Methods for Presenting Information on Mobile Devices,” issued June 23, 2015. (Compl. ¶47).
  • Technology Synopsis: This patent builds on similar concepts of using symbolic names, device-independent applications, and device-dependent players for cross-device content display. It adds a focus on interactivity, wherein a user can input a value into a UI object, have that value processed by an associated web service, and receive an output value, with both the input and output values being communicated through symbolic names for efficiency. (Compl. ¶¶48-49).
  • Asserted Claims: At least claim 1. (Compl. ¶212).
  • Accused Features: The complaint alleges infringement by the accused platforms' use of UI objects that accept user input and generate output (e.g., a "Table" in Word Online or a "Poll" on LinkedIn), where symbolic names are used to manage the input and output values between the user, a device-independent application, and a device-dependent player. (Compl. ¶¶215, 221, 229, 237).

III. The Accused Instrumentality

  • Product Identification: The complaint identifies the "Accused Instrumentality" as the browser-based versions of Microsoft Office Web App (including Word, PowerPoint, etc.) and LinkedIn's professional networking service, including its tools for creating and editing user and company profiles. (Compl. ¶¶59, 69, 90, 117).
  • Functionality and Market Context:
    • The Microsoft Office Web App platform allows users to create, edit, and share documents through a web browser, with each document accessible via a unique URL. The platform provides a visual editing interface with menus for formatting, animations, and other settings. User selections are processed to update the document display in real-time. The complaint alleges that these selections are stored on Microsoft's servers and retrieved by runtime files, such as JavaScript, to generate the final display in the browser. (Compl. ¶¶59-63, 92-94, 106).
    • The LinkedIn platform allows users to build and customize personal and company profile pages, which function as publicly accessible websites. The platform provides a browser-based editing environment for adding and modifying various content sections. The complaint alleges that user selections in this editor translate into commands for the browser's engine, with the user's profile data and settings stored in backend databases. According to the complaint, client-side JavaScript libraries function as a runtime engine to retrieve this data and render the profile page for viewers. (Compl. ¶¶70, 75, 78, 82-87). A diagram from a LinkedIn engineering blog shows its Kafka data pipeline architecture, which the complaint offers as evidence of its database system for storing member profile settings (Compl. p. 28, ¶82).

IV. Analysis of Infringement Allegations

’397 Patent Infringement Allegations

Claim Element (from Independent Claim 1) Alleged Infringing Functionality Complaint Citation Patent Citation
presenting a viewable menu having a user selectable panel of settings... presented through a browser Defendants' platforms provide browser-based menus with selectable settings, such as text formatting options in Microsoft Word Online or the "Edit public profile & URL" interface on LinkedIn. ¶¶60, 75 col. 66:5-13
at least one of said user selectable settings in said panel corresponds to commands to said virtual machine User selections, such as choosing the "Bold" option, are alleged to generate commands for the browser's virtual machine (e.g., Webkit, Trident, Blink engine) to update the display. ¶¶60, 78 col. 66:14-17
generating a display in accordance with one or more user selected settings substantially contemporaneously with the selection thereof The platforms allegedly update the display immediately upon a user's selection, such as making text bold or applying a new profile photo without a page refresh. ¶¶61, 81 col. 66:18-21
storing information representative of said one or more user selected settings in a database User-selected settings, such as font weight or profile content, are stored in Defendants' backend databases, which the complaint alleges includes the stored HTML source code. ¶¶62, 82 col. 66:22-25
building one or more web pages to generate said website from at least a portion of said database and at least one run time file The platforms allegedly use runtime files (e.g., WordEditor.js, Dust.js templates) that access the stored database information to build the web pages for display. ¶¶63, 86 col. 66:30-34
said at least one run time file utilized information stored in said database to generate virtual machine commands for the display... The runtime JavaScript files allegedly use the retrieved database information to generate commands for the browser's virtual machine, which then renders the final web page. ¶¶63, 87 col. 66:35-39
  • Identified Points of Contention:
    • Scope Questions: The complaint alleges that modern browser rendering engines (e.g., Blink, Webkit) are the "virtual machine" recited in the claim. A key question for the court will be whether the term "virtual machine," as understood in the context of the patent filed in 1999, can be construed to encompass these modern browser engines, or if it was limited to technologies like the Java Virtual Machine (JVM).
    • Technical Questions: The complaint presents screenshots of HTML source code as evidence of "storing information... in a database" (Compl. p. 15, ¶62). An issue may arise as to whether storing settings as attributes within an HTML file on a server constitutes a "database" as that term is used in the patent.

’168 Patent Infringement Allegations

Claim Element (from Independent Claim 1) Alleged Infringing Functionality Complaint Citation Patent Citation
a system for assembling a web site comprising a server comprising a build engine configured to... accept user input to create a web site Defendants' platforms provide a server-based "build engine" that allows users to create websites, such as Microsoft PowerPoint presentations or LinkedIn profiles, by providing user input. ¶¶93, 118 col. 63:60-64
...accept user input to associate a style with objects... wherein each web page comprises at least one button object or at least one image object The platforms allow users to apply styles to objects. For example, a user can apply a design theme in PowerPoint or add subtitles to a video on LinkedIn. ¶¶94, 98, 125-126 col. 63:65-64:4
said at least one button object or at least one image object being associated with a style that includes values defining transformations and time lines The platforms associate styles with transformations and timelines, such as applying a "Wipe" transition with a set duration in PowerPoint or adding a video caption file with timestamps on LinkedIn. A screenshot shows options for animation effects in PowerPoint, including direction and duration (Compl. p. 40-41, ¶¶101-102). ¶¶99, 102, 130 col. 64:5-9
each web page being defined entirely by each of the plurality of objects comprising that web page and the style associated with the object The complaint alleges that the generated web pages are defined by their objects and associated styles, consistent with the Document Object Model (DOM) used by modern browsers. ¶¶103, 131 col. 64:10-13
produce a database with a multidimensional array comprising the objects... including data defining, for each object, the object style, an object number, and an indication of the web page... The platforms allegedly produce a database (e.g., Azure Storage, Espresso) where data defining object style, number, and page is stored, as evidenced by HTML source code or API fields. ¶¶106, 108, 132-133 col. 64:14-20
a web browser with access to a runtime engine is configured to generate the website from the objects and style data extracted from the provided database The complaint alleges that modern web browsers function as the claimed "runtime engine," using the DOM to parse object and style data from the database (via HTML) to generate the website. ¶¶111-112, 135-136 col. 64:24-28
  • Identified Points of Contention:
    • Scope Questions: The infringement theory relies on equating a modern browser's standard rendering process (parsing a DOM) with the claimed "runtime engine" that is "configured to generate the website from... data extracted from the... database." The court may need to determine if this is a functional match or if the patent describes a more specific, distinct process.
    • Technical Questions: It raises the question of whether the structured data provided by the accused systems (e.g., HTML files or API responses) constitutes a "database with a multidimensional array" in the specific manner required by the claim.

V. Key Claim Terms for Construction

For U.S. Patent No. 6,546,397

  • The Term: "virtual machine"
  • Context and Importance: This term is central to the infringement analysis, as the complaint alleges that modern browser rendering engines (e.g., Webkit, Blink) meet this limitation. Given the patent's 1999 priority date, when "virtual machine" was strongly associated with the Java Virtual Machine (JVM), its construction will be a critical point of dispute. Practitioners may focus on this term because the viability of the infringement case depends on extending its scope beyond the technology prominent at the time of invention to cover current browser technology.
  • Intrinsic Evidence for Interpretation:
    • Evidence for a Broader Interpretation: The claims do not explicitly limit the term to any specific technology like Java. The patent's focus on browser-based tools and overcoming platform dependency could support an interpretation that any software layer that abstracts the underlying hardware and OS to execute commands, such as a browser engine, falls within the term's scope.
    • Evidence for a Narrower Interpretation: The specification makes numerous references to "JAVA," "Javascript," "JAVA Applet," and a "JAVA Wrapper," which may suggest that a person of ordinary skill in the art in 1999 would have understood "virtual machine" in this context to refer to a JVM or a similar, self-contained execution environment, rather than the integrated rendering engine of a web browser. (’397 Patent, col. 2:40-50).

For U.S. Patent No. 7,594,168

  • The Term: "database with a multidimensional array"
  • Context and Importance: The complaint alleges this limitation is met by the accused products' storage of object and style information, evidenced by HTML source code or API data structures. The definition of "database" and "multidimensional array" is therefore critical to determining whether the accused systems' data storage methods fall within the claim scope.
  • Intrinsic Evidence for Interpretation:
    • Evidence for a Broader Interpretation: The specification describes storing various data types, including object styles, numbers, and page indicators. (’168 Patent, col. 21:50-22:25). This could be interpreted broadly to mean any structured collection of this data, which might encompass nested HTML elements or JSON objects returned by an API.
    • Evidence for a Narrower Interpretation: The patent explicitly illustrates a "Build Engine's Multi-Dimensional Array Structured Data Base" as a distinct component in its system architecture (’168 Patent, Fig. 3a, item 358). This may support a narrower construction requiring a specific type of backend database system with a formal array structure, rather than simply the structured text of a webpage's source code.

VI. Other Allegations

  • Indirect Infringement: The complaint alleges both induced and contributory infringement against both Defendants. Inducement is based on allegations that Defendants had knowledge of the patents (Microsoft from July 2019, LinkedIn from October 2020) and encouraged infringement by advertising, distributing, and providing instructional materials for their platforms. (Compl. ¶¶64, 137). Contributory infringement is based on allegations that the platforms are material components specially made for practicing the patents and are not staple articles of commerce suitable for substantial non-infringing use. (Compl. ¶¶65, 138).
  • Willful Infringement: The complaint alleges willful infringement against Microsoft based on its alleged knowledge of the patents since at least July 27, 2019, and its subsequent refusal to take a license while continuing its allegedly infringing activities. (Compl. ¶66). Similar allegations are not made with the same specificity against LinkedIn, to whom notice was allegedly provided only one day before the filing of the amended complaint.

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

  • A core issue will be one of definitional scope: can the term "virtual machine," rooted in the technological context of 1999, be construed to cover modern browser rendering engines as alleged, or is it limited to a technology like the Java Virtual Machine prevalent at the time of the invention?
  • A central evidentiary question will be one of technical equivalence: does the structured data within the accused products’ HTML source code and API responses constitute a "database with a multidimensional array" as required by the claims, or is there a fundamental mismatch in data structure and function compared to what the patent discloses?
  • A key legal question will be the persuasive weight of prior art litigation: to what extent will multiple prior court orders upholding the subject matter eligibility of the lead patents against § 101 challenges, in which the technology was characterized as a "revolutionary technological solution," influence the court’s analysis in this case?