Bidirectional Metadata Wrapper for Cross-Language Object Interoperability
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing object-oriented systems face challenges in interoperation between native objects in a single language computing environment and objects created in external virtual machines or foreign class systems, particularly due to differences in metadata, memory management, and physical layouts, limiting communication and subclassing capabilities.
Innovation Solution
A mechanism for automatic interoperation is provided through a class definition syntax that enables direct subclassing of external classes, implementation of external interfaces, and bidirectional metadata mapping between native and foreign object systems, allowing native objects to interact with foreign objects and vice versa without assumptions about memory management or data storage systems.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If native objects are restricted to communicate only with native objects from their native language class definitions, then the object system maintains simplicity and consistency, but the system loses the ability to interoperate with foreign objects from different virtual machines or object systems
Solution Approach 1:
The patent introduces a metadata wrapper as an intermediary layer between native objects and foreign objects. The wrapper translates and adapts metadata from foreign object systems into the native object system's metadata format, enabling seamless interoperation without direct complexity exposure. This mediator handles the conversion of class definitions, properties, methods, and events between different object systems, resolving the contradiction by providing adaptability through the wrapper while shielding the native system from foreign complexity.
2Ease of operation
If foreign objects use different metadata formats and memory management systems, then each object system maintains its own integrity and design principles, but native language syntax cannot directly manipulate foreign objects
Solution Approach 1:
The patent creates a metadata wrapper that copies and translates the essential metadata structure of foreign objects into the native object system's format. Instead of directly accessing foreign objects with incompatible metadata, the system creates a local copy (the wrapper) that mirrors the foreign object's interface, properties, and methods in a format the native system can understand and manipulate. This copying approach enables ease of operation with foreign objects while preserving the integrity of both the foreign object system and the native system.
3Adaptability or versatility
If subclassing of foreign classes is permitted, then the system gains extended functionality and integration capability, but the foreign object system's class hierarchy and metadata structure may be violated
Solution Approach 1:
The metadata wrapper acts as an intermediary that enables subclassing of foreign classes while preserving metadata conformity. When a native class subclasses a foreign class, the wrapper translates the subclassing relationship into the foreign object system's metadata format, ensuring that the foreign system's class hierarchy rules are maintained. The wrapper handles the complexity of cross-system inheritance, allowing adaptability through subclassing while maintaining precision in the foreign object system's metadata structure.
Data Source
AI summary
A mechanism for providing automatic interoperation between native objects created in a single language computing environment and objects created in external virtual machines and foreign class systems is discussed. Embodiments of the present invention provides a class definition syntax for objects created in the single language computing environment that provides the ability to directly subclass external classes and implement external interfaces. One embodiment of the present invention also permits a foreign object system to instantiate native objects and to create foreign subclasses of native classes. More specifically, one embodiment of the present invention provides bidirectional mapping between metadata associated with objects created with each of a plurality of different types of foreign object systems and metadata created in a form supported by the single language computing environment.


