# US 2021/0240935 A1 · Management of a focused information sharing dialogue based on discourse trees

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

- Number: US 2021/0240935 A1
- Document ID: US20210240935A1
- Status: Published application
- Kind: A1
- Application number: 17/235,329
- Filed: 2021-04-20
- Published: 2021-08-05
- Earliest claimed: 2017-09-28
- Assignees: Oracle International Corporation
- Applicants: Oracle International Corporation
- Inventors: Boris Galitsky
- Web page: https://patentgrep.com/patent/US20210240935A1

## CPC

- G06F 40/295: Named entity recognition
- G06F 16/00: Information retrieval; Database structures therefor; File system structures therefor
- G06F 16/9014: {hash tables}
- G06F 16/90332: {Natural language query formulation or dialogue systems}
- G06F 40/211: Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
- G06F 40/253: Grammatical analysis; Style critique
- G06F 40/289: Phrasal analysis, e.g. finite state techniques or chunking
- G06F 40/30: Semantic analysis
- G06F 40/35: Discourse or dialogue representation
- G06N 5/01: Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
- G06N 5/022: Knowledge engineering; Knowledge acquisition
- G06N 5/041: {Abduction}
- G06N 20/00: Machine learning
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS

## Abstract

Disclosed techniques relate to managing a dialogue between a user device and an autonomous agent. For instance, a computing device creates a discourse tree from a body of text that includes fragments. The discourse tree includes a root node, nonterminal nodes, and terminal nodes. Each nonterminal node represents a rhetorical relationship between two of the fragments and each terminal node is associated with one of the fragments. The computing device determines a main topic of the body of text from the discourse tree. The computing device provides the main topic to the user device, and in response, receives a user utterance. The computing device determines an intent from the user utterance and navigates the discourse tree to locate relevant information consistent with the intent.

## Claims

### Claim 1

A computer-implemented method for navigating text using discourse trees, the method comprising:
creating a discourse tree from text comprising fragments, wherein the discourse tree comprises a root node, nonterminal nodes, and terminal nodes, each nonterminal node representing a rhetorical relationship between two of the fragments, and each terminal node is associated with one of the fragments, wherein the fragments are elementary discourse units;
determining, from the discourse tree, a subset of terminal nodes that are (i) associated with a nonterminal node representing a rhetorical relationship of type elaboration and (ii) associated with a nucleus elementary discourse unit of the elaboration;
calculating, for each node of the subset of terminal nodes, a respective path length from the root node;
identifying, from the subset of terminal nodes, a topic node having a path length that is a smallest path length of the path lengths;
determining, from the topic node, a topic of the discourse tree by extracting a noun phrase from the nucleus elementary discourse unit associated with the topic node; and
providing the topic to a user device.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
identifying, in the discourse tree, a satellite elementary discourse unit associated with the topic node via the rhetorical relationship of type elaboration; and
providing text associated with the satellite elementary discourse unit to the user device.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
identifying, in the discourse tree, an additional terminal node from the subset of terminal nodes, the additional terminal node having an additional path length equal to or greater than the path length;
extracting additional text from an additional nucleus elementary discourse unit associated with the additional terminal node; and
providing the additional text to the user device.

### Claim 4 (depends on 1)

The method of claim 1, further comprising:
navigating, in the discourse tree, to an additional non-terminal node that is connected to the topic node and represents an additional rhetorical relation;
determining, from the additional non-terminal node, an additional topic by extracting an additional noun phrase from an additional nucleus elementary discourse unit associated with additional non-terminal node; and
responsive to determining that the additional rhetorical relation is one of type elaboration, condition, or temporal sequence:
extracting additional text from the additional nucleus elementary discourse unit; and
providing the additional text to the user device.

### Claim 5 (depends on 1)

The method of claim 1, further comprising:
receiving, from the user device, an utterance;
determining that the utterance indicates familiarity with additional topic;
identifying, in the discourse tree, an additional non-terminal node that comprises text representing the additional topic and represents an additional rhetorical relation;
responsive to determining that the additional rhetorical relation is one of type elaboration, condition, or contrast:
extracting additional text from an elementary discourse unit associated with a terminal node that is connected to the additional terminal node; and
providing the additional text to the user device.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
receiving, from the user device, an utterance;
determining that the utterance comprises a confirmation of an interest in an additional topic;
identifying, in the discourse tree, an additional non-terminal node that comprises text representing the additional topic and represents an additional rhetorical relation;
extracting additional text from an elementary discourse unit associated with a terminal node that is connected to the additional non-terminal node; and
providing the additional text to the user device.

### Claim 7 (depends on 1)

The method of claim 1, further comprising:
receiving, from the user device, an utterance;
determining that the utterance comprises a request for additional details related to the topic; and
responsive to the determining:
identifying, in the discourse tree, a parent node directly connected to the topic node;
identifying, in the discourse tree, an additional terminal node that is related to the parent node via a rhetorical relation of type elaboration;
extracting additional text from an elementary discourse unit associated with the additional terminal node; and
providing the additional text to the user device.

### Claim 8 (depends on 1)

The method of claim 1, further comprising:
receiving, from the user device, an utterance;
determining that the utterance comprises a question that is unrelated to the topic; and
responsive to the determining:
identifying one or more keywords from the utterance;
identifying an additional text by providing a query comprising the keywords to a search engine; and
providing text from one or more elementary discourse units of the additional text to the user device.

### Claim 9 (depends on 1)

The method of claim 1, further comprising:
forming, from the discourse tree, a communicative discourse tree that represents the text by matching each fragment that has a verb to a respective verb signature;
identifying, from the communicative discourse tree, a verb signature that corresponds to the topic node;
extracting a subject from the verb signature; and
providing the subject to the user device.

### Claim 10

A system comprising:
a non-transitory computer-readable medium storing computer-executable program instructions; and
a processing device communicatively coupled to the non-transitory computer-readable medium for executing the computer-executable program instructions, wherein executing the computer-executable program instructions configures the processing device to perform operations comprising:
creating a discourse tree from text comprising fragments, wherein the discourse tree comprises a root node, nonterminal nodes, and terminal nodes, each nonterminal node representing a rhetorical relationship between two of the fragments, and each terminal node is associated with one of the fragments, wherein the fragments are elementary discourse units;
determining, from the discourse tree, a subset of terminal nodes that are (i) associated with a nonterminal node representing a rhetorical relationship of type elaboration and (ii) associated with a nucleus elementary discourse unit of the elaboration;
calculating, for each node of the subset of terminal nodes, a respective path length from the root node;
identifying, from the subset of terminal nodes, a topic node having a path length that is a smallest path length of the path lengths;
determining, from the topic node, a topic of the discourse tree by extracting a noun phrase from the nucleus elementary discourse unit associated with the topic node; and
providing the topic to a user device.

### Claim 11 (depends on 10)

The system of claim 10, wherein the operations further comprise:
identifying, in the discourse tree, a satellite elementary discourse unit associated with the topic node via the rhetorical relationship of type elaboration; and
providing text associated with the satellite elementary discourse unit to the user device.

### Claim 12 (depends on 10)

The system of claim 10, wherein the operations further comprise:
identifying, in the discourse tree, an additional terminal node from the subset of terminal nodes, the additional terminal node having an additional path length equal to or greater than the path length;
extracting additional text from an additional nucleus elementary discourse unit associated with the additional terminal node; and
providing the additional text to the user device.

### Claim 13 (depends on 10)

The system of claim 10, wherein the operations further comprise:
navigating, in the discourse tree, to an additional non-terminal node that is connected to the topic node and represents an additional rhetorical relation;
determining, from the additional non-terminal node, an additional topic by extracting an additional noun phrase from a nucleus elementary discourse unit associated with additional non-terminal node; and
responsive to determining that the additional rhetorical relation is one of type elaboration, condition, or temporal sequence:
extracting additional text from the additional nucleus elementary discourse unit; and
providing the additional text to the user device.

### Claim 14 (depends on 10)

The system of claim 10, wherein the operations further comprise:
receiving, from the user device, an utterance;
determining that the utterance indicates familiarity with additional topic;
identifying, in the discourse tree, an additional non-terminal node that comprises text representing the additional topic and represents an additional rhetorical relation;
responsive to determining that the additional rhetorical relation is one of type elaboration, condition, or contrast:
extracting additional text from an elementary discourse unit associated with a terminal node that is connected to the additional non-terminal node; and
providing the additional text to the user device.

### Claim 15 (depends on 10)

The system of claim 10, wherein the operations further comprise:
receiving, from the user device, an utterance;
determining that the utterance comprises a confirmation of an interest in an additional topic;
identifying, in the discourse tree, an additional non-terminal node that comprises text representing the additional topic and represents an additional rhetorical relation;
extracting additional text from an elementary discourse unit associated with a terminal node that is connected to the additional non-terminal node; and
providing the additional text to the user device.

### Claim 16 (depends on 10)

The system of claim 10, wherein the operations further comprise:
forming, from the discourse tree, a communicative discourse tree that represents the text by matching each fragment that has a verb to a respective verb signature;
identifying, from the communicative discourse tree, a verb signature that corresponds to the topic node;
extracting a subject from the verb signature; and
providing the subject to the user device.

### Claim 17

A non-transitory computer-readable medium storing computer-executable program instructions that when executed by a processor, perform operations comprising:
creating a discourse tree from text comprising fragments, wherein the discourse tree comprises a root node, nonterminal nodes, and terminal nodes, each nonterminal node representing a rhetorical relationship between two of the fragments, and each terminal node is associated with one of the fragments, wherein the fragments are elementary discourse units;
determining, from the discourse tree, a subset of terminal nodes that are (i) associated with a nonterminal node representing a rhetorical relationship of type elaboration and (ii) associated with a nucleus elementary discourse unit of the elaboration;
calculating, for each node of the subset of terminal nodes, a respective path length from the root node;
identifying, from the subset of terminal nodes, a topic node having a path length that is a smallest path length of the path lengths;
determining, from the topic node, a topic of the discourse tree by extracting a noun phrase from the nucleus elementary discourse unit associated with the topic node; and
providing the topic to a user device.

### Claim 18 (depends on 17)

The non-transitory computer-readable medium of claim 17, wherein the operations further comprise:
navigating, in the discourse tree, to an additional non-terminal node that is connected to the topic node and represents an additional rhetorical relation;
determining, from the additional non-terminal node, an additional topic by extracting an additional noun phrase from a nucleus elementary discourse unit associated with additional non-terminal node; and
responsive to determining that the additional rhetorical relation is one of type elaboration, condition, or temporal sequence:
extracting additional text from the additional nucleus elementary discourse unit; and
providing the additional text to the user device.

### Claim 19 (depends on 17)

The non-transitory computer-readable medium of claim 17, wherein the operations further comprise:
receiving, from the user device, an utterance;
determining that the utterance indicates familiarity with additional topic;
identifying, in the discourse tree, an additional non-terminal node that comprises text representing the additional topic and represents an additional rhetorical relation;
responsive to determining that the additional rhetorical relation is one of type elaboration, condition, or contrast:
extracting additional text from an elementary discourse unit associated with a terminal node that is connected to the additional non-terminal node; and
providing the additional text to the user device.

### Claim 20 (depends on 17)

The non-transitory computer-readable medium of claim 17, wherein the operations further comprise:
receiving, from the user device, an utterance;
determining that the utterance comprises a confirmation of an interest in an additional topic;
identifying, in the discourse tree, an additional non-terminal node that comprises text representing the additional topic and represents an additional rhetorical relation;
extracting additional text from an elementary discourse unit associated with a terminal node that is connected to the additional non-terminal node; and
providing the additional text to the user device.
