Complementary Application Generation via OData Navigation Inversion
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current application development environments, particularly those using OData services, lack the ability to easily generate complementary applications that offer reverse navigations between data collections, limiting user interaction and functionality.
Innovation Solution
An automated system that analyzes OData service metadata to discover and generate complementary applications by reversing navigations between data collections, allowing for the creation of applications that browse in opposite directions, such as from suppliers to products and vice versa, based on Entity Data Model definitions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a combination application is generated using OData services with standard navigations between data collections, then the application can be easily created and integrated, but the application lacks complementary functionality and limited user interaction options
Solution Approach 1:
The patent applies inversion by automatically generating complementary applications that reverse the navigation direction between data collections. If the original application navigates from collection A to collection B, the complementary application navigates from collection B to collection A, providing alternative interaction paths without requiring manual development of reverse navigation logic.
Solution Approach 2:
The patent uses copying by creating a complementary application that replicates the structure and data model of the original application but with inverted navigation relationships. This allows the system to generate multiple functional variations from a single original application definition, expanding versatility without proportionally increasing development complexity.
2Ease of operation
If manual development of complementary applications with reverse navigations is performed, then enhanced user interaction and alternative navigation paths are achieved, but development time and effort increase significantly
Solution Approach 1:
The patent applies preliminary action by pre-defining navigation relationships between data collections in the OData service metadata. The system automatically detects these predefined navigations and uses them to generate complementary applications with reversed navigation paths, eliminating the need for manual development of reverse navigation logic and significantly reducing development time.
Solution Approach 2:
The patent implements self-service by enabling the automatic generation of complementary applications through programmatic processing of OData service metadata. The system automatically analyzes the original application's data collections and navigations, generates complementary applications with reversed navigation paths, and makes them available for deployment without requiring manual intervention, thereby reducing both development time and operational overhead.
3Productivity
If generic combination applications are created using open APIs and data sources, then fast integration is achieved, but the applications lack specialized complementary functionality
Solution Approach 1:
The patent applies dynamics by enabling the system to adaptively generate different types of applications based on the same underlying data model. The same OData service metadata can be used to generate both the original application and its complementary variants with reversed navigations, allowing the system to dynamically create specialized functionality from generic data sources without sacrificing integration speed.
Data Source
AI summary
An application complementation module may access application data from an application repository, the application data associated with a first application. The data collections of a data service provider (e.g., OData service) used in the first application and at least one navigation used in the first application to navigate between the data collections are determined based on the application data. Service metadata (e.g., Entity Data Model (EDM)) from the data service provider is searched for new navigations between the used data collections that are different from the navigations used in the first application. An application that is complementary (e.g., provides different or complementary navigations) to the first application may then be generated based on the data collections used in the first application and any new navigations between the data collections discovered from the service metadata. A recommendation regarding the generated application may be provided to a user of the first application.


