Graph optimized message model parser
First Claim
1. A system for parsing a message against a message model, the system comprising:
- a processor, a computer readable memory, and a computer readable storage medium associated with a computer device;
a first set of program instructions configured to;
load a graph optimized message model, the graph optimized message model comprising;
a hierarchical arrangement of a plurality of nodes and a plurality of branches, each branch of the plurality of branches connecting two nodes of plurality of nodes,wherein a first portion of the plurality of branches are common message elements, andwherein a second portion of the plurality of branches are different message element options;
set a current node to a first node within the plurality of nodes of the graph optimized message model, the first node connected to one of the first portion of plurality of branches, and the first node connected to at least two of the second portion of the plurality of branches; and
set a current branch to a first branch of second portion of the plurality of branches, the first branch connecting the first node to a second node of the plurality of nodes of the graph optimized message model;
a second set of program instructions configured to set a return mark in the graph optimized message model at a point corresponding to the current node;
a third set of program instructions configured to parse a message from the return mark against the current branch of the graph optimized message model;
a fourth set of program instructions configured to set the current branch to a second branch of the second portion of the plurality of branches when the message did not successfully parse, the second branch being different than the first branch, the second branch connecting the first node to a new node of the plurality of nodes different than the second node, the new node being at a same level in the hierarchal arrangement as the second node; and
a fifth set of program instructions configured to direct the third set of program instructions to parse the message again from the return mark,wherein the program instructions are stored on the computer readable storage medium for execution by the processor via the computer readable memory; and
the fourth set of program instructions and the fifth set of program instructions are configured to parse the message again at a point of an unsuccessful parse using a different message element option so that parsing does not need to start from the beginning of the message model.
1 Assignment
0 Petitions
Accused Products
Abstract
This invention relates to a system, method and computer program product for parsing a message against a message model, the message mode comprising hierarchical message element options organized into nodes and branches. The method includes: setting, by a computer device, a current node and current branch to a first node and first branch in the message model; setting, by the computer device, a return marker in the message at a point corresponding to the current node; parsing, by the computer device, the message from the return marker against the current branch of the message model; setting, by the computer device, the current branch to a further branch based on the current message model branch being not successfully parsed against the message; and parsing, by the computer device, the message again from the return marker whereby the parsing does not need to start from the beginning of the message model.
-
Citations
9 Claims
-
1. A system for parsing a message against a message model, the system comprising:
-
a processor, a computer readable memory, and a computer readable storage medium associated with a computer device; a first set of program instructions configured to; load a graph optimized message model, the graph optimized message model comprising; a hierarchical arrangement of a plurality of nodes and a plurality of branches, each branch of the plurality of branches connecting two nodes of plurality of nodes, wherein a first portion of the plurality of branches are common message elements, and wherein a second portion of the plurality of branches are different message element options; set a current node to a first node within the plurality of nodes of the graph optimized message model, the first node connected to one of the first portion of plurality of branches, and the first node connected to at least two of the second portion of the plurality of branches; and set a current branch to a first branch of second portion of the plurality of branches, the first branch connecting the first node to a second node of the plurality of nodes of the graph optimized message model; a second set of program instructions configured to set a return mark in the graph optimized message model at a point corresponding to the current node; a third set of program instructions configured to parse a message from the return mark against the current branch of the graph optimized message model; a fourth set of program instructions configured to set the current branch to a second branch of the second portion of the plurality of branches when the message did not successfully parse, the second branch being different than the first branch, the second branch connecting the first node to a new node of the plurality of nodes different than the second node, the new node being at a same level in the hierarchal arrangement as the second node; and a fifth set of program instructions configured to direct the third set of program instructions to parse the message again from the return mark, wherein the program instructions are stored on the computer readable storage medium for execution by the processor via the computer readable memory; and the fourth set of program instructions and the fifth set of program instructions are configured to parse the message again at a point of an unsuccessful parse using a different message element option so that parsing does not need to start from the beginning of the message model. - View Dependent Claims (2, 3)
-
-
4. A computer-implemented method for parsing a message against a message model, the method comprising:
-
obtaining, by a computer device, a graph optimized message model comprising; a hierarchical arrangement of a plurality of nodes and a plurality of branches, each branch of the plurality of branches connecting two nodes of plurality of nodes, wherein a first portion of the plurality of branches are common message elements, and wherein a second portion of the plurality of branches are different message element options; setting, by the computer device, a current node to a first node of the plurality of nodes, the first node being connected to one of the first portion of plurality of branches, and the first node being connected to at least two of the second portion of the plurality of branches; setting, by the computer device, a current branch to a first branch of the second portion of the plurality of branches, the first branch connecting the first node to a second node of the plurality of nodes; setting, by the computer device, a return marker in the graph optimized message model at a point corresponding to the current node; parsing, by the computer device, a message from the return marker against the current branch of the graph optimized message model; and in response to unsuccessfully parsing the message; setting, by the computer device, the current branch to a second branch of the second portion of the plurality of branches, the second branch being different than the first branch, the second branch connecting the first node to a new node of the plurality of nodes different than the second node, the new node being at a same level in the hierarchal arrangement as the second node; and parsing, by the computer device, the message again from the return marker, whereby the setting the current branch to a second branch and the parsing the message again from the return marker parses the message again at a point of an unsuccessful parse using a different message element option so that parsing does not need to start from the beginning of the message model. - View Dependent Claims (5, 6)
-
-
7. A computer program product for parsing a message against a graph optimized message model the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a processor to cause the processor to:
-
obtain a graph optimized message model comprising; a hierarchical arrangement of a plurality of nodes and a plurality of branches, each branch of the plurality of branches connecting two nodes of plurality of nodes, wherein a first portion of the plurality of branches are common message elements, and wherein a second portion of the plurality of branches are different message element options set a current node to a first node of the plurality of nodes, the first node being connected to one of the first portion of plurality of branches, and the first node being connected to at least two of the second portion of the plurality of branches; set a current branch to a first branch of the second portion of the plurality of branches, the first branch connecting the first node to a second node of the plurality of nodes; set a return marker in the graph optimized message model at a point corresponding to the current node; parse a message from the return marker against the current branch of the graph optimized message model; and in response to unsuccessfully parsing the message; set the current branch to a second branch of the second portion of the plurality of branches, the second branch different than the first branch, the second branch connecting the first node to a new node of the plurality of nodes different than the second node, the new node at a same level in the hierarchal arrangement as the second node; and parse the message again from the return marker, whereby the setting the current branch to a second branch and the parsing the message again from the return marker parses the message again at a point of an unsuccessful parse using a different message element option so that parsing does not need to start from the beginning of the message model. - View Dependent Claims (8, 9)
-
Specification