Object-XML Mapping Layer for Hybrid Database Query Translation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The challenge lies in translating between XML and objects automatically, particularly in hybrid relational/XML databases, due to differences in type systems and the object-relational impedance mismatch, which existing object-relational mapping frameworks do not effectively address.

Innovation Solution

The technology provides mappings between object classes and XML, allowing programming against databases with both relational and XML data, using explicit declarative mappings that support strongly-typed and loosely-typed classes, and conditional mappings, enabling query and update processing across both data types.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If object-relational mapping frameworks are used to translate queries on objects into SQL, then performance and scalability are improved, but the mismatch between objects and XML is not handled

Engineering Contradiction:
Improvequery translation performanceVSAvoidXML data handling capability
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent introduces an object-XML mapping layer as an intermediary between object-relational mapping frameworks and XML data. This mediator translates object queries into both SQL for relational data and XQuery for XML data, enabling ORMs to handle XML data while maintaining their performance and scalability benefits.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent extends object-relational mapping frameworks to become universal mapping frameworks that can translate queries to multiple data models (relational and XML). By adding XML mapping capabilities to existing ORMs, the system maintains the proven performance of SQL translation while gaining XML data handling versatility.

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

2Adaptability or versatility

If XML data is partitioned across multiple relational tables in hybrid databases, then data storage flexibility is improved, but the object-relational impedance mismatch is compounded

Engineering Contradiction:
Improvedata storage flexibilityVSAvoidmapping complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the mapping complexity by separating object-XML mapping concerns from object-relational mapping concerns. The object-XML mapping layer handles XML-specific translation rules, while the object-relational layer handles relational translation, allowing each to be optimized independently for their respective data models.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The object-XML mapping framework serves as an intermediary layer that simplifies access to partitioned XML data. It provides a unified object model that abstracts the underlying partitioning across multiple relational tables, reducing the perceived complexity for application developers.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of operation

If automatic translation between XML and objects is attempted, then programming convenience is improved, but the differences in type systems create translation difficulties

Engineering Contradiction:
Improveprogramming convenienceVSAvoidtranslation system complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent uses parameter changes by allowing flexible configuration of mapping rules between XML types and object types. The system can adapt translation parameters based on XML schemas, object class definitions, and runtime conditions, enabling automatic translation despite type system differences without requiring complex manual mapping specifications.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The object-XML mapping framework provides self-service by automatically generating translation logic from XML schemas and object class definitions. The system can infer mapping relationships and generate appropriate translation code without extensive manual intervention, reducing the complexity burden on developers while maintaining programming convenience.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9336327B2Mapping and query translation between XML, objects, and relations
Publication Date: 2016.05.10 MICROSOFT TECHNOLOGY LICENSING LLC
  • US9336327B2 patent drawing
  • US9336327B2 patent drawing
  • US9336327B2 patent drawing

AI summary

Described is programmatic access to persistent XML and relational data from applications based upon explicit mappings between object classes, XML schema types, and relations. The mappings are used in data access, that is, they drive query and update processing. A query may be processed into a query for accessing the XML data and another query for second type for accessing the relational data. Mappings support strongly-typed classes and loosely-typed classes, and may be conditional upon other data, may decouple query and update translation performed at runtime from schema translation used at compile time, and/or may be compiled into transformations that produce objects from XML data and transformations that produce XML data from objects. Mappings may be generated automatically or provided by the developer.