Metadata-Driven UI Binding for Platform Adaptation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

As variations in electronic device form factors, platforms, and technologies increase, existing user interfaces face challenges in adapting without significant overhead, requiring multiple versions of applications to support different processors, input/output devices, operating systems, and screen sizes, and updating user interfaces to incorporate new features and technologies is cumbersome.

Innovation Solution

The system decouples user-interface content from platform-specific rendering components by using metadata definitions to map platform-agnostic view components to platform-specific user-interface elements, allowing rendering to be customized by platform, form factor, and other attributes without modifying source code, using structured data like JSON objects and metadata definitions to select and instantiate platform-specific UI elements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multiple versions of applications are released to support different processors, I/O devices, operating systems, and form factors, then adaptability to various platforms is improved, but device complexity and development overhead increase

Engineering Contradiction:
Improveplatform adaptabilityVSAvoidapplication version complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The application is segmented into platform-agnostic content (business logic, data models) and platform-specific rendering components. This allows the core application to remain unchanged while only the rendering layer needs to be adapted for different platforms, reducing overall complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A metadata layer acts as an intermediary between platform-agnostic content and platform-specific rendering components. The metadata defines how content should be rendered on different platforms without requiring changes to the core application code, enabling adaptability while maintaining simplicity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If platform-specific rendering components are used to support new features and technologies, then functionality is improved, but ease of manufacture and update overhead increase

Engineering Contradiction:
Improvefeature adaptabilityVSAvoidUI update overhead
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

The rendering logic is extracted from the core application and placed into separate platform-specific rendering components. This allows new features to be added by modifying only the rendering components rather than the entire application, reducing update overhead.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Instead of changing application code to support new features, the system uses parameter changes in metadata to configure different rendering behaviors. This allows feature updates to be achieved through configuration changes rather than code modifications, simplifying the update process.

Inventive Principle:
Principle #35Parameter changes

3Ease of operation

If user interface content is decoupled from platform-specific rendering components, then ease of operation and maintainability are improved, but device complexity increases due to metadata binding mechanisms

Engineering Contradiction:
ImproveUI maintenance easeVSAvoidmetadata binding complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The metadata layer serves as an intermediary that simplifies the relationship between content and rendering components. By defining bindings in metadata, the system achieves clean separation of concerns while keeping the binding mechanism itself simple and manageable.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The metadata binding mechanism is designed to be universal, working across all platforms and devices. A single metadata definition can describe how content should be rendered on multiple different platforms, reducing the need for platform-specific configuration and simplifying maintenance.

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

Data Source

PatentUS11960695B2Metadata-driven binding of platform-agnostic content to platform-specific user-interface elements
Publication Date: 2024.04.16 INTUIT INC
  • US11960695B2 patent drawing
  • US11960695B2 patent drawing
  • US11960695B2 patent drawing

AI summary

The disclosed embodiments provide a system that facilitates use of an application on an electronic device. During operation, the system obtains a first metadata definition containing a mapping of view components in a user interface of the application to a set of attribute-specific types associated with an attribute of the electronic device, and a second metadata definition containing a set of rules for binding the attribute-specific types to a set of platform-specific user-interface elements for a platform of the electronic device. Next, the system generates a view for display in the user interface by applying, based on the attribute and the platform, the first and second metadata definitions to content describing the view to select one or more platform-specific user-interface elements for rendering one or more of the view components in the content. The system then instantiates the platform-specific user-interface element(s) to render the view component(s).