I. Executive Summary and Procedural Information
- Parties & Counsel:
- Case Identification: 1:19-cv-01777, D. Del., 09/22/2019
- Venue Allegations: Venue is alleged to be proper in the District of Delaware because Defendant is a Delaware corporation.
- Core Dispute: Plaintiff alleges that Defendant’s real estate website, redfin.com, infringes five patents related to the dynamic generation and customization of web pages based on user-specific information.
- Technical Context: The patents address foundational methods for personalizing web content by generating pages tailored to individual user preferences, a technology central to modern e-commerce and information-delivery platforms.
- Key Procedural History: The asserted patents, all sharing a common specification, originate from a family first assigned to Yahoo! Inc. The complaint notes that during prosecution, the inventions were distinguished from the prior art based on unconventional features such as storing a user-customized template in at least two locations determined by request frequency and generating templates unique to a user based on user-provided information. The complaint also states that patents in this family have 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 |
| 2019-09-22 |
Complaint Filed |
II. Technology and Patent(s)-in-Suit Analysis
U.S. Patent No. 8,352,854 - "Dynamic Page Generator"
The Invention Explained
- Problem Addressed: The patent's background describes prior art methods for serving customized web pages as suffering from significant scalability and performance issues. Methods like CGI scripts were slow because they had to poll multiple external servers for data, while other approaches that streamed data to a user's local machine clogged networks and resulted in outdated information (Compl. ¶¶14-15; ’854 Patent, col. 1:42-2:2).
- The Patented Solution: The invention proposes a more efficient system where a server generates a "user template" based on a user's stored preferences (e.g., demographics, interests). This template, containing placeholders for live data, is then stored in one of at least two locations—such as a fast-access cache for frequent users or a database for infrequent ones—based on the user's request frequency. This allows the server to quickly generate a fully customized page by populating the pre-stored template with live data, improving speed and scalability (Compl. ¶¶17, 24; ’854 Patent, col. 4:49-62, Fig. 2).
- Technical Importance: This architectural approach of separating relatively static user preferences (in a template) from dynamic data and using frequency-based caching was designed to solve the performance bottlenecks of early personalized web services (Compl. ¶24).
Key Claims at a Glance
- The complaint asserts independent claims 1 (method), 8 (computer-readable medium), and 15 (system) (Compl. ¶27). The core elements of independent claim 1 include:
- receiving a user request for a customized page;
- receiving a template program that is unique to the user and based on user configuration information supplied by the user, the user configuration information including user demographic information;
- 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 also asserts dependent claims 2-3 and 9-10 (Compl. ¶27).
U.S. Patent No. 5,983,227 - "Dynamic Page Generator"
The Invention Explained
- Problem Addressed: The ’227 patent shares an identical specification with the ’854 patent and thus addresses the same technical problems of scalability and latency in serving customized web content (Compl. ¶44).
- The Patented Solution: The solution is architecturally similar to that described in the ’854 patent, focusing on combining user preferences with a template and populating it with real-time data. The claims of the ’227 patent, however, focus on the real-time nature of the process (Compl. ¶44; ’227 Patent, col. 20:50-64).
- Technical Importance: The invention provided a method for delivering customized pages that included up-to-date information without the performance degradation associated with prior art systems that polled external data sources for every page request (Compl. ¶44).
Key Claims at a Glance
- The complaint asserts at least claim 2 (method) (Compl. ¶45). The essential elements of independent claim 2 include:
- obtaining user preferences, wherein a user's user preferences indicate items of interest to that user;
- obtaining real-time information from information sources;
- storing the real-time information in a storage device;
- combining the user preferences for the user and a template to form a template program specific to the user;
- receiving, from a user and at the server, a user request for a customized page;
- executing the template program specific to the user using the real-time information stored in the storage device as input to the template program to generate the customized page; and
- 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...and wherein the customized page includes at least one item of real-time information selected from the storage device.
- The complaint does not explicitly reserve the right to assert other claims of the ’227 Patent.
U.S. Patent No. 7,171,414 - "Dynamic Page Generator"
- Technology Synopsis: Sharing a specification with the other asserted patents, the ’414 Patent describes a system for generating customized web pages. The complaint highlights unconventional features such as storing real-time information in a shared local storage device and receiving a user-specific template program from one of at least two locations determined by the frequency of user requests (Compl. ¶¶62-63).
- Asserted Claims: Claims 1 and 3 (Compl. ¶64).
- Accused Features: The complaint alleges that Redfin.com provides customized pages based on user preferences, obtains real-time information (e.g., house listings) and stores it in a shared local storage device, and receives a user-specific template from one of at least two locations determined by request frequency (Compl. ¶¶64-72).
U.S. Patent No. 7,565,359 - "Dynamic Page Generator"
- Technology Synopsis: This patent also shares the common specification. The complaint notes that during prosecution, the examiner focused on the novelty of executing a user-specific template program using real-time information from a shared local storage device, and combining user preferences with a generic template to form that user-specific template (Compl. ¶83).
- Asserted Claims: Claim 10 (Compl. ¶84).
- Accused Features: The complaint accuses Redfin.com of utilizing a computer-readable medium with instructions to generate customized pages according to user preferences by storing real-time information in a shared local device and storing a user-specific template program tied to a user identifier (Compl. ¶¶84-85).
U.S. Patent No. 9,626,342 - "Dynamic Page Generator"
- Technology Synopsis: As the most recent patent in the asserted family, the ’342 Patent builds on the same core technology. The infringement allegations focus on the method of responding to user requests by generating and executing a unique template program that combines user-specific customization information with a global template (Compl. ¶¶100, 102).
- Asserted Claims: Claims 1 and 7 (Compl. ¶101).
- Accused Features: The complaint alleges Redfin.com practices the claimed method by generating unique template programs for users based on information like location and past searches, combining that with a global template, and executing it to create a customized webpage (Compl. ¶¶101-104).
III. The Accused Instrumentality
Product Identification
The accused instrumentality is the website redfin.com and its associated systems and methods for providing customized web pages to users (Compl. ¶27).
Functionality and Market Context
The complaint describes redfin.com as a real estate website where users can create accounts and provide information, such as their location or properties of interest (Compl. ¶¶29, 46). The website then allegedly uses this "user configuration information" to generate customized pages displaying relevant property listings, maps, and advertisements (Compl. ¶¶29, 34). The complaint provides screenshots showing how the displayed content on redfin.com varies for different users based on their selected geographic area or saved "favorite" properties (Compl. ¶¶30, 47). This screenshot shows a map of real estate listings in zip code 60007, which is customized based on a user's search query (Compl. p. 14). The complaint alleges that the underlying code, such as JavaScript files, is also varied and specific to a user in order to pull data from different resources and render the appropriate customized information (Compl. ¶30).
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 |
Redfin.com receives a user request, for example, when a user logs in or performs a search. |
¶28 |
col. 4:1-2 |
| receiving a template program that is unique to the user and based on user configuration information supplied by the user, the user configuration information including user demographic information |
Redfin.com allegedly receives and uses a template program (e.g., a JavaScript page) that is unique to the user based on user-supplied configuration information such as location and user profile data. |
¶29 |
col. 3:51-54 |
| 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 |
The complaint alleges on information and belief that the template program and associated data are retrieved from different locations (e.g., main server storage vs. local computer storage) based on the frequency of the user's access. |
¶33 |
col. 4:49-59 |
| receiving an advertisement selected in accordance to the user demographic information |
Redfin.com allegedly provides advertisements to a user that are selected based on demographic information such as geography and interest. |
¶34 |
col. 5:39-45 |
| executing the template program using the selected advertisement to generate the customized page |
Redfin.com allegedly executes the JavaScript templates with the selected advertisement integrated to generate the final customized page. |
¶35 |
col. 4:5-8 |
| providing the customized page to the user |
Redfin.com provides the user with the final, customized webpage containing integrated advertisements. |
¶36 |
col. 4:8-9 |
’227 Patent Infringement Allegations
| Claim Element (from Independent Claim 2) |
Alleged Infringing Functionality |
Complaint Citation |
Patent Citation |
| obtaining user preferences... |
Redfin.com obtains user preferences when a user customizes their location, house size, or price filters, or saves favorite properties. |
¶¶46-48 |
col. 20:20-23 |
| obtaining real-time information from information sources |
Redfin.com allegedly obtains real-time property listings and advertisements from its own servers/databases and from third-party servers (e.g., Google). |
¶50 |
col. 20:23-25 |
| storing the real-time information in a storage device |
This real-time information is allegedly pulled from a storage server and sent to Redfin.com's web/API server, which acts as a storage device for use in page generation. |
¶50 |
col. 20:25-27 |
| combining the user preferences for the user and a template to form a template program specific to the user |
The user's preferences (e.g., location) are allegedly combined with a generic, global template to form a customized template program (e.g., a unique JavaScript page) for that user. |
¶51 |
col. 20:27-30 |
| receiving...a user request for a customized page... |
A user requests a customized page when they log in to redfin.com or perform a property search. |
¶52 |
col. 20:30-33 |
| executing the template program...using the real-time information...to generate the customized page |
Redfin allegedly runs the template program (page generation code, tiles, containers, and user data) using the stored real-time listings as input to create the customized page. |
¶53 |
col. 20:33-37 |
| providing the user with the customized page, wherein the steps...are performed in real-time response...and wherein the...page includes at least one item of real-time information |
The customized page with current house listings is allegedly provided to the user in real-time response to their login or search request. |
¶54 |
col. 20:37-43 |
Identified Points of Contention
- Scope Questions: A central question may be whether the term "template program," which the patents describe as an HTML document with special placeholders (e.g., ''), can be construed to cover the modern JavaScript-based code and data structures that the complaint alleges are used by Redfin.com (Compl. ¶¶17, 29, Fig. 3). The complaint's screenshots of JavaScript code snippets will be central to this dispute (Compl. p. 16).
- Technical Questions: The infringement theory for the ’854 patent hinges on the allegation that the storage "location [is] determined from the frequency of the user request" (Compl. ¶33). A key factual question will be what evidence demonstrates that Redfin.com employs a system that specifically tracks individual user request frequency to choose between two or more distinct storage locations, as opposed to using a more general-purpose caching architecture.
V. Key Claim Terms for Construction
The Term: "template program"
- Context and Importance: This term appears in the independent claims of multiple asserted patents and is foundational to the infringement case. The complaint alleges that Redfin's "JavaScript page" and associated software instructions constitute a "template program" (Compl. ¶29). Practitioners may focus on this term because its construction could determine whether the patent's teachings, rooted in early web architecture, apply to the accused modern web platform.
- Intrinsic Evidence for Interpretation:
- Evidence for a Broader Interpretation: The patent abstract states that "user preferences [are] organized into templates stored in compact data structures," which could suggest that a "template program" is any data structure that organizes user preferences for page generation, not just a specific file type (’854 Patent, Abstract).
- Evidence for a Narrower Interpretation: The specification provides a specific example of a "global user template" as an HTML document with embedded placeholder tags like '' (’854 Patent, col. 5:16-19, Fig. 3). A defendant may argue that this specific embodiment defines the scope of the term.
The Term: "location determined from the frequency of the user request" (’854 Patent, Claim 1)
- Context and Importance: This limitation is a key differentiator of the ’854 patent's method. The infringement allegation depends on showing that Redfin’s system makes a dynamic choice of storage location based on how often a particular user makes requests.
- Intrinsic Evidence for Interpretation:
- Evidence for a Broader Interpretation: The specification discusses caching as a general principle, stating "for frequent users the user template may also be stored in cache" and that caching is "more effective where the typical user makes several requests in a short time span" (’854 Patent, col. 6:51-59, col. 5:29-32). This could support a reading that covers general caching policies for frequently accessed content.
- Evidence for a Narrower Interpretation: The language "determined from the frequency of the user request" suggests a user-specific determination rather than a system-wide policy. The specification distinguishes between infrequent users, whose templates are stored in a user configuration database, and frequent users, whose templates may "also be stored in cache," implying a system that differentiates storage based on individual user behavior (’854 Patent, col. 6:51-59).
VI. Other Allegations
- Indirect Infringement: The complaint does not contain specific allegations of induced or contributory infringement.
- Willful Infringement: The complaint does not provide sufficient detail for analysis of willfulness. It alleges only constructive notice "by operation of law" and does not plead any facts related to pre-suit knowledge of the patents (Compl. ¶¶38, 56, 77, 94, 113).
VII. Analyst’s Conclusion: Key Questions for the Case
- A core issue will be one of definitional scope: can the term "template program," which the patent specification illustrates as an HTML file with embedded comment tags, be construed to encompass the modern, dynamic JavaScript architecture alleged to be used by Redfin.com?
- A key evidentiary question will be one of technical implementation: what evidence will be presented to demonstrate that Redfin's system determines the storage location for a user's data based on the specific frequency of that user's requests, as required by the ’854 patent, rather than on a general-purpose, system-wide caching strategy?
- A central factual dispute will likely concern architectural equivalence: does the operational flow of the redfin.com platform—from obtaining user preferences and real-time data to combining them and generating a page—map onto the specific sequence of steps and component interactions recited in the asserted method claims?