Dynamic Service Linking via Metadata Descriptors
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current network application compilation procedures require predefined, static definitions of services, limiting flexibility and standard communication interfaces between applications and services, making it difficult to dynamically link and manage increasing complexity in network applications.
Innovation Solution
A method for dynamically generating an extended, dynamically linked application on a mobile device by using service metadata descriptors to identify communication interfaces and interact through structured definition languages, allowing for the dynamic loading and updating of extension services, either locally or remotely, without pre-compilation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If static service definitions are used in compilation, then compilation reliability is improved, but system adaptability deteriorates
Solution Approach 1:
The patent implements dynamic service definition and registration mechanisms that allow services to be defined, registered, and bound at runtime rather than requiring static compilation-time definitions. The service registry stores service definitions in a dynamic data structure, enabling the system to adapt to new services without recompilation while maintaining reliable service binding through standardized interfaces and validation protocols.
2Adaptability or versatility
If dynamic service loading is implemented, then system adaptability is improved, but device complexity increases
Solution Approach 1:
The patent introduces a service registry as an intermediary component that manages service definitions, interfaces, and bindings. This registry acts as a central repository that simplifies the complexity of dynamic service management by providing standardized methods for service registration, discovery, and binding, thereby reducing the overall system complexity despite enabling dynamic adaptability.
Solution Approach 2:
The service registry implements universal interfaces and standardized data structures that can handle various service types through a common mechanism. The service definition format and binding protocols are designed to be generic and reusable across different service scenarios, reducing the need for service-specific complexity management code.
3Adaptability or versatility
If service definitions are made available at runtime, then system versatility is improved, but information management complexity increases
Solution Approach 1:
The patent performs preliminary organization of service information by structuring service definitions with standardized formats that include service identifiers, interface definitions, and binding rules. This preliminary structuring of information in the service registry enables efficient runtime access and management, reducing the complexity of handling dynamic service information while maintaining high system versatility.
Data Source
AI summary
A system and method for dynamically associating an application with an extension service to generate an extended, dynamically linked version of the application. The application is configurable for deployment on an electronic device and for subsequent interaction with the extension service during execution through communication messages defined in a structured definition language. The system and method include a parser module configured for analyzing a set of service metadata descriptors to identify a communication interface associated with the extension service, such that the service metadata descriptors describe the communication interface including structure and type of parameters expected by the extension service for use in manipulation of the communication messages. The system and method also include a linking module coupled to the parser module for using the communication interface and a reference to the extension service in the code of the application to build a runtime dynamic link between the extension service and the application to produce the executable application.


