Dynamic ORM Metadata Inference for Schema Adaptation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing database applications face difficulties in interoperating with data from multiple sources due to varying data models, schema, and formats, requiring specific configurations and restarts for schema changes, limiting flexibility and efficiency.

Innovation Solution

A generic database application uses object-relational mapping (ORM) metadata to map relational input data into a graph of objects, inferring metadata from different schemas and providing dynamic strongly-typed querying, allowing for real-time updates and compatibility feedback without restarting the application.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If specific database applications use fixed schema and strong-typed ORM, then data access precision and type safety are improved, but adaptability to schema changes and interoperability with different data sources deteriorates

Engineering Contradiction:
Improvedata access precisionVSAvoidadaptability to schema changes
Core Design Contradiction:
Manufacturing precisionVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic schema validation where the database application can adapt to schema changes without restart. The system dynamically loads and validates queries against the current schema state, allowing the validation mechanism itself to be flexible and responsive to changes while maintaining type safety.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent introduces an intermediary validation layer that sits between the query execution and the database schema. This intermediary component (query validation mechanism) translates and validates queries dynamically, allowing the application to maintain strong-typed ORM benefits while adapting to different schemas through the mediating validation process.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Manufacturing precision

If specific database applications are restarted to implement schema changes, then data access precision is maintained, but productivity and response time deteriorate

Engineering Contradiction:
Improvedata access precisionVSAvoidresponse time
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

The patent performs preliminary validation of queries against the schema before execution. By validating queries in advance and maintaining a valid query cache, the system prepares validation results beforehand, so when schema changes occur, only affected queries need re-validation rather than restarting the entire application.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent enables continuous query validation and execution without application restart. The validation mechanism operates continuously in the background, validating queries as needed and maintaining a cache of valid queries, ensuring uninterrupted data access while adapting to schema changes.

Inventive Principle:
Principle #20Continuity of useful action

3Adaptability or versatility

If generic database applications support multiple schemas, then adaptability improves, but data access precision and type safety deteriorate

Engineering Contradiction:
Improveschema compatibilityVSAvoiddata access precision
Core Design Contradiction:
Adaptability or versatilityVSManufacturing precision

Solution Approach 1:

The patent creates a universal query validation mechanism that can handle multiple database schemas while maintaining type safety. The validation system is designed to work with different schema types and configurations, providing schema-agnostic validation rules that ensure data access precision across diverse database environments.

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

Solution Approach 2:

The patent dynamically adjusts validation parameters and rules based on the specific schema being accessed. The validation mechanism modifies its behavior and criteria according to the schema type, maintaining strict type checking for schemas that require it while being flexible enough to adapt to different data models and structures.

Inventive Principle:
Principle #35Parameter changes

4Manufacturing precision

If applications are designed to work with specific data types and formats, then data access precision is improved, but ease of operation and interoperability deteriorate

Engineering Contradiction:
Improvedata access precisionVSAvoidease of data integration
Core Design Contradiction:
Manufacturing precisionVSEase of operation

Solution Approach 1:

The patent segments the data access process into distinct validation and execution phases. The validation phase checks type precision requirements separately from the execution phase, allowing the system to enforce strict type checking where needed while maintaining ease of operation through automated validation without requiring manual configuration for each data integration scenario.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8280924B2Object-relational mapping with dynamic relational schemas
Publication Date: 2012.10.02 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8280924B2 patent drawing
  • US8280924B2 patent drawing
  • US8280924B2 patent drawing

AI summary

In an embodiment, a generic database application of a computer system receives a portion of input data from a database. The generic database application can communicate with the database using a variety of different database schemas. The generic database application of the computer system infers a portion of ORM metadata associated with the received input data. The computer system accesses a generic ORM query where the ORM query is configured to provide mapping information to map the input data into a graph of objects according to the database object properties included in the ORM metadata. The computer system maps the input data into a graph of objects using the database object properties included in the ORM metadata and displays an ORM object view which includes the graph of objects.