DCT

1:20-cv-00256

Digi Portal LLC v. Foursquare Labs Inc

Key Events
Complaint
complaint

I. Executive Summary and Procedural Information

  • Parties & Counsel:
  • Case Identification: 1:20-cv-00256, D. Del., 02/24/2020
  • Venue Allegations: Venue is alleged to be proper in the District of Delaware because Defendant is a Delaware corporation and therefore resides in the district.
  • Core Dispute: Plaintiff alleges that Defendant’s Foursquare.com location-based recommendation service infringes five patents related to the dynamic generation of customized web pages.
  • Technical Context: The technology concerns server architectures designed to efficiently generate and deliver personalized web pages by combining user-specific preferences with real-time data, a foundational concept for modern personalized web services.
  • Key Procedural History: The patents-in-suit belong to a family originating from applications first assigned to Yahoo! Inc. in the late 1990s. The complaint notes that patents sharing the same specification were cited during the prosecution of over 700 patents owned by major technology companies, which may be presented to suggest the technology’s foundational nature and relevance.

Case Timeline

Date Event
1997-06-12 Earliest Priority Date (’854, ’227, ’414, ’359, ’342 Patents)
1999-11-09 U.S. Patent No. 5,983,227 Issued
2007-01-30 U.S. Patent No. 7,171,414 Issued
2009-07-21 U.S. Patent No. 7,565,359 Issued
2013-01-08 U.S. Patent No. 8,352,854 Issued
2017-04-18 U.S. Patent No. 9,626,342 Issued
2020-02-24 Complaint Filed

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

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

The Invention Explained

  • Problem Addressed: The patent’s background describes prior art methods for generating customized web pages, such as executing CGI scripts, as inefficient and unable to "scale well" for many users (Compl. ¶14; ’854 Patent, col. 1:42-43). These methods often involved slow, real-time polling of multiple external data servers for every user request, leading to delays that would "turn users away" (’854 Patent, col. 1:47-58). An alternative of continually streaming data to local user storage was described as clogging networks and providing outdated information (’854 Patent, col. 1:59-67).
  • The Patented Solution: The invention proposes a system architecture to accelerate page generation. It generates a "user template" based on a user's specific configuration record, which contains placeholders for dynamic data (Compl. ¶17, Fig. 2; ’854 Patent, col. 3:58-62). Instead of polling external servers for each request, the system populates this template with live data (e.g., stock quotes, news) that is pre-fetched and stored locally in a "shared memory" accessible to the page generator (’854 Patent, col. 4:7-14). The patent also describes an efficiency enhancement where user templates are stored in one of at least two locations (e.g., a cache for frequent users, a database for others) based on the frequency of user access (’854 Patent, col. 6:49-59).
  • Technical Importance: This server-side architecture for pre-caching data and templates was designed to make large-scale, personalized web portals faster and more responsive, a key technical challenge during the growth of the consumer internet.

Key Claims at a Glance

  • The complaint asserts claims 1-3 of the ’854 Patent (Compl. ¶27). Independent claim 1 is a method claim.
  • Essential elements of independent 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;
    • the template program is received from one of at least two locations, with the location being determined from the frequency of the user request for the customized page;
    • receiving an advertisement selected in accordance with 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.

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

The Invention Explained

  • Problem Addressed: The complaint states that the ’227 Patent shares an identical specification with the ’854 Patent and incorporates the same background discussion (Compl. ¶44). The problem is therefore the same: the inability of prior art systems to quickly and scalably serve customized web pages to many simultaneous users (’227 Patent, col. 1:30-44).
  • The Patented Solution: The solution is the same server architecture, where user preferences are combined with a generic template to form a user-specific template. This template is then populated with real-time data stored in a local "storage device" to generate the final page, with the patent emphasizing that the execution and provision of the page are performed in "real-time response" to the user's request (’227 Patent, Claim 2). This architecture avoids the need to make requests to other servers for live data, which was a primary source of delay in prior systems (’227 Patent, Abstract).
  • Technical Importance: This patent, from the same family as the ’854 patent, addresses the core technical challenge of providing scalable, personalized web content in the early consumer internet era.

Key Claims at a Glance

  • The complaint asserts at least claim 2 of the ’227 Patent (Compl. ¶45). Independent claim 2 is a method claim.
  • Essential elements of independent 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, with the executing and providing steps performed in real-time response to the request.

U.S. Patent No. 7,171,414 - "Dynamic Page Generator", issued January 30, 2007

Technology Synopsis

This patent, sharing the same specification as the others, describes a method for providing a customized page from a page server (Compl. ¶62). The invention addresses prior art deficiencies by storing real-time information in a shared local storage device, which eliminates time-consuming calls to other servers and allows the custom page to be built entirely within the page server (Compl. ¶62). The method also involves receiving a user-specific template program from one of at least two locations, where the retrieval location is determined by the frequency of the user's requests (Compl. ¶63).

Asserted Claims

At least claims 1 and 3 (Compl. ¶64).

Accused Features

Foursquare's system is accused of using a page server to provide customized pages based on user preferences (e.g., location) by obtaining real-time information (e.g., places, advertisements) and storing it in a shared local storage device (e.g., a local web/API server) for subsequent display (Compl. ¶64-65).

U.S. Patent No. 7,565,359 - "Dynamic Page Generator", issued July 21, 2009

Technology Synopsis

Also sharing the same specification, this patent's claims are directed to a computer-readable medium with instructions for generating customized pages (Compl. ¶83-84). The complaint alleges that during prosecution, the patentability focus was on the steps of executing a user-specific template program using real-time information stored in a shared local storage device, and combining user preferences with a generic template to form that user-specific program (Compl. ¶83).

Asserted Claims

At least claim 10 (Compl. ¶84).

Accused Features

Foursquare is accused of utilizing a computer-readable medium (e.g., executable code) to generate user-specific webpages by storing real-time information in a shared local storage device and storing user-specific template programs that are associated with a unique user identifier (Compl. ¶84-85).

U.S. Patent No. 9,626,342 - "Dynamic Page Generator", issued April 18, 2017

Technology Synopsis

This patent, also from the same family, claims a method of responding to user requests by generating a unique template program from user-specific customization information and a generic global template (Compl. ¶100, ¶102). The method further involves receiving this unique template from one of at least two locations (e.g., main server storage or local device storage), with the location determined by the frequency of user requests (Compl. ¶106).

Asserted Claims

At least claims 1 and 7 (Compl. ¶101).

Accused Features

Foursquare is accused of generating a unique template program for each user by combining customization information (e.g., location, saved places) with a generic template, and executing that program to generate a customized webpage containing real-time information and advertisements (Compl. ¶102, ¶104).

III. The Accused Instrumentality

Product Identification

The Foursquare.com website and its associated services, referred to as the "Accused Instrumentality" (Compl. ¶27).

Functionality and Market Context

The Foursquare.com service provides users with customized recommendations for places such as restaurants and shops based on user-supplied information, primarily location (Compl. ¶29). The complaint provides screenshots showing that the content displayed to a user in Houston differs from the content displayed to a user in New York, demonstrating the customized nature of the service (Compl. ¶30, pp. 16-17). Users can also save places to lists, further customizing their experience (Compl. ¶31). The service also integrates advertisements, which the complaint alleges are targeted based on user information such as geography and interests (Compl. ¶34). The complaint presents a screenshot showing customized search results for a user in Houston, which is offered as an example of a customized page (Compl. ¶29, p. 14).

IV. Analysis of Infringement Allegations

U.S. Patent No. 8,352,854 Infringement Allegations

Claim Element (from Independent Claim 1) Alleged Infringing Functionality Complaint Citation Patent Citation
receiving a user request for a customized page; The Foursquare.com system receives a request when a user accesses the login page or explores the site for recommendations. ¶28 col. 8:16-17
receiving a template program unique to the user and based on user configuration information supplied by the user; The system receives software instructions and data (source code) that is specific to a user, as the content rendered is modified based on user-supplied information such as location. ¶29 col. 8:18-21
the template program is received from one of at least two locations, the location determined from the frequency of the user request... User template information is alleged to be stored in and retrieved from main server storage for less frequent access and from local storage on the user's computer (e.g., browser local storage, cookies) for more frequent access. The complaint provides a screenshot of source code referencing "localStorage" (Compl. p. 21). ¶33 col. 8:22-25
receiving an advertisement selected in accordance to the user demographic information; Foursquare provides advertisements to users based on demographic information such as birthday, location, geography, and interests. ¶34 col. 8:26-28
executing the template program using the selected advertisement to generate the customized page; and The system's source code is executed using the selected advertisement and user-specific data to generate the customized Foursquare.com page. ¶35 col. 8:29-31
providing the customized page to the user. The system provides the user with the generated Foursquare.com page, which includes the integrated advertisement. A screenshot is provided showing an ad integrated into a venue page (Compl. p. 23). ¶36 col. 8:32-33
  • Identified Points of Contention:
    • Scope Questions: A central question may be whether the phrase "template program" can be construed to read on the collection of source code, scripts, and data structures (like browser cookies and local storage) that constitute a modern web application, as opposed to the more monolithic, server-side HTML template file described in the patent's embodiments.
    • Technical Questions: The infringement theory for the "at least two locations" limitation relies on mapping the patent's disclosure of server-side cache vs. database storage to the defendant's alleged use of server-side storage vs. client-side (browser) storage. The case may require evidence to establish that the accused system determines the retrieval location (server vs. browser) based on the "frequency of the user request" as claimed.

U.S. Patent No. 5,983,227 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 Foursquare system obtains user preferences when a user customizes their location or saves places of interest. The complaint shows different customized pages for users in Houston and New York (Compl. pp. 27-28). ¶46 col. 20:43-45
obtaining real-time information from information sources; The system obtains real-time information about places (food, coffee, shopping) and advertisements from its own servers and third-party sources. ¶50 col. 20:46-47
storing the real-time information in a storage device; The obtained real-time information is stored on a server (e.g., web/API server) to be used as input to generate a customized page. ¶50 col. 20:48-49
combining the user preferences for the user and a template to form a template program specific to the user; The system combines user-specific preferences (location, saved places) with a generic or "global" template to create a template program unique to that user. ¶51 col. 20:50-52
receiving, from a user and at the server, a user request for a customized page customized according to the user preferences; The server receives a request when a user logs in or initiates a search, which is customized based on that user's preferences. ¶52 col. 20:53-56
executing the template program... using the real-time information stored in the storage device... to generate the customized page; and The system executes page generation code, using the stored real-time information as input, to generate a webpage displaying content customized for the user. ¶53 col. 20:57-61
providing the user with the customized page, wherein the steps of executing and providing are performed in real-time response to receipt of the user request... The system provides the customized page, with integrated advertisements and real-time content, in real-time response to the user's login or search request. ¶54 col. 20:62-67
  • Identified Points of Contention:
    • Scope Questions: The dispute may focus on whether the accused system's combination of user data with front-end code constitutes "combining the user preferences... and a template to form a template program specific to the user," or if it represents a fundamentally different technical approach.
    • Technical Questions: A factual question will be what constitutes "real-time information" and a "storage device" in the context of the accused system. The analysis will likely examine whether the accused system's handling of data about venues and advertisements meets the specific functions required by the claim.

V. Key Claim Terms for Construction

  • The Term: "template program"

    • Context and Importance: This term is central to the infringement theory across all asserted patents. Its definition will determine whether a modern, distributed web application architecture, which relies on client-side scripts, APIs, and browser storage, falls within the scope of a claim term conceived in the context of server-side page generation of the late 1990s.
    • Intrinsic Evidence for Interpretation:
      • Evidence for a Broader Interpretation: The specification describes the purpose of the template is to provide a structure for a page that is then filled with dynamic data (e.g., ’854 Patent, col. 4:7-14). Plaintiff may argue that any set of instructions and data structures that achieves this functional result, regardless of its specific implementation, constitutes a "template program."
      • Evidence for a Narrower Interpretation: The patent provides specific examples of a "user template" as a single, HTML-like document containing special placeholder tags (e.g., ’854 Patent, Fig. 4; col. 5:16-23). Defendant may argue that the term should be limited to such a structure, distinguishing it from a collection of JavaScript files, CDN assets, and browser cookies.
  • The Term: "received from one of at least two locations, the location determined from the frequency of the user request"

    • Context and Importance: This limitation in the ’854 patent was a key feature for improving efficiency and is a focal point of the infringement allegations. The dispute will likely center on whether "locations" can include the user's own computer (client-side) versus the remote server (server-side).
    • Intrinsic Evidence for Interpretation:
      • Evidence for a Broader Interpretation: The patent's specification discusses storing templates for "frequent users" in a cache to reduce response time, while templates for infrequent users might be generated anew or stored elsewhere, functionally aligning with the concept of tiered storage based on usage frequency (’854 Patent, col. 6:49-59). This functional description could support an interpretation that covers different logical storage tiers, including client-side vs. server-side.
      • Evidence for a Narrower Interpretation: The patent's primary embodiment, shown in Figure 2, depicts both "Cached User Templates (214)" and the source of user configuration data as being part of the server-side "Page Server (104)" architecture (’854 Patent, Fig. 2). This may support an argument that the "two locations" are both within the server's infrastructure (e.g., RAM vs. disk) and do not extend to the user's browser.

VI. Other Allegations

  • Indirect Infringement: The complaint does not contain allegations of induced or contributory infringement.
  • Willful Infringement: The complaint does not contain allegations of willful infringement. It alleges only that Defendant had "constructive notice" of the patents by operation of law (Compl. ¶38, ¶56, ¶77, ¶94, ¶113).

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

  • A core issue will be one of technical translation: can the patent family's description of a "template program" and a "shared local storage device," conceived in the context of a late-1990s server-side architecture, be construed to cover the components of a modern web service that relies heavily on distributed client-side scripting, browser local storage, and content delivery networks?
  • A key question for claim construction will be the definitional scope of the phrase "at least two locations" in claims of the ’854, ’414, and ’342 patents. The viability of the infringement case may depend on whether this term can be interpreted to encompass a client-side location (the user's browser) in addition to a server-side location, or if it is limited to different storage tiers within the server's own infrastructure as depicted in the patents' figures.
  • An evidentiary question will be one of functional operation: what evidence demonstrates that the accused Foursquare.com system actually determines the retrieval location for its template components (e.g., server vs. browser local storage) based on the "frequency of the user request," as explicitly required by certain asserted claims?