# US 2021/0279263 A1 · Data Update System and Method

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2021/0279263 A1
- Document ID: US20210279263A1
- Status: Published application
- Kind: A1
- Application number: 17/186,151
- Filed: 2021-02-26
- Published: 2021-09-09
- Earliest claimed: 2020-03-04
- Assignees: Ontology-Partners Ltd.
- Applicants: Ontology-Partners Limited
- Inventors: John PUGH; David PECOLLET; Chris WOOD
- Web page: https://patentgrep.com/patent/US20210279263A1

## CPC

- G06F 16/287: {Visualization; Browsing}
- G06F 16/9024: {Graphs; Linked lists (G06F16/9027 takes precedence)}
- G06F 16/23: Updating
- G06F 16/24564: {Applying rules; Deductive queries}
- G06F 16/288: {Entity relationship models}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A computer-implemented method includes receiving one or more update requests; identifying, a set of foundational relationships for deletion from a graph database; inferring, using one or more relationship inference rules, a set of inferred relationships for deletion from the graph database; and deleting, from the graph database, the set of foundational relationships for deletion and the set of inferred relationships for deletion. Inferring the set of inferred relationships for deletion includes searching for relationships in the set of foundational relationships for deletion that match a relationship specified in a precondition of at least one of the one or more relationship inference rules; determining whether the precondition is satisfiable using at least one of the matching relationships; and, in response to the precondition being satisfiable, inferring at least one of the relationships of the set of inferred relationships for deletion using at least one of the matching relationships.

## Claims

### Claim 1

A computer-implemented method comprising:
receiving one or more update requests;
identifying, based on the one or more update requests, a set of foundational relationships for deletion from a graph database;
inferring, using one or more relationship inference rules, a set of inferred relationships for deletion from the graph database based on the set of foundational relationships for deletion, comprising:
searching for relationships in the set of foundational relationships for deletion that match a relationship specified in a precondition of at least one of the one or more relationship inference rules;
determining whether the precondition is satisfiable using at least one of the matching relationships; and
in response to the precondition being satisfiable, inferring at least one of the relationships of the set of inferred relationships for deletion using at least one of the matching relationships; and
deleting, from the graph database, a set of relationships for deletion comprising the set of foundational relationships for deletion and the set of inferred relationships for deletion.

### Claim 2 (depends on 1)

The method of claim 1, wherein determining whether the precondition is satisfiable using at least one of the matching relationships comprises:
pre-binding one or more variables in the precondition to one or more nodes connected by the at least one of the matching relationships.

### Claim 3 (depends on 2)

The method of claim 2, wherein determining whether the precondition is satisfiable further comprises:
determining whether one or more remaining relationships specified in the precondition are satisfiable using one or more relationships stored in the graph database.

### Claim 4 (depends on 1)

The method of claim 1, comprising:
identifying, based on the one or more update requests, a set of foundational relationships for storing to the graph database; and
inferring, using one or more relationship inference rules, a set of inferred relationships for storing to the graph database based on the set of foundational relationships for storing; and
storing, to the graph database, a set of relationships for storing comprising the set of foundational relationships for storing and the set of inferred relationships for storing.

### Claim 5 (depends on 4)

The method of claim 4, wherein inferring the set of inferred relationships for storing comprises:
searching for relationships in the set of foundational relationships for storing that match a relationship specified in a precondition of at least one of the one or more relationship inference rules;
determining whether the precondition is satisfiable using at least the matching relationship; and
in response to the precondition being satisfiable, inferring at least one of the relationships of the set of inferred relationships for storing using at least the matching relationship.

### Claim 6 (depends on 4)

The method of claim 4, wherein inferring the set of inferred relationships for storing comprises:
setting a storing working set of relationships to the set of foundational relationships for storing to the graph database;
while the storing working set of relationships contains at least one relationship:
initializing a new storing working set of relationships;
for each relationship inference rule of the one or more relationship inference rules:
searching for relationships in the storing working set of relationships that match a relationship specified in a precondition of the relationship inference rule;
for each matching relationship:
determining whether the precondition is satisfiable using at least the matching relationship;
in response to the precondition being satisfiable:
infer one or more relationships using the relationship inference rule; and
updating the new storing working set of relationships based on the inferred one or more relationships; and
setting the storing working set of relationships based on the new storing working set of relationships.

### Claim 7 (depends on 1)

The method of claim 1, wherein inferring the set of inferred relationships for deletion comprises:
setting a deletion working set of relationships to the set of foundational relationships for deleting from the graph database;
while the deletion working set of relationships contains at least one relationship:
initializing a new deletion working set of relationships;
for each relationship inference rule of the one or more relationship inference rules:
searching for relationships in the deletion working set of relationships that match a relationship specified in a precondition of the relationship inference rule;
for each matching relationship:
determining whether the precondition is satisfiable using at least the matching relationship;
in response to the precondition being satisfiable:
infer one or more relationships using the relationship inference rule; and
updating the new deletion working set of relationships based on the inferred one or more relationships; and
setting the deletion working set of relationships based on the new deletion working set of relationships.

### Claim 8 (depends on 6, 7)

The method of claim 7 when dependent on claim 6, wherein inferring one or more relationships using the relationship inference rule comprises:
inferring a set of pre-update inferred relationships based on foundational relationships stored in the graph database and/or relationships inferred therefrom; and
inferring a set of post-update inferred relationships based on the difference between foundational relationships stored in the graph database and the set of foundational relationships for deleting, the set of foundational relationships for storing and/or relationships inferred therefrom.

### Claim 9 (depends on 8)

The method of claim 8, wherein updating the new storing working set of relationships comprises adding, to the new storing working set of relationships, a difference between the set of post-update inferred relationships and the set of pre-update inferred relationships.

### Claim 10 (depends on 8)

The method of claim 8, wherein updating the new deletion working set of relationships comprises adding, to the new deletion working set of relationships, a difference between the set of pre-update inferred relationships and the set of post-update inferred relationships.

### Claim 11 (depends on 1)

The method of claim 1, wherein the graph database is a triplestore.

### Claim 12 (depends on 1)

The method of claim 1, wherein at least one of the one or more update requests is received in response to a change in the state of a network.

### Claim 13 (depends on 12)

The method of claim 12, wherein the change in the state of the network comprises a network disconnection between two devices, and the set of foundation relationships for deletion comprises a relationship representing the network connection between the two devices, optionally wherein the set of inferred relationships for deletion comprises one or more relationships representing one or more network connections between devices transitively connected by the network connection between the two devices.

### Claim 14

A processing device comprising
one or more processors and memory storing instructions that, when executed, cause the one or more processors to:
receive one or more update requests;
identify, based on the one or more update requests, a set of foundational relationships for deletion from a graph database;
infer, using one or more relationship inference rules, a set of inferred relationships for deletion from the graph database based on the set of foundational relationships for deletion, comprising:
searching for relationships in the set of foundational relationships for deletion that match a relationship specified in a precondition of at least one of the one or more relationship inference rules;
determining whether the precondition is satisfiable using at least one of the matching relationships; and
in response to the precondition being satisfiable, inferring at least one of the relationships of the set of inferred relationships for deletion using at least one of the matching relationships; and
deleting, from the graph database, a set of relationships for deletion comprising the set of foundational relationships for deletion and the set of inferred relationships for deletion

### Claim 15

A non-transitory computer-readable medium having instructions stored thereon for programming a processing device to perform the steps of:
receiving one or more update requests;
identifying, based on the one or more update requests, a set of foundational relationships for deletion from a graph database;
inferring, using one or more relationship inference rules, a set of inferred relationships for deletion from the graph database based on the set of foundational relationships for deletion, comprising:
searching for relationships in the set of foundational relationships for deletion that match a relationship specified in a precondition of at least one of the one or more relationship inference rules;
determining whether the precondition is satisfiable using at least one of the matching relationships; and
in response to the precondition being satisfiable, inferring at least one of the relationships of the set of inferred relationships for deletion using at least one of the matching relationships; and
deleting, from the graph database, a set of relationships for deletion comprising the set of foundational relationships for deletion and the set of inferred relationships for deletion.

### Claim 16 (depends on 15)

The non-transitory computer-readable medium of claim 15, wherein determining whether the precondition is satisfiable using at least one of the matching relationships comprises:
pre-binding one or more variables in the precondition to one or more nodes connected by the at least one of the matching relationships.

### Claim 17 (depends on 15)

The non-transitory computer-readable medium of claim 15, wherein the steps further include:
identifying, based on the one or more update requests, a set of foundational relationships for storing to the graph database; and
inferring, using one or more relationship inference rules, a set of inferred relationships for storing to the graph database based on the set of foundational relationships for storing; and
storing, to the graph database, a set of relationships for storing comprising the set of foundational relationships for storing and the set of inferred relationships for storing.

### Claim 18 (depends on 15)

The non-transitory computer-readable medium of claim 15, wherein inferring the set of inferred relationships for deletion comprises:
setting a deletion working set of relationships to the set of foundational relationships for deleting from the graph database;
while the deletion working set of relationships contains at least one relationship:
initializing a new deletion working set of relationships;
for each relationship inference rule of the one or more relationship inference rules:
searching for relationships in the deletion working set of relationships that match a relationship specified in a precondition of the relationship inference rule;
for each matching relationship:
determining whether the precondition is satisfiable using at least the matching relationship;
in response to the precondition being satisfiable:
infer one or more relationships using the relationship inference rule; and
updating the new deletion working set of relationships based on the inferred one or more relationships; and
setting the deletion working set of relationships based on the new deletion working set of relationships.

### Claim 19 (depends on 15)

The non-transitory computer-readable medium of claim 15, wherein the graph database is a triplestore.

### Claim 20 (depends on 15)

The non-transitory computer-readable medium of claim 15, wherein at least one of the one or more update requests is received in response to a change in the state of a network.
