DCT
6:22-cv-01255
Vilox Tech LLC v. Salesforce Inc
I. Executive Summary and Procedural Information
- Parties & Counsel:- Plaintiff: Vilox Technologies, LLC and Vilox, LLC (Texas)
- Defendant: Salesforce, Inc. (Delaware)
- Plaintiff’s Counsel: Ramey LLP
 
- Case Identification: 6:22-cv-01255, W.D. Tex., 12/05/2022
- Venue Allegations: Plaintiff alleges venue is proper because Defendant maintains a regular and established place of business in the Western District of Texas, conducts substantial business in the forum, and has committed alleged acts of infringement within the district.
- Core Dispute: Plaintiff alleges that Defendant’s Salesforce Search, Report Builder, Lightning Platform, and Visualforce products infringe two patents related to "on-the-fly" database searching and dynamic report generation.
- Technical Context: The technology addresses methods for users to intuitively search complex databases without prior knowledge of their underlying structure and to generate reports from the results.
- Key Procedural History: The complaint details significant pre-suit history, alleging that Plaintiff’s attorneys engaged in licensing discussions with Salesforce from late 2016 through mid-2017. During this period, Plaintiff claims it provided Salesforce with information and detailed claim charts for the patents-in-suit. The complaint also notes that a third party, Unified Patents, Inc., filed an Inter Partes Review petition against a related, but not asserted, patent shortly after these discussions concluded.
Case Timeline
| Date | Event | 
|---|---|
| 2000-02-25 | Earliest Priority Date for ’720 and ’100 Patents | 
| 2004-07-06 | ’720 Patent Issued | 
| 2007-03-06 | ’100 Patent Issued | 
| 2016-Fall | Plaintiff allegedly approached Defendant to license Vilox patent portfolio | 
| 2017-02-15 | Plaintiff allegedly met with Defendant and showed claim charts | 
| 2017-03 | Plaintiff allegedly provided Defendant with detailed claim charts | 
| 2017-06 | Plaintiff allegedly met with Defendant's Head of IP, David Simon | 
| 2022-12-05 | Complaint Filing Date | 
II. Technology and Patent(s)-in-Suit Analysis
U.S. Patent No. 6,760,720 - Search-on-the-Fly/Sort-on-the-Fly Search Engine for Searching Databases, Issued July 6, 2004
The Invention Explained
- Problem Addressed: The patent describes the difficulty for users who lack detailed knowledge of a database's structure, or "schema," to formulate effective queries to retrieve information. Conventional searches can also return an unmanageably large volume of data. (’720 Patent, col. 2:1-22, 2:23-28).
- The Patented Solution: The invention proposes a "search-on-the-fly" engine that allows a user to search a database without knowing its structure. The system interactively presents available data fields for selection. If a search on a selected field would yield too many results to be conveniently displayed, the system "truncates" the data—for instance, by displaying only the first letter of city names instead of all full names—allowing the user to iteratively narrow the search in a manageable way. (’720 Patent, Abstract; col. 4:1-8).
- Technical Importance: This method aimed to make database interaction more intuitive and efficient, a significant consideration as diverse and complex databases became more accessible via networks like the World Wide Web. (’720 Patent, col. 2:16-22).
Key Claims at a Glance
- The complaint asserts claims 1-39, with a focus on independent claim 1.
- Independent Claim 1 of the ’720 Patent requires:- determining a database schema for a database, wherein the database includes database fields;
- providing a list of the database fields, wherein the list includes a descriptor indicating a data category;
- receiving a search selection for a database field on the provided list of the database fields;
- determining a quantity of entries in the selected database field;
- if the quantity exceed a specified amount, truncating data, and displaying the truncated data; and
- if the quantity does not exceed the specified amount, displaying contents of the database field.
 
- The complaint reserves the right to assert additional claims. (Compl. ¶13).
U.S. Patent No. 7,188,100 - Search-on-the-Fly Report Generator, Issued March 6, 2007
The Invention Explained
- Problem Addressed: Building on the challenges of database searching, this patent addresses the need to not only retrieve but also to format and report the search results in a structured, repeatable manner. (’100 Patent, col. 1:15-18).
- The Patented Solution: The invention is a "search-on-the-fly report generator" that takes the results from an on-the-fly search and formats them according to a "template." This template, which can be created and saved, contains links or paths to the relevant data categories. This allows for the dynamic generation of consistently formatted reports that reflect the live state of the database at the time the report is run. (’100 Patent, Abstract; col. 4:4-10).
- Technical Importance: The technology provides a framework for creating dynamic, structured reports from complex data sources, a foundational concept for modern business intelligence and data visualization tools. (’100 Patent, col. 21:20-24).
Key Claims at a Glance
- The complaint asserts claims 1-38, with a focus on independent claim 1.
- Independent Claim 1 of the ’100 Patent requires:- receiving a query, whereby the query comprises a database search request, and wherein the database is searched using an on-the-fly search;
- a query tweaker generating a defined query of the database from the received query, wherein generating the defined query includes the query tweaker performing transformations and corrections on the received query;
- accessing one or more databases, using a search engine, per the defined query;
- generating a search result based on the database access, wherein the search result includes one or more descriptors indicating corresponding data categories; and
- creating a template of the search result, wherein the template comprises links to the data categories described by the one or more descriptors.
 
- The complaint reserves the right to assert additional claims. (Compl. ¶23).
III. The Accused Instrumentality
Product Identification
- The complaint names "Salesforce Search" as infringing the ’720 Patent. It names "the search features and report features of the Salesforce Report Builder, the Lightning Platform, and Visualforce" as infringing the ’100 Patent. (Compl. ¶¶14, 23).
Functionality and Market Context
- The complaint alleges that Salesforce Search performs "retrieval, search, generation of results, and truncation of displayed characters." (Compl. ¶14).
- For the ’100 Patent, the accused functionalities are alleged to include "receiving a database query, searching a database on-the-fly based on the query...tweaking the received query to generate a defined query...accessing the database...generating a search result...and creating a template." (Compl. ¶23).
- The complaint does not provide specific details on the commercial importance of these features, but they are core components of Salesforce's widely used customer relationship management (CRM) platform.
IV. Analysis of Infringement Allegations
The complaint references claim chart exhibits (Exhibits B and D) as support for its allegations but does not include them in the filing. (Compl. ¶¶15, 24). The following summary is based on the narrative infringement theories presented in the body of the complaint.
No probative visual evidence provided in complaint.
’720 Patent Infringement Allegations
| Claim Element (from Independent Claim 1) | Alleged Infringing Functionality | Complaint Citation | Patent Citation | 
|---|---|---|---|
| determining a database schema for a database... | The complaint does not provide sufficient detail for analysis of this element. | ||
| providing a list of the database fields, wherein the list includes a descriptor indicating a data category | generating a list of data fields that include a descriptor indicating a data category | ¶13 | col. 5:40-44 | 
| receiving a search selection for a database field on the provided list of the database fields | receiving a search selection for a data field from the list of data fields | ¶13 | col. 5:58-62 | 
| determining a quantity of entries in the selected database field | determining a quantity of entries in the selected database field | ¶13 | col. 7:6-10 | 
| if the quantity exceed a specified amount, truncating data, and displaying the truncated data... | determining if the number of entries in the database field is equal to or less than a specified number of entries or if the number of entries does not exceed the specified amount, and if in excess of the specified amount reducing the number of characters displayed to the user | ¶13 | col. 7:10-21 | 
’100 Patent Infringement Allegations
| Claim Element (from Independent Claim 1) | Alleged Infringing Functionality | Complaint Citation | Patent Citation | 
|---|---|---|---|
| receiving a query, whereby the query comprises a database search request, and wherein the database is searched using an on-the-fly search | receiving a database query, searching a database on-the-fly based on the query using a search-on-the-fly search engine (or other search engine) | ¶23 | col. 31:4-6 | 
| a query tweaker generating a defined query of the database from the received query... | tweaking the received query to generate a defined query of the database | ¶23 | col. 31:7-11 | 
| accessing one or more databases, using a search engine, per the defined query | accessing the database using the defined query | ¶23 | col. 31:12 | 
| generating a search result based on the database access... | generating a search result that includes descriptors of data categories | ¶23 | col. 31:13-14 | 
| creating a template of the search result, wherein the template comprises links to the data categories... | creating a template that includes a link or path to one or more fields in one or more databases | ¶23 | col. 31:15-17 | 
Identified Points of Contention
- Scope Questions: For the ’720 Patent, a central issue may be the scope of "truncating data." The patent describes a specific iterative process of reducing characters to manage result size. The litigation may explore whether modern user interface methods for handling large result sets (e.g., pagination, infinite scroll, showing a "more results" link) perform this claimed function.
- Technical Questions: For the ’100 Patent, the infringement allegation rests on the accused products creating a "template." The complaint does not specify how the accused products perform this function. A key question will be whether Salesforce's reporting tools create and save a "template" in the structural sense required by the patent—a reusable object with defined paths to data elements—or if they simply save a static report or its visual layout.
V. Key Claim Terms for Construction
- The Term: "truncating data" (’720 Patent, Claim 1) - Context and Importance: This term describes the core mechanism for managing information overload, a key problem the patent claims to solve. The outcome of the infringement analysis for the ’720 Patent may depend heavily on whether Salesforce's method of handling large result sets is found to be a form of "truncating data."
- Intrinsic Evidence for Interpretation:- Evidence for a Broader Interpretation: The plain language of the claim, "truncating data," could be argued to encompass any method of shortening or reducing a set of data for display.
- Evidence for a Narrower Interpretation: The specification provides a detailed example where the system iteratively reduces the number of characters in a city name (e.g., from full name to 7 characters, then 5, then 3) until the result list is small enough to be displayed. This specific embodiment may be used to argue that "truncating" requires this particular iterative character-reduction process. (’720 Patent, col. 7:10-42).
 
 
- The Term: "template" (’100 Patent, Claim 1) - Context and Importance: The creation of a "template" is the central feature distinguishing the ’100 Patent from a simple search tool. Its definition is critical, as it differentiates between a dynamic, reusable report definition and a static, one-time report. Practitioners may focus on this term because the infringement theory for the ’100 Patent hinges on whether Salesforce's reporting tools create such a structure.
- Intrinsic Evidence for Interpretation:- Evidence for a Broader Interpretation: A party could argue that any saved report format or reusable query constitutes a "template" under a plain and ordinary meaning.
- Evidence for a Narrower Interpretation: The specification describes a template as including "links or clauses that provide a path to data subsets, tables, fields, or elements" within a database. (Compl. ¶22; ’100 Patent, col. 21:30-40). Figure 36 of the patent illustrates a template as a saved object containing a specific SQL query and field metadata, suggesting a more technical and structural definition than merely a visual layout.
 
 
VI. Other Allegations
- Indirect Infringement: The complaint alleges both induced and contributory infringement for both patents. Inducement is based on allegations that Salesforce "actively encouraged or instructed" its customers on how to use the accused products in an infringing manner. (Compl. ¶¶18, 27). Contributory infringement is based on the allegation that there are "no substantial noninfringing uses" for the accused features. (Compl. ¶¶19, 28).
- Willful Infringement: The complaint alleges willful infringement based on pre-suit knowledge. It provides specific dates of meetings in 2017 where Plaintiff allegedly presented information and claim charts regarding the patents-in-suit to Salesforce's legal team, including its head of IP. (Compl. ¶¶7-9, 19, 28).
VII. Analyst’s Conclusion: Key Questions for the Case
- A core issue will be one of technical scope: does the term "truncating data," as taught in the ’720 Patent's specification with its iterative character-reduction examples, read on the methods used by modern platforms like Salesforce to manage large search result sets, such as pagination or "load more" features?
- A key evidentiary question will be one of structural equivalence: do Salesforce's accused reporting tools create a "template" in the structural manner claimed by the ’100 Patent—a saved, reusable query definition with defined data paths—or do they simply save a static report or its visual formatting? The complaint's conclusory allegations will require substantial factual development.
- Given the detailed allegations of pre-suit notice, a central legal question will be willfulness. The determination of whether Salesforce's alleged infringement was willful, in light of the alleged 2017 meetings and provision of claim charts, will likely be a focal point of the litigation and could significantly influence potential damages.