Graphical XML Programming System for Web Service Type Checking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current object-oriented programming languages like Java and C# are inadequate for developing Web Services, as they fail to ensure correctness and reliability due to lack of static type checking based on XML Schema constraints, leading to runtime errors and extensive manual testing requirements.

Innovation Solution

A document-oriented approach to Web Services that uses XML schemas as the central intelligence, enabling static type checking and automatic enforcement of constraints at design time, thereby preventing errors and ensuring program validity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If object-oriented languages like Java or C# are used for Web Services development, then general-purpose programming flexibility is achieved, but static type checking based on XML Schema constraints is lost leading to runtime errors

Engineering Contradiction:
Improveprogramming flexibilityVSAvoidprogram correctness
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent segments the type checking process into two distinct layers: XML Schema-based static type checking for data structure validation, and object-oriented runtime processing for business logic execution. This segmentation allows each layer to specialize in its strength while compensating for the other's weaknesses.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary layer that translates XML Schema constraints into type-safe object representations. This intermediary enables the bridge between the declarative XML Schema world and the imperative object-oriented programming world, ensuring type correctness while maintaining programming flexibility.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If manual testing is performed to ensure Web Service correctness, then runtime errors can be detected, but development time and costs increase significantly

Engineering Contradiction:
Improveerror detectionVSAvoiddevelopment time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs type checking and validation actions preliminarily at compile time rather than at runtime during testing. By enforcing XML Schema constraints during compilation, the system prevents errors before they can manifest during execution, eliminating the need for extensive manual testing.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent allows developers to skip the traditional lengthy testing phase by relying on compile-time validation. The rigorous static type checking performed during compilation rushes through the error detection process that would otherwise require time-consuming manual testing cycles.

Inventive Principle:
Principle #21Skipping (Rushing through)

3Reliability

If extensive testing is performed to cover all XML Schema constraint possibilities, then program reliability improves, but productivity decreases due to the large number of test cases required

Engineering Contradiction:
Improveconstraint validationVSAvoiddevelopment efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent replaces the mechanical testing system with an automated type-checking system. Instead of manually creating and executing numerous test cases to validate XML Schema constraints, the compiler automatically performs type checking, substituting human effort with automated mechanical validation.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The patent enables the compilation process to perform self-validation of XML Schema constraints without requiring external testing. The type checker automatically verifies that code adheres to schema constraints, making the system self-sufficient in ensuring correctness without needing extensive external testing efforts.

Inventive Principle:
Principle #25Self-service

4Reliability

If developers manually check for null references and input parameter correctness, then runtime errors can be prevented, but development complexity increases

Engineering Contradiction:
Improveruntime error preventionVSAvoiddevelopment complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent makes the type system universal by integrating multiple validation functions into a single cohesive mechanism. The XML Schema-based type checking simultaneously handles null reference detection, input parameter validation, and data structure verification, eliminating the need for separate manual checks for each concern.

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

Data Source

PatentUS7512840B2System and method for providing graphical representation and development of a processing application
Publication Date: 2009.03.31 DIEBOLD NIXDORF INCORPORATED
  • US7512840B2 patent drawing
  • US7512840B2 patent drawing
  • US7512840B2 patent drawing

AI summary

A system and methods are provided for operating and building graphically XML processing programs, guiding the user in development of the program, preventing and detecting development errors as the program is being designed, ensuring that the program is valid, i.e. satisfies required input and output constraints at all times, i.e. from the time it is developed to when it is deployed in a production environment, ensuring the automated change management if the internal logic of the Web service, or data sources called by the service or the schema that underlies the Web service are modified. The system includes a graphical XML Programming system where XML processing programs are built and represented in a graphical fashion, a real-time metadata computation and visualization method for each selected execution point in the visual program that provides guided programming, error prevention and detection, and change impact analysis and change management, and, an automated execution path exploration method that enables overall program validation and error identification. The system and methods allow a user to reduce by at least a factor of 2 the costs of development and maintenance of reliable XML processing programs such as Web Services.