2:17-cv-00127
Express Mobile Inc v. Forix LLC
I. Executive Summary and Procedural Information
- Parties & Counsel:
- Plaintiff: Express Mobile, Inc. (Delaware)
- Defendant: Forix LLC (Oregon)
- Plaintiff’s Counsel: Devlin Law Firm LLC; Brent Coon & Associates, P.C.
- Case Identification: 2:17-cv-00127, E.D. Tex., 02/14/2017
- Venue Allegations: Plaintiff alleges venue is proper because Defendant conducts business in the district, the claims arise in the district, and the alleged acts of infringement occurred and are continuing to occur there.
- Core Dispute: Plaintiff alleges that Defendant’s use of the Magento e-commerce platform to build websites for customers directly infringes two patents related to browser-based website generation tools.
- Technical Context: The patents relate to systems and methods that allow users to create websites through a graphical interface, where design choices are stored in a database and used by a run-time engine to render the final site, a foundational technology for modern content management and e-commerce platforms.
- Key Procedural History: The complaint alleges that Plaintiff provided Defendant with notice of infringement of both patents-in-suit via correspondence received on July 2, 2015, forming the basis for the willfulness allegations.
Case Timeline
| Date | Event |
|---|---|
| 1999-12-02 | Priority Date for ’397 and ’168 Patents |
| 2003-04-08 | U.S. Patent No. 6,546,397 Issued |
| 2009-09-22 | U.S. Patent No. 7,594,168 Issued |
| 2015-07-02 | Plaintiff Notifies Defendant of Alleged Infringement |
| 2017-02-14 | Complaint Filed |
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, "Browser Based Web Site Generation Tool and Run Time Engine," issued April 8, 2003. (Compl. ¶8).
The Invention Explained
- Problem Addressed: The patent’s background describes conventional website building tools as requiring significant technical expertise in languages like HTML and JavaScript, making them inefficient and inaccessible for creating complex, dynamic web pages. (’397 Patent, col. 1:11-30).
- The Patented Solution: The invention proposes a browser-based system that separates the design process from the final website execution. A user manipulates website elements through a graphical interface, and these selections are stored as structured data in an object database. A separate, compact "run time engine" is then used by a visitor's browser to read the database and dynamically construct the website, as illustrated in the patent's Figure 2. (’397 Patent, Abstract; col. 2:5-21).
- Technical Importance: This object-oriented, database-driven architecture aimed to simplify the creation of sophisticated websites with features like animations and dynamic resizing, making advanced web design accessible to users without extensive programming knowledge. (’397 Patent, col. 1:52-61).
Key Claims at a Glance
- The complaint asserts independent claims 1 (method), 2 (apparatus), and 37 (apparatus). (Compl. ¶17, ¶19, ¶67).
- Independent Claim 1 recites a method with the steps of: presenting a selectable settings panel through a browser where settings correspond to commands for a virtual machine; generating a display based on selected settings; storing information for the settings in a database; generating a website by retrieving the information; and building web pages using the database information and a run time file that generates virtual machine commands.
- Independent Claim 2 recites an apparatus comprising: an interface to present a settings menu; a browser to generate a display; a database to store settings information; and a build tool with a run time file that uses the stored information to generate commands for a virtual machine.
- Independent Claim 37 recites an apparatus comprising: an interface for building a website (presenting menus, accepting settings, generating a display); an internal database for storing settings; and a build tool to construct web pages using an external database and run time files that generate virtual machine commands.
- The complaint also asserts dependent claims 3-6, 9-11, 14-15, 17, 20, 23-25, and 35. (Compl. ¶15).
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, "Browser Based Web Site Generation Tool and Run Time Engine," issued September 22, 2009. (Compl. ¶74).
The Invention Explained
- Problem Addressed: As a continuation of the ’397 patent, the ’168 patent addresses the same general problem of simplifying dynamic website creation. (’168 Patent, col. 1:17-49).
- The Patented Solution: This patent focuses more specifically on a system where a website is defined entirely by objects and associated styles. A server with a "build engine" accepts user input to associate styles, including "transformations and time lines," with website objects (e.g., a button or image). The system then produces a database structured as a "multidimensional array" containing the objects and their properties. A runtime engine then uses this database to generate the website. (’168 Patent, Abstract; col. 64:1-29).
- Technical Importance: The invention provides a structured, object-centric framework for managing complex website elements and their behaviors, such as animations and dynamic styles, by packaging them into a database for rendering. (’168 Patent, col. 2:28-32).
Key Claims at a Glance
- The complaint asserts independent claim 1 (system). (Compl. ¶82).
- Independent Claim 1 recites a system comprising: a server with a build engine; web pages comprising objects; the server accepting user input to associate styles (including transformations and timelines) with objects; each web page being defined by the objects and styles; the system producing a database with a multidimensional array containing the objects and their properties; and providing the database to a server where a browser with a runtime engine can generate the website from the database.
- The complaint also asserts dependent claims 2-6. (Compl. ¶81).
III. The Accused Instrumentality
Product Identification
- The accused instrumentalities are "all versions of Magento Enterprise Edition" and the website building tools used by Defendant Forix LLC. (Compl. ¶15).
Functionality and Market Context
- The complaint alleges that the accused instrumentality is a browser-based web page authoring tool used by Defendant to build websites for its customers. (Compl. ¶15-16). Its functionality is described as enabling users to interact with a server via a browser to create websites using a dashboard and WYSIWYG (What You See Is What You Get) editor. (Compl. ¶18, ¶30). User selections for elements like text color, layout, and image alignment are allegedly stored in a database. (Compl. ¶18). The system is alleged to use this stored data in conjunction with runtime files (e.g., PHP, JavaScript, CSS) to generate the final HTML code that is rendered by a web browser. (Compl. ¶18, ¶6). The complaint further alleges the platform uses "Responsive Web Design" to enable dynamic resizing of web pages. (Compl. ¶66).
- No probative visual evidence provided in complaint.
IV. Analysis of Infringement Allegations
6,546,397 Patent Infringement Allegations
| Claim Element (from Independent Claim 1) | Alleged Infringing Functionality | Complaint Citation | Patent Citation |
|---|---|---|---|
| a method for producing websites on and for computers with browsers and virtual machines | The Accused Instrumentalities enable users to produce websites through browsers on users' computers, which are alleged to contain virtual machines. | ¶18 | col. 65:6-9 |
| presenting, through a browser, a user selectable panel of settings... | The user logs in and is presented with a "website store-builder tool" and navigates to screens like "Manage Products" or a WYSIWYG editor. | ¶18 | col. 65:10-18 |
| at least one of said settings corresponding to commands to said virtual machine | User selections for font, alignment, and paragraph styles in the WYSIWYG editor are alleged to be commands for the browser's engine. | ¶18 | col. 65:18-22 |
| storing information representative of one or more of said user selected settings in a database | Data corresponding to user selections, such as text color, layout, and image filenames, are stored. | ¶18 | col. 65:29-32 |
| generating a website at least in part by retrieving said information from said database | The Accused Instrumentalities build one or more web pages to generate a website from a database. | ¶18 | col. 65:33-35 |
| building one or more web pages to generate said website from...at least one run time file... | The system uses runtime files like PHP, JavaScript, and PHTML, which can be viewed in the file directory, to build the web pages. | ¶18, ¶6 | col. 65:36-40 |
| where said at least one run time file utilizes information stored in said database to generate virtual machine commands... | At run time, files use information from the database to generate HTML, which the complaint alleges "represents virtual machine commands" for the browser's engine. | ¶18 | col. 65:40-45 |
- Identified Points of Contention:
- Scope Questions: A central question is whether the term "virtual machine", which the patent describes in the context of the Java Virtual Machine, can be construed to read on a modern web browser's JavaScript and HTML rendering engine as the complaint alleges (Compl. ¶18). The difference in the underlying technology and the time period may be a focus of dispute.
- Technical Questions: The complaint asserts that HTML code itself constitutes "virtual machine commands." (Compl. ¶18). This raises the technical question of whether the structure and function of standard HTML and server-side scripts (like PHP) that generate it are equivalent to the patent's more specific architecture of a "run time engine" that processes a distinct object database to generate a display.
7,594,168 Patent Infringement Allegations
| Claim Element (from Independent Claim 1) | Alleged Infringing Functionality | Complaint Citation | Patent Citation |
|---|---|---|---|
| a system for assembling a website configured to...a server with a build engine...the server accepting user input to associate a style with objects... | The Magento platform is alleged to be a system with a server and build engine that allows users to associate styles with objects (e.g., text, images) on a web page. | ¶82, ¶85 | col. 64:1-10 |
| wherein a button or image object is associated with a style that includes values defining transformations and time lines... | The accused system allegedly uses CSS libraries, animations, and transitions to add transformations and timelines to elements like buttons and images. | ¶82, ¶92 | col. 64:11-13 |
| produce a database with a multidimensional array comprising the objects that comprise the website... | The complaint alleges that JSON strings originating from the Magento database reflect the implementation of a "multidimensional array structured database." | ¶84 | col. 64:17-23 |
| provide the database to a server accessible to web browser; wherein the database is produced such that a web browser...is configured to generate the website from the objects and style data... | The system is alleged to produce customized runtime files (an HTML file and a CSS file) which allow a web browser to generate the website from the object and style data. | ¶82, ¶86 | col. 64:24-29 |
- Identified Points of Contention:
- Scope Questions: The claim requires the system to "produce a database with a multidimensional array." The complaint points to JSON strings as evidence of this structure. (Compl. ¶84). This raises the question of whether a standard relational database that merely outputs data in an array-like format (JSON) satisfies a claim limitation directed to the structure of the database itself.
- Technical Questions: What evidence demonstrates that each web page in the accused system is "defined entirely by the objects and the style associated with the object" as required by the claim? This suggests a specific, self-contained object model that may or may not align with how a platform like Magento constructs pages using templates, server-side logic, and multiple data sources.
V. Key Claim Terms for Construction
The Term: "virtual machine" (’397 Patent, Claims 1, 2, 37)
Context and Importance: The plaintiff’s infringement theory hinges on equating this term with modern browser rendering engines. Its construction is critical, as a narrow definition limited to the patent's specific embodiments could undermine the infringement allegations against current web technologies.
Intrinsic Evidence for Interpretation:
- Evidence for a Broader Interpretation: The patent’s background discusses the invention in the general context of "HTML (Hypertext Markup Language) and its extensions (DHTML, XML, etc.) and JavaScript." (’397 Patent, col. 1:56-59). This may support an interpretation that includes the engines that process these languages.
- Evidence for a Narrower Interpretation: The specification heavily emphasizes Java-based technologies, explicitly referencing "JAVA Applet," "JAR/CAB files," and a "JAVA wrapper." (’397 Patent, col. 1:59-61; col. 6:5-11). The detailed description of the run-time process in Figure 2 and the associated text suggests a self-contained, executable engine like a Java applet, not a general-purpose browser.
The Term: "build tool" (’397 Patent, Claim 2)
Context and Importance: Practitioners may focus on this term because it defines the core apparatus. The infringement case depends on mapping the entire Magento platform to this claimed "build tool," and its definition will determine if the architecture matches.
Intrinsic Evidence for Interpretation:
- Evidence for a Broader Interpretation: The summary describes the "Browser Based build engine" as a technology that creates a "user friendly interface" for web design that is "written entirely in a web based full feature programming language." (’397 Patent, col. 1:52-56). This could be argued to cover any comprehensive, browser-based web development platform.
- Evidence for a Narrower Interpretation: Figure 3a of the patent depicts the "Build Tool Components" as a specific architecture comprising distinct modules: an "interface 354," a "build engine 352," and a "build engine's multi-dimensional array structured data base 358." (’397 Patent, Fig. 3a). This may support a narrower construction requiring this specific modular structure.
VI. Other Allegations
- Willful Infringement: The complaint alleges that the Defendant had pre-suit knowledge of both the ’397 and ’168 patents as of its receipt of a notice letter on July 2, 2015. (Compl. ¶70, ¶100). The complaint asserts that any infringement after this date has been willful. (Compl. ¶71, ¶101).
VII. Analyst’s Conclusion: Key Questions for the Case
The resolution of this case appears to depend on several key questions:
A core issue will be one of definitional scope: can the term "virtual machine", which is described in the patent’s 1999-era specification with a focus on Java technology, be construed broadly enough to cover the JavaScript and HTML rendering engines of modern web browsers as alleged in the complaint?
A second central dispute will likely be one of architectural equivalence: does the accused Magento platform, which uses a conventional relational database and server-side scripting, embody the specific "multidimensional array" database and modular "build tool" architecture recited in the patent claims, or is there a fundamental mismatch in technical operation?
Finally, an underlying evidentiary question will be whether the complaint's infringement theories, which equate standard web outputs (HTML, JSON) with specific claim limitations ("virtual machine commands," "multidimensional array database"), can be substantiated with sufficient technical evidence to meet the requirements of the claim language as construed by the court.