Recursive Rule Language for Schema Transformation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The complexity of integrating and converting data from different sources due to varying formats and schemas, which often requires technical knowledge and can be cumbersome, especially when non-technical users need to perform data transformations.

Innovation Solution

A programming-language independent language, referred to as Recursive Rule Language (RRL), is used to define data transformation specifications in the form of first-order logic statements that can be recursively referenced, allowing for straightforward definition and execution of complex schema transformations, facilitating data transformations by non-technical users.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If data transformations are performed using traditional technical methods (SQL statements, spreadsheets, first order logic), then the transformation can be accomplished, but it requires technical knowledge and is cumbersome for non-technical users

Engineering Contradiction:
Improveease of data transformationVSAvoidtechnical knowledge requirement
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent introduces a natural language processing intermediary that translates user-friendly natural language queries into executable SQL statements. This mediator layer allows non-technical users to interact with the system using simple English sentences rather than requiring knowledge of SQL syntax or complex transformation rules, thereby resolving the contradiction between ease of operation and technical complexity

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If complex schema transformations are implemented, then data integration capability is improved, but the process becomes more cumbersome and time-consuming

Engineering Contradiction:
Improvedata format compatibilityVSAvoidtransformation time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent implements preliminary action by pre-compiling and storing transformation rules in an optimized format during system initialization or setup phases. When actual data transformations are needed, the system retrieves and executes these pre-prepared rules rather than computing transformations from scratch, significantly reducing execution time while maintaining comprehensive schema transformation capabilities

Inventive Principle:
Principle #10Preliminary action

3Manufacturing precision

If data transformations require detailed understanding of both technical aspects and semantic meaning, then transformation accuracy is improved, but it creates difficulty for users who may have one type of understanding but not the other

Engineering Contradiction:
Improvetransformation accuracyVSAvoiduser accessibility
Core Design Contradiction:
Manufacturing precisionVSEase of operation

Solution Approach 1:

The natural language processing system serves as an intermediary that bridges the gap between semantic understanding and technical implementation. Users can express their intent in natural language (semantic layer), and the system automatically generates the appropriate technical transformation logic, thereby achieving high transformation accuracy without requiring users to possess both semantic and technical expertise simultaneously

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11526656B2Logical, recursive definition of data transformations
Publication Date: 2022.12.13 SAP SE
  • US11526656B2 patent drawing
  • US11526656B2 patent drawing
  • US11526656B2 patent drawing

AI summary

Techniques and solutions are described for defining transformation specifications in a programming-language independent language and converting such specifications to one or more executable formats. The language can provide for defining rules and actions. Rules can refer to (e.g., be based at least in part on) data targets, such as attributes of a schema, whose identifiers are to be read or updated, or to other rules. Rules can be reused, and can recursively refer to one another, such that a large number of complex schema transformations can be accomplished using a series of first order logic statements. Actions can define what, and how, values will be changed when a predicate rule is satisfied. A transformation specification in the language can be parsed and selectively complied to one or more executable formats, including in programming languages such as the structured query language. Disclosed technologies can facilitate data transformations by non-technical users.