# US 2008/0187004 A1 · Parsing Messages with Multiple Data Formats

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

- Number: US 2008/0187004 A1
- Document ID: US20080187004A1
- Status: Published application
- Kind: A1
- Application number: 12/109,123
- Filed: 2008-04-24
- Published: 2008-08-07
- Earliest claimed: 2001-03-29
- Assignees: International Business Machines Corporation
- Inventors: Michael Johnson
- Web page: https://patentgrep.com/patent/US20080187004A1

## CPC

- G06F 9/546: {Message passing systems or structures, e.g. queues}
- H04L 9/40: Network security protocols
- H04L 69/22: Parsing or analysis of headers
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Provided are a method for parsing a bit stream including multiple data formats, and an apparatus and computer program including a set of parsers and parser-selection and invocation capabilities for handling parsing of multiple data formats. A first parser is selected and invoked to handle a first formatted component of the bit stream, and this selected parser selects and invokes a next parser which is capable of handling a differently formatted next component of the bit stream. This is differentiated from systems which rely on a single generic parser or a single high-level parser selection process, and is especially advantageous when parsing messages to enable message processing in systems in which a message can include multiple different, nested data formats.

## Claims

### Claim at position 1

-5. (canceled)

### Claim 6

A message processing system including:
a set of selectable parsers, each selectable parser being adapted for analyzing a respective set of message data formats and being selectable in response to identifying a message data format within the respective set;
a process for invoking a parser from the set, wherein at least one of said selectable parsers includes:
means for parsing a first component of a message having a message data format within the respective set;
means for identifying the data format of a second component of the message;
means, responsive to said identification, for selecting another one of said set of parsers and for invoking the selected parser to parse the second message component;
including a repository of message format templates, each template representing the field structure of a particular format of message component, wherein said at least one parser is adapted to parse the first component and then to read a format field of a second component of the message to identify the data format of the second component, and wherein invoking the selected parser to parse the second component includes providing to the selected parser an identification of the message format template corresponding to the identified format.

### Claim 7 (depends on 6)

A message processing system according to claim 6, wherein said at least one parser parses the first component to enable identification of a format field containing information relating to the format of the second component.

### Claim 8

(canceled)

### Claim 9

A parser program stored in memory for processing a bit stream which may contain a plurality of data formats, the parser program including a set of selectable parsers, each adapted for analyzing a specific set of one or more data formats, wherein the parser program includes:
instructions for parsing a first component of a bit stream;
instructions for identifying the data format of a second component of the bit stream;
instructions, responsive to said identification, for selecting another one of said set of parsers and for invoking the selected parser to parse the second components;
wherein said instructions for invoking the selected parser includes instructions for inputting the second component to the selected parser, and
wherein the selected parser returns control to the first parser after parsing the second component.

### Claim 10 (depends on 9)

The parser program according to claim 9, wherein the selected parser is adapted to access a format template from a format dictionary corresponding to the format indication.

### Claim 11 (depends on 9)

The parser program according to claim 9, wherein the instructions for parsing the first component is adapted to output a name-value pair indicating the format of the second component.

### Claim 12 (depends on 9)

The parser program according to claim 9, wherein the instructions for identifying the data format comprises instructions for analyzing a format field of the second component.
