REST Media Type Processor for Web API Adaptability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In REST software architecture, the complexity of selecting and converting media types for web APIs and legacy systems is high due to the variety of open and customized media types, which complicates data model binding and system evolution.

Innovation Solution

A method and apparatus for processing media types in REST architecture that involves extracting media types from client requests, converting messages into data models using specific processors, and sending these models to servers, allowing for the support of new media types without modifying existing data models.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multiple open and customized media types are supported in REST software architecture, then the system's adaptability and versatility improve, but the complexity of selecting and converting media types increases

Engineering Contradiction:
Improvemedia type supportVSAvoidmedia type processing complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a media type processor as an intermediary component that sits between the message receiver and the data model binder. This processor automatically detects the media type from incoming messages and performs the necessary conversion to bind the message to the appropriate data model. By inserting this intermediary layer, the system can support multiple media types (XML, JSON, YAML, etc.) without increasing the complexity of the core binding logic, as the processor handles all media type-specific processing centrally.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the media type processing functionality into a separate, independent media type processor component. This segmentation allows the complex media type detection and conversion logic to be isolated from the main data model binding process. The processor can be developed, tested, and maintained independently, reducing the overall system complexity while enabling support for multiple media types through modular architecture.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If new media types are added to support evolving web APIs, then the system's adaptability improves, but the complexity of data model binding increases

Engineering Contradiction:
Improvemedia type extensibilityVSAvoiddata model binding complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The media type processor is designed as a universal component that can handle multiple media types through a unified interface. Instead of creating separate binding logic for each media type, the processor provides a single multi-functional solution that detects the media type and performs appropriate conversion. This universality allows new media types to be added by extending the processor's capabilities rather than modifying the core data model binding mechanism, thus improving adaptability without increasing binding complexity.

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

Solution Approach 2:

The media type processor implements self-service by automatically detecting the media type from incoming messages and selecting the appropriate conversion strategy without external intervention. The processor autonomously handles media type identification, validation, and conversion, eliminating the need for manual configuration or complex binding logic for each new media type. This self-service capability simplifies the system architecture while enabling easy extension to support new media types.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10944824B2Method and apparatus for processing media type in rest software architecture
Publication Date: 2021.03.09 EMC IP HLDG CO LLC
  • US10944824B2 patent drawing
  • US10944824B2 patent drawing
  • US10944824B2 patent drawing

AI summary

Embodiments of the present disclosure provide a method and apparatus for processing a media type in representational state transfer (REST) software architecture, comprising: extracting, in a request from a client, a first media type for the request, the request including a message sent to a server; in response to determining that a first media type processor supporting the first media type exists, converting, by the first media type processor, the message into an instance of a first data model; and sending the instance of the first data model to the server. Embodiments of the present disclosure can add support to a new media type without a need of changing the existing data model, thereby enhancing development efficiency of web applications.