DCT
1:25-cv-01229
SAP Se v. Celonis Se
I. Executive Summary and Procedural Information
- Parties & Counsel:- Plaintiff: SAP Se (Germany)
- Defendant: Celonis SE (Germany) and Celonis, Inc. (Delaware)
- Plaintiff’s Counsel: Duane Morris LLP
 
- Case Identification: 1:25-cv-01229, D. Del., 10/03/2025
- Venue Allegations: Plaintiff alleges venue is proper because Defendant Celonis, Inc. is a Delaware corporation and thus resides in the district, and because Defendant Celonis SE is a foreign corporation.
- Core Dispute: Plaintiff alleges that Defendant’s process mining software platform infringes four U.S. patents related to efficient graph data traversal in column-store databases, automatic routing of connection requests in business intelligence tools, and dynamic data processing in a semantic data architecture.
- Technical Context: The technology at issue resides in the field of enterprise software, specifically process mining and Enterprise Resource Planning (ERP), which are used by organizations to analyze and optimize complex business processes.
- Key Procedural History: The complaint notes a prior business relationship between the parties from 2016 to 2021, during which SAP was a reseller of Celonis’s process mining software. The complaint alleges that during this period, Celonis gained a deep technical understanding of SAP's database architecture and data extraction techniques. The relationship was terminated by Celonis in 2021 after SAP acquired Signavio, a competing process mining software supplier.
Case Timeline
| Date | Event | 
|---|---|
| 2012-12-13 | ’254 and ’492 Patents Priority Date | 
| 2015-03-31 | ’492 Patent Issue Date | 
| 2016-01-01 | SAP and Celonis business relationship initiated | 
| 2017-07-04 | ’254 Patent Issue Date | 
| 2018-11-13 | ’034 Patent Priority Date | 
| 2020-10-14 | Earliest alleged infringement date for ’034 Patent | 
| 2021-01-01 | SAP and Celonis business relationship terminated | 
| 2021-06-24 | ’007 Patent Priority Date | 
| 2021-09-14 | ’034 Patent Issue Date | 
| 2022-11-29 | ’007 Patent Issue Date | 
| 2023-10-01 | Earliest alleged infringement date for ’254, ’492, and ’007 Patents | 
| 2025-10-03 | Complaint Filing Date | 
II. Technology and Patent(s)-in-Suit Analysis
U.S. Patent No. 9,697,254 - "Graph Traversal Operator Inside a Column Store," issued July 4, 2017
The Invention Explained
- Problem Addressed: The patent describes the inefficiency of conventional graph traversal techniques, which could suffer from high latency and resource usage, particularly when retrieving data from memory-centric databases (Compl. ¶ 27).
- The Patented Solution: The invention proposes a method for improved graph traversal that utilizes specific data structures, notably a "column-oriented edge table," within a memory-centric database. The method employs a combination of techniques, including recursive edge scanning, predicate-based scan reduction, and directionality-based filtering to enhance performance over traditional row-based or unfiltered traversals (’254 Patent, col. 3:4-5:4; Compl. ¶ 27). This approach allows for refining and restricting column scans to specific areas of the graph, which in turn enables parallel processing on multi-core systems (’254 Patent, col. 9:65-10:3).
- Technical Importance: The claimed method is presented as making a computer system operate more efficiently by enabling recursive graph traversals with improved performance and reduced computational cost (Compl. ¶ 28).
Key Claims at a Glance
- The complaint asserts at least independent Claim 1 (Compl. ¶ 51).
- The essential elements of Claim 1 include:- Receiving an input parameter with a set of path step descriptions.
- Recursively traversing a column-oriented edge table in a memory-centric database.
- This traversal comprises several sub-steps:- Selecting a path step description.
- Extracting a path predicate from it.
- Evaluating the predicate against the edge table to generate a set of valid edges, which reduces a scan range.
- Determining a scan direction based on the path step description.
- Generating a set of traversed vertices by scanning the valid edges.
 
- Returning the set of traversed vertices visited during the traversal.
 
- The complaint does not explicitly reserve the right to assert dependent claims.
U.S. Patent No. 8,996,492 - "Graph Traversal Operator Inside a Column Store," issued March 31, 2015
The Invention Explained
- Problem Addressed: The patent aims to overcome the performance limitations of prior graph traversal methods, such as traditional row-based or unfiltered traversals, which were inefficient in terms of cache usage, memory bandwidth, and latency (’492 Patent, col. 2:63-4:60; Compl. ¶ 30).
- The Patented Solution: The invention describes a method that improves graph traversal by storing the data graph's edge table in a column-oriented format within a cache memory. The method recursively traverses this table based on input parameters, using a path predicate to generate a set of valid edges, which reduces the scan range. The scan direction is determined, and traversal continues until a terminating condition is met (’492 Patent, Fig. 5; Compl. ¶ 30). This architecture is designed to improve cache efficiency and enable parallel execution across multiple processor cores (’492 Patent, col. 9:47-52).
- Technical Importance: The patented invention is described as enabling a computer system to perform recursive graph traversals with higher efficiency, reduced latency, and lower computational cost compared to conventional techniques (Compl. ¶ 31).
Key Claims at a Glance
- The complaint asserts at least independent Claim 1 (Compl. ¶ 91).
- The essential elements of Claim 1 include:- Receiving an input parameter with path step descriptions (setting criteria for traversal) and a set of start vertices.
- Recursively traversing an edge table in a data graph that is stored in a column-oriented table in a cache memory.
- This traversal comprises several sub-steps:- Identifying a path predicate from a path step description.
- Generating a set of valid edges based on the predicate, reducing a scan range.
- Determining a scan direction (source or target column).
- Generating traversed vertices by scanning valid edges against a set of vertices until a terminating condition is met.
- Terminating the generation when the condition is met.
 
- Returning the set of traversed vertices.
 
- The complaint does not explicitly reserve the right to assert dependent claims.
U.S. Patent No. 11,120,034 - "Automatic Routing of Connection Requests in Business Intelligence (BI) Tools," issued September 14, 2021
- Technology Synopsis: The patent addresses problems associated with conventional Business Intelligence (BI) tools, such as the complexity of "thick-client" installations, duplicated database drivers, and inconsistent software versions (Compl. ¶ 33; ’034 Patent, col. 2:7-3:23). The patented solution describes a system where a BI tool connects to a central BI platform using a middleware architecture, and the platform's integrated connection server centrally manages and retrieves the appropriate database coupling components (e.g., drivers), thereby reducing client-side complexity and improving consistency (Compl. ¶ 34).
- Asserted Claims: Independent Claim 9 (Compl. ¶ 140).
- Accused Features: The complaint accuses the Celonis Platform's user interface, which is allegedly adapted to perform a data integration workflow, and its integration with the Celonis Execution Management System ("EMS") platform (Compl. ¶ 138).
U.S. Patent No. 11,514,007 - "Dynamic Data Processing For a Semantic Data Storage Architecture," issued November 29, 2022
- Technology Synopsis: The patent targets the rigidity of conventional data systems that rely on static, predefined schemas for data ingestion (Compl. ¶ 37). It proposes a dual-storage architecture within a "semantic data store," comprising both a "raw storage portion" and a "curated storage portion" (’007 Patent, col. 1:33-55). The method involves receiving data, storing it first in the raw portion, updating a semantic index, automatically transforming the data's schema into a normalized form, and then storing the transformed data in the curated portion, enabling a flexible, real-time processing pipeline (Compl. ¶¶ 37, 39).
- Asserted Claims: Independent Claim 8 (Compl. ¶ 173).
- Accused Features: The complaint accuses the Celonis Object-Centric process mining system, which implements the Object-Centric Data Model (OCDM) and stores data in "data pools" (Compl. ¶ 166).
III. The Accused Instrumentality
Product Identification
- The complaint identifies the accused instrumentality as the Celonis Platform software and its various components (Compl. ¶¶ 42, 83, 128, 166). Specific features named include the Celonis PQL (Process Query Language) Engine, the Object Link feature, the LINK_PATH operator, the data integration workflow, the Execution Management System (EMS) platform, and the Object-Centric Data Model (OCDM) (Compl. ¶¶ 42, 138, 166).
Functionality and Market Context
- The Celonis Platform is a process mining software that enables companies to analyze log data from their information systems (such as ERP systems) to discover, validate, and improve business processes (Compl. ¶ 14). The Object Link feature is described as a framework to model and analyze data flows as a graph, using "dedicated mapping tables" to define relationships (Compl. ¶ 43). The complaint alleges that the PQL Engine is an "analytical column-store main memory database system" that executes queries on this graph data (Compl. ¶ 52). A screenshot of the syntax for the accused "LINK_PATH" operator is provided to illustrate how users are instructed to define traversal parameters (Compl. p. 15). The data integration workflow is alleged to allow users to create "data pools," connect to various data sources, and perform data extraction and transformation (Compl. ¶¶ 129, 130). A visual diagram from Celonis's documentation shows the stages of this workflow, including "Creating data pools," "Connecting data sources," and "Extracting and transforming data" (Compl. p. 42).
IV. Analysis of Infringement Allegations
’254 Patent Infringement Allegations
| Claim Element (from Independent Claim 1) | Alleged Infringing Functionality | Complaint Citation | Patent Citation | 
|---|---|---|---|
| receiving, by at least one processor, an input parameter, wherein the input parameter includes a set of path step descriptions | The PQL Engine receives input parameters for the LINK_PATH operator through syntax that includes arguments such as directionand clauses likeCONSTRAINED BY, which allegedly function as path step descriptions. | ¶¶55-58 | col. 13:18-20 | 
| recursively traversing an edge table for a data graph | The PQL Engine is alleged to recursively traverse a data graph built from "dedicated mapping tables," which are alleged to function as the edge table. | ¶¶59-60 | col. 13:21-21 | 
| wherein the edge table is a column oriented table in the memory-centric database, and the traversing identifies a set of traversed vertices | The Celonis PQL Engine is described as an "analytical column-store main memory database system." The output of the LINK_PATH operator is alleged to be a set of traversed objects (vertices). A diagram shows how mapping tables connect data from different source tables (Compl. p. 16). | ¶¶62-65 | col. 13:21-24 | 
| selecting a path step description from the set of path step descriptions | Upon execution, the PQL Engine selects arguments provided in the LINK_PATH syntax (e.g., direction,START,END) to process the traversal. | ¶¶66-67 | col. 13:25-26 | 
| extracting a path predicate from the selected path step description | The parser of the PQL Engine allegedly parses the CONSTRAINED BYclause to extract predicate expressions likeALLbefore evaluation. | ¶¶68-69 | col. 13:27-28 | 
| evaluating the extracted path predicate against the edge table, wherein the evaluation generates a set of valid edges, and the set of valid edges reduces a scan range during traversing | The CONSTRAINED BYconstraints are allegedly evaluated at the edge level to "control the traversal" and "limit the result," thereby generating valid edges and reducing the scan range. | ¶¶71-73 | col. 13:29-32 | 
| determining a direction for scanning the set of valid edges based on the selected path step description | The LINK_PATH operator's directionparameter (e.g., FORWARDS or BACKWARDS) is used by the PQL Engine to determine the scan direction. | ¶¶74-75 | col. 13:33-34 | 
| generating the set of traversed vertices by scanning the set of valid edges using the determined direction | The PQL Engine allegedly generates a set of traversed vertices by scanning the valid edges, with the output of LINK_PATH being a column containing all objects from the calculated paths. | ¶¶76-77 | col. 13:36-37 | 
| returning the set of traversed vertices, wherein the set of traversed vertices are a set of vertices visited during the traversing | The LINK_PATH operator is alleged to generate and return a table of traversal activity representing "individual paths calculated by traversing the Object Link graph," which constitutes the set of visited vertices. A diagram illustrates the generated activity and case tables (Compl. p. 23). | ¶¶78-79 | col. 13:38-40 | 
’492 Patent Infringement Allegations
| Claim Element (from Independent Claim 1) | Alleged Infringing Functionality | Complaint Citation | Patent Citation | 
|---|---|---|---|
| receiving an input parameter, wherein the input parameter includes at least a set of path step descriptions that set criteria for a data graph traversal and a set of start vertices | The LINK_PATH operator receives parameters including the STARTargument (alleged set of start vertices) and theALLargument (alleged criteria for traversal) within theCONSTRAINED BYclause. | ¶¶97-100 | col. 12:59-62 | 
| recursively traversing an edge table in a data graph that is stored in a column oriented table in a cache memory, based on the input parameter | The PQL Engine recursively traverses "mapping tables" (alleged edge table) and is described as a column-store system that achieves "good cache locality," allegedly satisfying the cache memory requirement. | ¶¶101-103 | col. 12:63-65 | 
| identifying a path predicate included in a path step description | The CONSTRAINED BYclause or theALLexpression within it is alleged to be the path predicate identified from the path step description. | ¶¶107-108 | col. 13:1-2 | 
| generating a set of valid edges based on the path predicate, wherein the set of valid edges reduces a scan range during the traversing | The ALLconstraint allegedly limits valid edges based on the predicate expression, and avoiding objects via this constraint is alleged to reduce the scan range. | ¶¶111-112 | col. 13:3-5 | 
| determining a direction for scanning the set of valid edges, based on the path set description, wherein the direction determines whether the scan begins at a vertex source column or a vertex target column in the edge table | The directionparameter (FORWARDS/BACKWARDS) allegedly determines whether the scan begins at a source or target object (vertex), which are represented as columns in the mapping table. | ¶¶113-116 | col. 13:6-10 | 
| generating the set of traversed vertices by scanning the set of valid edges against a set of vertices in the edge table until at least one terminating condition is met... | The scan of valid edges against vertices allegedly continues until an ENDconstraint is met, which is alleged to be a terminating condition. | ¶¶117-118 | col. 13:14-16 | 
| terminating the generating of the set of traversed vertices when the at least one terminating condition is met | Traversal allegedly terminates when the end_objects_expressionspecified in theENDparameter is reached. | ¶¶120-121 | col. 13:17-18 | 
| returning the set of traversed vertices | The output of the LINK_PATH operator is alleged to be "a column containing all objects of all calculated paths," which constitutes the returned set of traversed vertices. | ¶¶123-124 | col. 13:20-20 | 
Identified Points of Contention
- Scope Questions: The analysis for the ’254 and ’492 patents may raise the question of whether Celonis's "Object Link" framework, which models relationships between abstract "objects" using "mapping tables," falls within the scope of the claimed "edge table for a data graph." A further question is whether the PQL Engine, described as a "main memory database," meets the specific limitations of a "memory-centric database" (’254 Patent) or "cache memory" (’492 Patent) as those terms are used in the patents.
- Technical Questions: A key technical question will be whether the functions performed by Celonis's "CONSTRAINED BY" clause and its arguments (e.g., ALL,START,END) are functionally equivalent to the claimed steps of "extracting a path predicate" and "evaluating" it to "reduce a scan range." The dispute may focus on whether Celonis's filtering mechanism operates in the specific manner required by the claims or if there is a fundamental difference in its technical operation.
V. Key Claim Terms for Construction
For the ’254 and ’492 Patents:
- The Term: "column oriented table" - Context and Importance: This term is foundational to the data structure recited in the asserted claims of both lead patents. The infringement case hinges on whether the "dedicated mapping tables" used by Celonis's PQL Engine (Compl. ¶ 60) qualify as a "column oriented table." Practitioners may focus on this term because Celonis is described as having a "column-store main memory database system" (Compl. ¶ 64), but the specific structure of its "mapping tables" will be scrutinized against the patent's definition.
- Intrinsic Evidence for Interpretation:- Evidence for a Broader Interpretation: The specifications note that column-oriented data storage improves efficiency and speeds up data transfer, suggesting the term could encompass any data structure providing these functional benefits (’492 Patent, col. 4:20-25).
- Evidence for a Narrower Interpretation: The patents provide specific examples of an "edge table" with Vsource,Vtarget, andEtypecolumns (’492 Patent, Fig. 2B). A defendant may argue that these specific embodiments define and limit the scope of what constitutes the claimed "column oriented table."
 
 
- The Term: "path predicate" - Context and Importance: Plaintiff’s infringement theory maps Celonis's "CONSTRAINED BY" clause and its ALLexpression to this claim term (Compl. ¶¶ 69, 108). The construction of "path predicate" will be critical in determining whether the filtering and traversal control functions in the accused product perform the claimed steps.
- Intrinsic Evidence for Interpretation:- Evidence for a Broader Interpretation: The specification of the ’492 patent describes the edge predicate as an "arbitrary complex relational expression which is evaluated... during the graph traversal to reduce the number of edges that require evaluation" (’492 Patent, col. 5:65-6:4). This language could support a broad definition covering various types of filtering logic.
- Evidence for a Narrower Interpretation: The context of the algorithm described in the patents (e.g., Algorithm 1 in Fig. 3 of the ’492 Patent) shows the predicate being applied at a specific step (E_v <- Filter(P_i.pred)) to generate a set of valid edges. A defendant may argue that this specific operational context limits the term to predicates that function in this exact manner, potentially distinguishing it from Celonis's implementation.
 
 
- Context and Importance: Plaintiff’s infringement theory maps Celonis's "CONSTRAINED BY" clause and its 
VI. Other Allegations
Indirect Infringement
- The complaint alleges both induced and contributory infringement for all four patents-in-suit. The inducement allegations are based on Defendant’s user documentation, online training materials provided via the "Celonis Academy," and other instructions that allegedly encourage and guide end-users to operate the Celonis Platform in an infringing manner (Compl. ¶¶ 47, 53, 54, 87, 136). The contributory infringement allegations assert that accused components like Celonis Object Link are non-staple articles of commerce, are not suitable for substantial non-infringing use, and embody a material part of the inventions (Compl. ¶¶ 48, 88, 137).
Willful Infringement
- The complaint does not include a specific count for willful infringement or plead facts suggesting pre-suit knowledge of the patents. For each asserted patent, the complaint alleges that Defendants have known of the patent "at least since the service of the present Complaint" (Compl. ¶¶ 47, 87, 136, 169). This framing suggests a potential basis for alleging post-filing willful infringement but does not establish a basis for pre-suit willfulness.
VII. Analyst’s Conclusion: Key Questions for the Case
- A core issue will be one of architectural mapping: Does the Celonis Platform's "Object Link" framework, with its PQL Engine operating on "mapping tables," embody the claimed architecture of a "graph traversal operator" that recursively traverses a "column oriented edge table" stored in "cache memory" or a "memory-centric database"? The resolution will depend on how these claim terms are construed in light of the accused product's specific implementation.
- A second key question will be one of functional correspondence: Do the filtering mechanisms within Celonis's "LINK_PATH" operator, such as the "CONSTRAINED BY" clause, perform the specific, ordered functions required by the asserted claims—namely, "extracting a path predicate" and "evaluating" it to generate "valid edges" that "reduce a scan range"—or is there a material difference in their technical operation?
- For the ’034 and ’007 patents, a central question will concern system-level equivalence: Does the interaction between the Celonis Platform's user interface and its backend Execution Management System (EMS) constitute the "BI platform" with an integrated "connection server" and "middleware architecture" as claimed in the ’034 patent? Similarly, does the Celonis Object-Centric Data Model's use of "data pools" for ingestion and transformation map onto the claimed "semantic data store" with distinct "raw" and "curated" storage portions as required by the ’007 patent?