Dynamic Graphical User Interface Construction via XML Configuration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current Global Data Synchronization (GDS) systems require laborious processes for developing customized applications with hardcoded graphical user interfaces, leading to increased development and maintenance costs, and a need for dynamic user interfaces that can adjust to different data pools and user requirements without recompilation.

Innovation Solution

A system and method for dynamically constructing customizable graphical user interfaces using XML configuration files and Java-based technologies, allowing entities to generate interfaces tailored to their specific needs, with mechanisms for data validation, dependency checking, and security controls, enabling interaction with synchronized business data across the supply chain.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If hardcoded graphical user interfaces are used in current GDS systems, then the interface structure is stable and easy to implement, but development and maintenance costs increase and the system cannot adapt to different data pools and user requirements

Engineering Contradiction:
Improveadaptability to different data pools and user requirementsVSAvoidinterface construction complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements dynamic user interfaces that can be constructed at runtime based on configuration files (XML, JSON, YAML) rather than hardcoded structures. The interface definition is separated from the application logic, allowing the interface to adapt dynamically to different data pools, users, and requirements without recompilation. The system loads interface configurations dynamically and constructs the appropriate interface structure during execution.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the interface construction approach from fixed parameters (hardcoded) to variable parameters (configuration files). By externalizing interface definitions into configurable files with parameters such as layout, data bindings, and component properties, the system can adjust interface characteristics without modifying the underlying code, enabling adaptability while maintaining manageable complexity.

Inventive Principle:
Principle #35Parameter changes

2Ease of operation

If customized applications are developed for each entity, then the interface meets specific user needs, but development time and costs increase significantly

Engineering Contradiction:
Improveuser-specific interface customizationVSAvoiddevelopment time
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent creates a universal interface construction system that can serve multiple entities and data pools through a common framework. Instead of developing separate customized applications for each user, the system provides a single platform that dynamically generates appropriate interfaces based on configuration files. This multi-functional approach allows one system to fulfill the needs of multiple users with different requirements, dramatically reducing development time while maintaining customization capabilities.

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

Solution Approach 2:

The patent enables interface templates and configurations to be copied and reused across different entities and data pools. Configuration files can be replicated, modified, and adapted to create customized interfaces for different users without rebuilding from scratch. This copying mechanism allows rapid deployment of customized interfaces while leveraging existing proven configurations.

Inventive Principle:
Principle #26Copying

3Ease of manufacture

If hardcoded interfaces are used, then the system structure is simple, but maintenance costs and errors increase when adaptations are needed

Engineering Contradiction:
Improveinterface modification easeVSAvoidsystem architecture complexity
Core Design Contradiction:
Ease of manufactureVSDevice complexity

Solution Approach 1:

The patent segments the interface system into distinct components: configuration files (XML, JSON, YAML), interface construction engine, and runtime environment. This segmentation allows independent modification of interface configurations without affecting the core system architecture. Changes are made to external configuration files rather than embedded code, enabling easy maintenance while keeping the overall system architecture manageable through clear separation of concerns.

Inventive Principle:
Principle #1Segmentation

4Adaptability or versatility

If dynamic user interfaces are implemented, then adaptability to different data pools improves, but the initial system complexity increases

Engineering Contradiction:
Improvedynamic interface adaptationVSAvoidinterface construction system complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces configuration files (XML, JSON, YAML) as intermediaries between the user requirements and the interface construction engine. These configuration files serve as a mediator layer that translates business requirements into interface specifications without requiring direct complex programming logic. The intermediary configuration layer simplifies the system architecture by providing a standardized, declarative approach to interface definition, reducing the apparent complexity while enabling dynamic adaptation.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS7577907B2System and method for dynamically constructing synchronized business information user interfaces
Publication Date: 2009.08.18 SAP SE
  • US7577907B2 patent drawing
  • US7577907B2 patent drawing
  • US7577907B2 patent drawing

AI summary

Embodiments of the invention enable data that is synchronized between businesses to be displayed and interacted with by dynamically constructing graphical user interfaces to display the data. The graphical user interfaces are dynamically created via declarations that describe the data and how the data should be displayed along with the dependencies, validation and required characteristics of the data. The resulting dynamically created graphical user interfaces allow separate views of the data to be interacted with depending on the data pool that the data is intended for and a different data pool may be utilized by using a different declarative configuration at run time without recompiling and redistributing the application. The user interface files may be for example an XML file that may be parsed with any compliant schema based or DTD based XML parser. In at least one embodiment of the invention an N-tier architecture may be employed wherein a web server comprising Java Server Pages may utilize java class files that parse and construct the graphical user interface from an XML user interface configuration file. In this embodiment of the invention, HTML pages are output to a diverse array of computing devices capable of executing a HTML compliant browser. Another embodiment of the invention may utilize a standalone application utilizing the same java classes to construct java widgets instead of HTML widgets. Standalone applications may provide quicker responses than HTML applications since there are no round trips required for certain operations such as validation since the validation occurs directly in the application.