System and method for presenting message threads
First Claim
1. A computer-implemented system for presenting message threads, comprising:
- a memory; and
a processor operatively coupled to the memory and configured to execute computer executable program modules, including;
a grammar module defining a grammar comprising an array of arcs that each span a start state and an end state with each of the arcs associated with a line-group type test;
an analysis module comprising;
a parser module performing a procedural top-down recursive descent of a plurality of messages, comprising parsing features from the plurality of messages, which divide each message into a main body and one or more excerpts, matching each line in each of the main body and the excerpts to the start state and the end state in one of the arcs in the grammar, and evaluating the line-group type test associated with the arc;
an output network module building an output network comprising output network arcs that each correspond to the arcs in the grammar, each output network arc being assigned a cumulative weight that comprises weights assigned by the line-group type tests for the corresponding arcs in the grammar along a partial path through the output network terminating at that arc;
a message tree module creating a message tree comprising the maximally weighted paths in a forward direction through the output network for each of the main body and the excerpts;
a relationship module relating the messages in the message tree comprising, matching the excerpts in the message tree with a source message in the plurality of messages and identifying one or more predecessor message in the plurality of messages for each such main body in the message tree; and
a presentation module collating the source and the predecessor messages as related into a conversational document form.
3 Assignments
0 Petitions
Accused Products
Abstract
A system and method for presenting message threads is provided. A main body and one or more excerpts are parsed from each of a plurality of messages into nodes structured to form a message tree through a procedural top-down recursive descent. The nodes in the message tree are related by determining line-group types for the main body and the excerpts of each message, which are enumerated into partitions for each of the line-group types. An output network of alternative paths through the messages is created based upon the partitions of the message tree. A document is formed from the output network to identify and remove redundant components in each message.
14 Citations
20 Claims
-
1. A computer-implemented system for presenting message threads, comprising:
-
a memory; and a processor operatively coupled to the memory and configured to execute computer executable program modules, including; a grammar module defining a grammar comprising an array of arcs that each span a start state and an end state with each of the arcs associated with a line-group type test; an analysis module comprising; a parser module performing a procedural top-down recursive descent of a plurality of messages, comprising parsing features from the plurality of messages, which divide each message into a main body and one or more excerpts, matching each line in each of the main body and the excerpts to the start state and the end state in one of the arcs in the grammar, and evaluating the line-group type test associated with the arc; an output network module building an output network comprising output network arcs that each correspond to the arcs in the grammar, each output network arc being assigned a cumulative weight that comprises weights assigned by the line-group type tests for the corresponding arcs in the grammar along a partial path through the output network terminating at that arc; a message tree module creating a message tree comprising the maximally weighted paths in a forward direction through the output network for each of the main body and the excerpts; a relationship module relating the messages in the message tree comprising, matching the excerpts in the message tree with a source message in the plurality of messages and identifying one or more predecessor message in the plurality of messages for each such main body in the message tree; and a presentation module collating the source and the predecessor messages as related into a conversational document form. - View Dependent Claims (2, 3, 4)
-
-
5. A computer-implemented method for presenting message threads, comprising:
-
defining a grammar comprising an array of arcs that each span a start state and an end state with each of the arcs associated with a line-group type test; performing a procedural top-down recursive descent of a plurality of messages, comprising; parsing features from the plurality of messages, which divide each message into a main body and one or more excerpts; and matching each line in each of the main body and the excerpts to the start state and the end state in one of the arcs in the grammar and evaluating the line-group type test associated with the arc; building an output network comprising output network arcs that each correspond to the arcs in the grammar, each output network arc being assigned a cumulative weight that comprises weights assigned by the line-group type tests for the corresponding arcs in the grammar along a partial path through the output network terminating at that arc; creating a message tree comprising the maximally weighted paths in a forward direction through the output network for each of the main body and the excerpts; relating the messages in the message tree comprising, matching the excerpts in the message tree with a source message in the plurality of messages and identifying one or more predecessor;
message in the plurality of messages for each such main body in the message tree; andcollating the source and the predecessor messages as related into a conversational document form. - View Dependent Claims (6, 7, 8)
-
-
9. A computer-implemented system for presenting message threads, comprising:
-
a memory; and a processor operatively coupled to the memory and configured to execute computer executable program modules, including; a grammar module defining a grammar comprising an array of arcs that each span a start state and an end state with each of the arcs associated with a procedurally-coded test; a parser module parsing features from a plurality of messages, which divide each message into a main body and one or more excerpts through a procedural top-down recursive descent; a relationship module matching each line in the main body and the excerpts to the start state and the end state in one of the arcs in the grammar and evaluating the procedurally-coded test associated with the arc; a network module creating an output network comprising output network arcs that each correspond to the arcs in the grammar, each output network arc being assigned a cumulative weight that comprises weights assigned by the procedurally-coded tests for the corresponding arcs in the grammar along a partial path through the output network terminating at that arc and creating a message tree comprising the maximally weighted paths in a forward direction through the output network for each of the main body and the excerpts; a relationship module relating the messages in the message tree comprising, matching the excerpts in the message tree with a source message in the plurality of messages and identifying one or more predecessor message in the plurality of messages for each such main body in the message tree; and a presentation module forming a collection of annotations comprised for each of the excerpts either having a matching source message or at least one predecessor message. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. A computer-implemented method for presenting message threads, comprising:
-
defining a grammar comprising an array of arcs that each span a start state and an end state with each of the arcs associated with a procedurally-coded test; parsing features from a plurality of messages, which divide each message into a main body and one or more excerpts through a procedural top-down recursive descent; matching each line in the main body and the excerpts to the start state and the end state in one of the arcs in the grammar and evaluating the procedurally-coded test associated with the arc; creating an output network comprising output network arcs that each correspond to the arcs in the grammar, each output network are being assigned a cumulative weight that comprises weights assigned by the procedurally-coded tests for the corresponding arcs in the grammar along a partial path through the output network terminating at that arc; creating a message tree comprising the maximally weighted paths in a forward direction through the output network for each of the main body and the excerpts; relating the messages in the message tree comprising, matching the excerpts in the message tree with a source message in the plurality of messages and identifying one or more predecessor message in the plurality of messages for each such main body in the message tree; and forming a collection of annotations comprised for each of the excerpts either having a matching source message or at least one predecessor message. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification