Proxy-Based Data Mapping for Application Interoperability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems face difficulties in enabling interoperability between applications with different type structures, requiring developers to write multiple adapters and perform complex type conversions, which becomes problematic as the number of applications grows and type structures change.

Innovation Solution

Implementing a system that uses proxies to map data from various type structures to a common data structure, allowing applications to interact without prior knowledge of the type structures, using a universal data model that classifies data by 'Atom,' 'Sequence,' or 'Record,' and 'Operation' shapes, facilitating interoperability across different frameworks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If developers write multiple adapters to enable interoperability between applications with different type structures, then adaptability is improved, but device complexity increases

Engineering Contradiction:
Improveinteroperability between applicationsVSAvoidnumber of adapters
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a universal adapter component that can handle multiple type structure conversions through dynamic proxy generation. Instead of creating separate adapters for each application pair, a single universal adapter uses runtime proxy creation to adapt between any combination of type structures, making the adapter system multi-functional and eliminating the need for numerous specialized adapters.

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

Solution Approach 2:

The patent employs a central adapter component that acts as an intermediary between applications with different type structures. This mediator receives requests from one application, dynamically generates appropriate proxies to translate the request into the target application's type structure, executes the request, and returns the result. This intermediary approach consolidates multiple adapter functions into a single coordinating component.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If developers perform complex type conversions to enable data access between applications, then adaptability is improved, but loss of time increases

Engineering Contradiction:
Improvedata access between applicationsVSAvoidconversion time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent performs type structure analysis and proxy generation in advance during system initialization or first-use scenarios. By pre-analyzing the type structures of applications and generating the necessary proxy mappings beforehand, the system avoids performing complex conversion analysis during actual data access operations, significantly reducing the time penalty for type conversions.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates lightweight proxy representations of complex type structures. Instead of performing full type conversions during data access, the system generates simplified proxy objects that mirror the essential structure and behavior of the target type system. These proxies enable rapid data access without requiring complete structural transformation, reducing conversion overhead.

Inventive Principle:
Principle #26Copying

3Reliability

If applications are designed with strong type frameworks for security and stability, then reliability is improved, but adaptability worsens

Engineering Contradiction:
Improvesecurity and stabilityVSAvoidinteroperability
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The adapter serves as a trusted intermediary that enforces type safety while enabling interoperability. It validates and transforms data between different strong type frameworks, ensuring that the reliability guarantees of each type system are maintained. The adapter acts as a boundary that preserves the integrity of strongly typed applications while facilitating safe communication between them.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces rigid mechanical type matching with dynamic proxy-based adaptation. Instead of requiring applications to conform to fixed type structures, the system uses runtime proxy generation to flexibly adapt between different type systems. This substitution maintains the security and stability of strong typing while removing the rigidity that prevents interoperability.

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

Data Source

PatentEP2260377B1Accessing different type structures via a common data structure
Publication Date: 2019.02.27 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP2260377B1 patent drawingFigure 1A
  • EP2260377B1 patent drawingFigure 1B
  • EP2260377B1 patent drawingFigure 2

AI summary

A common data type structure can be used to correlate access requests between applications that implement data in accordance with different types or type structures. In one implementation, a common data structure includes schemes for operations, sequences, records, and atoms (i.e., undefined). The system can then map any type structure to the schemes of the common data structure. In operation, a request for data by an application can involve identifying one or more proxies used by an application to map the data to the common data structure. The proxies map the data to the common data structure based on the shape of the data (to the extent it can be identified). The proxies then can return one or more data structures that comprise the identified mapping information. The application can then perform operations directly on the received data structures.