DCT

1:22-cv-06680

Digi Portal LLC v. Five Guys Enterprises LLC

I. Executive Summary and Procedural Information

  • Parties & Counsel:
  • Case Identification: 1:22-cv-06680, N.D. Ill., 11/29/2022
  • Venue Allegations: Venue is alleged to be proper based on Defendant operating places of business within the Northern District of Illinois.
  • Core Dispute: Plaintiff alleges that Defendant’s website, fiveguys.com, infringes five patents related to the dynamic generation of customized web pages based on user data and real-time information.
  • Technical Context: The technology concerns server-side methods for efficiently creating personalized web pages, a foundational technology for customized user experiences on the internet.
  • Key Procedural History: The patents-in-suit share a common specification and priority date, originally assigned to Yahoo! Inc. The complaint highlights arguments made during patent prosecution that certain features, such as storing a user template in different locations based on request frequency, were unconventional improvements over the prior art. The complaint also notes that the patent family has been cited during the prosecution of over 700 other patents.

Case Timeline

Date Event
1997-06-12 Earliest Priority Date for all Patents-in-Suit
1999-11-09 U.S. Patent No. 5,983,227 Issues
2007-01-30 U.S. Patent No. 7,171,414 Issues
2009-07-21 U.S. Patent No. 7,565,359 Issues
2013-01-08 U.S. Patent No. 8,352,854 Issues
2017-04-18 U.S. Patent No. 9,626,342 Issues
2022-11-29 Complaint Filed

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

U.S. Patent No. 8,352,854 - "Dynamic Page Generator"

  • Patent Identification: U.S. Patent No. 8,352,854, "Dynamic Page Generator," issued January 8, 2013.

The Invention Explained

  • Problem Addressed: The patent describes prior art methods for generating custom web pages, such as executing CGI scripts, as inefficient and unable to scale well to handle many simultaneous users (Compl. ¶14). These methods often involved polling various external servers for information, introducing delays that could lead to user impatience (Compl. ¶14; ’854 Patent, col. 1:43-58). Storing custom information locally on a user's machine was also problematic, as it clogged networks and the data quickly became outdated (Compl. ¶15; '854 Patent, col. 1:59-67).
  • The Patented Solution: The invention proposes a system where a "user template" is generated from a global template and a user's specific configuration record (Compl. ¶17; '854 Patent, col. 3:58-62). This user template, containing placeholders for dynamic data, is then used by a page server to quickly build a customized page. To accelerate this process, the live data (e.g., stock quotes, sports scores) is stored locally on the page server in a shared memory, eliminating the need to query external servers in real-time ('854 Patent, col. 4:1-11). The system further enhances efficiency by storing user templates in different locations—such as a fast cache for frequent users and a user configuration database for infrequent users—based on the frequency of user requests (Compl. ¶20; '854 Patent, col. 6:49-59).
  • Technical Importance: This architecture enabled the creation of highly scalable and responsive personalized web portals by centralizing dynamic data and pre-processing user preferences into efficient, reusable templates (Compl. ¶12).

Key Claims at a Glance

  • The complaint asserts independent claims 1, 8, and 15 (Compl. ¶27).
  • Key elements of independent method claim 1 include:
    • receiving a user request for a customized page;
    • receiving a template program unique to the user and based on user configuration information supplied by the user;
    • wherein the template program is received from one of at least two locations, the location determined from the frequency of the user request for the customized page;
    • receiving an advertisement selected in accordance to the user demographic information;
    • executing the template program using the selected advertisement to generate the customized page; and
    • providing the customized page to the user.
  • The complaint reserves the right to assert dependent claims (Compl. ¶27).

U.S. Patent No. 5,983,227 - "Dynamic Page Generator"

  • Patent Identification: U.S. Patent No. 5,983,227, "Dynamic Page Generator," issued November 9, 1999.

The Invention Explained

  • Problem Addressed: As this patent shares an identical specification with the ’854 Patent, it addresses the same problems of scalability and latency in prior art systems for delivering customized web content (Compl. ¶44). The background highlights the inefficiency of systems that relied on real-time data retrieval from multiple sources for each user request (’227 Patent, col. 1:42-58).
  • The Patented Solution: The invention provides a method where a page server generates customized pages in real-time. It does this by obtaining user preferences, obtaining real-time information (e.g., news, stock quotes) from various sources, and storing that real-time information in a local storage device accessible to the page server ('227 Patent, Abstract). The server combines the user's preferences with a generic template to form a user-specific "template program," which it then executes using the locally stored real-time data to generate and provide the final customized page to the user ('227 Patent, cl. 2).
  • Technical Importance: This method provided a framework for real-time web customization that was significantly faster and more scalable than prior art script-based approaches (Compl. ¶43).

Key Claims at a Glance

  • The complaint asserts at least independent claim 2 (Compl. ¶45).
  • Key elements of independent method claim 2 include:
    • obtaining user preferences indicating items of interest;
    • obtaining real-time information from information sources;
    • storing the real-time information in a storage device;
    • combining the user preferences and a template to form a template program specific to the user;
    • receiving a user request for a customized page;
    • executing the template program using the stored real-time information to generate the customized page; and
    • providing the customized page to the user, wherein the executing and providing steps are performed in real-time response to the user request.

Multi-Patent Capsule: U.S. Patent No. 7,171,414 - "Dynamic Page Generator"

  • Patent Identification: U.S. Patent No. 7,171,414, "Dynamic Page Generator," issued January 30, 2007.
  • Technology Synopsis: Sharing the same specification as the other asserted patents, the ’414 Patent focuses on methods for providing a customized page by storing real-time information in a shared local storage device, thereby avoiding time-consuming calls to external servers (Compl. ¶60). A key feature highlighted during prosecution was receiving the user-specific template program from one of at least two locations, with the retrieval location being determined by the frequency of user requests (Compl. ¶61).
  • Asserted Claims: Independent claims 1 and 3 (Compl. ¶62).
  • Accused Features: The fiveguys.com web server is accused of utilizing a page server coupled to a network that provides customized pages based on user preferences (e.g., restaurant search parameters), obtains real-time information from sources, and stores it in a shared local device (Compl. ¶63-64).

Multi-Patent Capsule: U.S. Patent No. 7,565,359 - "Dynamic Page Generator"

  • Patent Identification: U.S. Patent No. 7,565,359, "Dynamic Page Generator," issued July 21, 2009.
  • Technology Synopsis: The ’359 Patent, also sharing the common specification, claims a computer-readable medium with instructions for generating customized pages (Compl. ¶79). The inventive concept highlighted from the prosecution history is the combination of executing a user-specific template program using real-time information from shared local storage, receiving user preferences, and combining those preferences with a generic template to form the user-specific template (Compl. ¶79).
  • Asserted Claims: Independent claim 10 (Compl. ¶80).
  • Accused Features: The accused instrumentality is alleged to be a computer-readable medium (e.g., a server) with instructions for generating customized pages (e.g., search results) according to user preferences by combining a generic template with customized data (Compl. ¶81, ¶85).

Multi-Patent Capsule: U.S. Patent No. 9,626,342 - "Dynamic Page Generator"

  • Patent Identification: U.S. Patent No. 9,626,342, "Dynamic Page Generator," issued April 18, 2017.
  • Technology Synopsis: The ’342 Patent claims methods for generating customized pages. The core alleged inventive steps involve a server generating a template program unique to a user by combining user-specific customization information with a global, generic template (Compl. ¶96). The server then executes this program to generate and serve the customized web page (Compl. ¶97).
  • Asserted Claims: Independent claims 1 and 7 (Compl. ¶94).
  • Accused Features: The fiveguys.com servers are accused of generating a unique template program for a user by combining a generic template with user customization information (e.g., account preferences, search terms) and executing that program to create and display a customized webpage (Compl. ¶96).

III. The Accused Instrumentality

Product Identification

Functionality and Market Context

  • The complaint alleges the accused instrumentality is a system for providing customized web pages to users. This system is alleged to receive user requests, such as through a login or a search for a restaurant, and collect user information including location and other demographic data (Compl. ¶28). The complaint provides a screenshot of a privacy policy table indicating the collection of "Identifiers" such as name and IP address, as well as "Geolocation data" (Compl. p. 14). This information is allegedly used to generate customized content, including location-based restaurant search results and targeted advertisements (Compl. ¶30, ¶47). The system is alleged to use both server-side components and client-side JavaScript code, which may be served from a Content Delivery Network (CDN), to render the final page (Compl. ¶28). The complaint also alleges that template information is stored in multiple locations, such as browser cookies and local storage, and retrieved based on access frequency (Compl. ¶29, ¶50).

IV. Analysis of Infringement Allegations

'854 Patent Infringement Allegations

Claim Element (from Independent Claim 1) Alleged Infringing Functionality Complaint Citation Patent Citation
receiving a user request for a customized page The system receives a user login request or search query for a customized home or search page on the website. A screenshot shows the user login interface (Compl. p. 13). ¶28 col. 3:15-19
receiving a template program that is unique to the user and based on user configuration information... supplied by the user... After a user logs in, the system allegedly uses a user-specific template to display customized information, such as the user's name, based on user-supplied account preferences. ¶29 col. 3:63-64
wherein the template program is received from one of at least two locations, the location determined from the frequency of the user request for the customized page Data and templates are allegedly retrieved from a main server or from other sources like a CDN server, cookies, or local cache, with the retrieval location depending on how frequently a user accesses the page. ¶29 col. 6:49-59
receiving an advertisement selected in accordance to the user demographic information The website allegedly implements targeted advertising using user-provided demographic and location information, such as IP address and device location. ¶30 col. 5:39-45
executing the template program using the selected advertisement to generate the customized page The system allegedly executes JavaScript templates using the selected advertisement to generate a customized user page with the advertisement integrated. ¶31 col. 4:49-51
providing the customized page to the user The system provides the user's browser with the final customized page, which includes integrated advertisements. ¶32 col. 4:52-54

'227 Patent Infringement Allegations

Claim Element (from Independent Claim 2) Alleged Infringing Functionality Complaint Citation Patent Citation
obtaining user preferences, wherein a user's user preferences indicate items of interest to that user The system obtains user preferences such as state, city, or category through user input for a restaurant search. A screenshot shows a search form for finding locations (Compl. p. 31). ¶47 col. 3:63-64
obtaining real-time information from information sources The system allegedly obtains currently available restaurant information from various databases or information sources via an API or server. A developer tools screenshot shows map data being retrieved from a maps.googleapis.com source (Compl. p. 33). ¶48 col. 4:32-41
storing the real-time information in a storage device The currently available restaurant information is allegedly stored, at least temporarily, on a fiveguys.com web server, API server, or the user's computer. ¶48 col. 4:43-45
combining the user preferences for the user and a template to form a template program specific to the user The system allegedly combines a generic webpage template with customized data based on the user's search inputs and login information to create a template program executable by the user's browser. A screenshot shows source code described as a "General template used to generate webpage" (Compl. p. 35). ¶49 col. 3:58-62
...executing the template program... using the real-time information stored in the storage device... to generate the customized page The system is alleged to execute code that uses the stored real-time restaurant availability information as input to generate the customized search results webpage. ¶51 col. 4:49-51
providing the user with the customized page, wherein the steps of executing and providing are performed in real-time response to the receipt of the user request The system delivers the customized search results page to the user in real-time following the user's login or search initiation. ¶52 col. 1:51-52

Identified Points of Contention

  • Scope Questions: The infringement theory may depend on whether the term "template program," described in the 1997-priority patent as a server-side construct, can be construed to cover the combination of generic client-side scripts (e.g., JavaScript) and server-side data delivered via APIs, which is characteristic of more modern web architectures.
  • Technical Questions: A central factual question for the '854 Patent may be what evidence supports the allegation that the retrieval location for template data is actively "determined from the frequency of the user request," as the claim requires, versus this being the ordinary operation of a standard web caching system not specifically tied to individual user access patterns. For the '227 Patent, a question may be whether combining a generic HTML layout with dynamically fetched data constitutes "combining... to form a template program specific to the user" as claimed.

V. Key Claim Terms for Construction

  • The Term: "template program"

    • Context and Importance: This term is central to the asserted claims of multiple patents-in-suit. Its construction will be critical in determining whether the accused system, which allegedly uses generic templates combined with dynamic data and client-side scripts, infringes claims rooted in a 1997-era server-side architecture.
    • Intrinsic Evidence for Interpretation:
      • Evidence for a Broader Interpretation: The patent specification describes the "user template" (a component of the program) as being generated from a "global front page template" and a "user configuration record" ('854 Patent, col. 3:58-62). This suggests it is a set of instructions and data derived from multiple sources, which could support an argument that it is not limited to a single, static file type.
      • Evidence for a Narrower Interpretation: The specific embodiment shown in Figure 4 of the patents is a file containing HTML-like code with embedded custom tags that act as placeholders for dynamic data (e.g., <!-- portfolio:Quotes,pf_1,1,... -->). A party might argue this example limits the term to a pre-generated, server-side object with a specific structure, rather than the more dynamic combination of generic scripts and API data calls alleged to be used by the accused system.
  • The Term: "location determined from the frequency of the user request"

    • Context and Importance: This limitation from claim 1 of the '854 Patent requires a specific causal link between user behavior and the system's architectural response. Its interpretation will be key to infringement, as it was identified in the complaint as an "unconventional and non-generic" feature distinguished from the prior art (Compl. ¶24).
    • Intrinsic Evidence for Interpretation:
      • Evidence for a Broader Interpretation: The language could be argued to cover any standard tiered storage system where frequently accessed items are automatically promoted to a faster cache, a common practice in web architecture.
      • Evidence for a Narrower Interpretation: The specification provides a specific example: "For infrequent users, the user template is stored in a user configuration database, whereas for frequent users the user template may also be stored in cache" ('854 Patent, col. 6:54-57). This language may support an interpretation that requires a deliberate, programmed choice between two or more distinct storage locations based on a user's measured request frequency, rather than just the passive, system-wide behavior of a generic cache.

VI. Other Allegations

  • Willful Infringement: The complaint's prayer for relief requests that damages be trebled as a result of willful infringement (Compl., Prayer for Relief ¶g). However, the body of the complaint does not contain specific factual allegations to support pre-suit knowledge of the patents or egregious conduct. The complaint alleges only that the Defendant had "at least constructive notice of the '854 patent by operation of law" (Compl. ¶38).

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

  • A core issue will be one of definitional scope: can the term "template program," rooted in the patent's 1997 description of a server-side file with custom tags, be construed to cover a modern web architecture that generates pages by combining generic client-side scripts with dynamic data retrieved from APIs and stored in browser-side locations like cookies and local storage?
  • A key evidentiary question will be one of functional causality: does the complaint provide sufficient evidence that the accused system actively determines the storage location of user data "from the frequency of the user request," as required by certain claims, or is the alleged functionality merely the inherent behavior of a standard, undifferentiated web caching system?
  • A third question will be one of technical equivalence: does the accused system's alleged real-time combination of a generic layout template with user-specific data retrieved from backend sources perform the same function, in substantially the same way, to achieve the same result as the claimed method of "executing the template program... using the real-time information stored in the storage device"?