XML Schema Evolution via In-Place SQL Generation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods fail to ensure that XML-schema-based instance documents and database structures continue to conform to an updated XML schema, leading to incorrect interpretation and storage issues after schema modifications.

Innovation Solution

A schema evolver is used to generate new SQL statements that automatically update database structures and instances to conform to an evolved XML schema, allowing for in-place evolution without creating additional copies of data, ensuring continued conformity and atomic transactions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If manual XML schema modification is performed, then schema adaptability is improved, but data conformity and reliability deteriorate

Engineering Contradiction:
Improveschema adaptabilityVSAvoiddata conformity
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system performs self-service by automatically generating and executing evolution SQL statements to update database structures when XML schemas change. The schema evolver component monitors schema changes and autonomously updates the database schema and instance documents without requiring manual intervention, thereby maintaining both adaptability to schema changes and reliability of data conformity.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system implements feedback mechanisms by tracking schema evolution changes and automatically generating corresponding SQL statements to update database structures. The schema evolver receives feedback about schema modifications and responds by executing appropriate evolution operations, ensuring that database structures remain consistent with the evolved XML schema while maintaining data conformity.

Inventive Principle:
Principle #23Feedback

2Reliability

If data copying is performed during schema evolution, then data integrity is improved, but productivity and time consumption worsen

Engineering Contradiction:
Improvedata integrityVSAvoidschema evolution efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs preliminary actions by generating evolution SQL statements in advance based on schema changes before actual data migration is needed. The schema evolver prepares the necessary SQL statements that will update database structures to match the evolved XML schema, allowing for efficient in-place evolution without requiring data copying operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses a virtual copy mechanism through SQL statements rather than physical data copying. The evolution SQL statements create a logical representation of the updated schema structure, allowing database structures to be transformed in-place without duplicating actual data, thereby maintaining data integrity while improving productivity.

Inventive Principle:
Principle #26Copying

3Productivity

If in-place evolution is implemented, then productivity is improved, but complexity of ensuring conformity worsens

Engineering Contradiction:
Improveschema evolution efficiencyVSAvoidconformity management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The schema evolver acts as an intermediary component between the XML schema evolution process and the database structure. It translates schema changes into appropriate SQL evolution statements, managing the complexity of conformity assurance by providing a standardized interface that handles schema-to-database mapping automatically.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system manages conformity complexity by changing parameters of database structures through SQL statements to match the evolved XML schema. The schema evolver automatically adjusts database schema parameters such as element names, data types, and structural relationships to conform to the new XML schema without requiring complex manual coordination.

Inventive Principle:
Principle #35Parameter changes

4Ease of operation

If automatic evolution SQL statements are generated, then ease of operation is improved, but risk of errors worsens

Engineering Contradiction:
Improveschema evolution automationVSAvoidevolution correctness
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The system implements feedback validation by checking whether generated evolution SQL statements correctly reflect the intended schema changes. The schema evolver monitors the evolution process and validates that the generated SQL statements maintain data conformity with the evolved XML schema, reducing the risk of errors while maintaining ease of automation.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system performs preliminary validation of evolution SQL statements before execution to ensure correctness. By checking the generated statements against the evolved XML schema in advance, the system reduces the risk of errors while maintaining the ease of automatic operation, ensuring that only valid evolution operations are executed.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8219569B2In-place evolution of XML schemes
Publication Date: 2012.07.10 ORACLE INT CORP
  • US8219569B2 patent drawing
  • US8219569B2 patent drawing
  • US8219569B2 patent drawing

AI summary

A method and system for the in-place evolution of XML schemas is disclosed. To automatically evolve an existing XML schema, a schema evolver receives both an existing XML schema and an XML document as input. The XML document indicates changes to be made to the existing XML schema. Based on the existing XML schema and the XML document, the schema evolver evolves the existing XML schema into a new XML schema that incorporates the changes indicated in the XML document. According to one aspect, the schema evolver generates one or more SQL statements based on the new XML schema. The SQL statements, when executed by a database server, cause the database server to evolve database structures that were based on the formerly existing XML schema so that the database structures conform to the new XML schema. This is accomplished “in place,” without copying the data in the database structures.