Generic Parser Module Using Java Annotations

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional tools lack a generic framework for parsing various file types, such as EDI, BAI, and PAS files, and require complex XML configurations for parsing and generation, which is inefficient and not adaptable for different file formats.

Innovation Solution

A generic parser module is implemented using Java annotations for file models, allowing for parsing and generation without XML configurations, and utilizing a class-based logical hierarchy to process files efficiently across different formats.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If conventional tools are used for parsing individual file types (EDI, BAI, PAS), then each file type can be parsed with dedicated tools, but the system lacks a generic framework and requires separate tools for each file format

Engineering Contradiction:
Improveparsing capability across different file formatsVSAvoidnumber of separate parsing tools
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a universal parser framework that can handle multiple file formats (EDI, BAI, PAS, and others) through a single generic parsing engine. The framework uses Java annotations to define file structures and configurations, allowing the same parser to adapt to different formats without requiring separate dedicated tools for each format type.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Ease of manufacture

If XML configurations are used to represent file structures, then file formats can be defined logically, but the configuration process becomes complex and time-consuming

Engineering Contradiction:
Improveease of configurationVSAvoidtime for configuration
Core Design Contradiction:
Ease of manufactureVSLoss of time

Solution Approach 1:

The patent replaces the XML-based configuration system with a Java annotation-based system. Instead of using external XML files to define file structures, the configuration is embedded directly in Java class annotations, allowing developers to define file formats using familiar Java syntax and reducing the complexity associated with XML parsing and configuration management.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Adaptability or versatility

If separate configurations are used for parsing and generation, then each operation can be optimized independently, but the system requires maintaining multiple configuration sets

Engineering Contradiction:
Improveoperation-specific optimizationVSAvoidnumber of configuration sets
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a unified configuration system where the same Java annotation-based configuration is used for both parsing and file generation operations. The generic parser framework is bidirectional, allowing the same configuration definitions to serve both reading and writing operations, thereby eliminating the need to maintain separate configuration sets for different operations.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS20210132970A1System and method for implementing a generic parser module
Publication Date: 2021.05.06 JPMORGAN CHASE BANK NA
  • US20210132970A1 patent drawing
  • US20210132970A1 patent drawing
  • US20210132970A1 patent drawing

AI summary

Various methods, apparatuses/systems, and media for implementing a generic parser module are disclosed. A repository that stores a plurality of files each having a corresponding file format. A processor accesses the repository to obtain the plurality of files and format each file into a class-based logical hierarchy. The processor also creates a Java model based on the formatted files having the class-based logical hierarchy, each file having a plurality of data and the Java model having file-level classes that contain a list of said plurality of data; generates Java annotations identifying each file type included in the file-level classes; injects the Java annotations into the file-level classes of the Java model to indicate how to process each file; calls a method along with the file containing the data; and parses the file to read the data into the Java model injected with the Java annotations.