IP Library › Granted Patent US 12,242,795
Granted Patent B2
US 12,242,795 · App. 18/191,659 · Granted Mar 4, 2025

Generating target schema based on source schema and query expression

Inventors: John Anthony Reeve (Winchester, GB); Trevor Clifford Dolby (Minneapolis, MN); Andrew John Coleman (Petersfield, GB)
Assignee: International Business Machines Corporation
G06F40/154G06F16/84
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,242,795
App. No.
18/191,659
Granted
Mar 4, 2025
Kind
B2
Abstract

Generating a target schema is provided. The method comprises receiving an input schema that defines an input structure and receiving a transformation map. The transformation map and the input schema are both parsed, and a first tree for the map and a second tree for the schema are traversed in a step fashion. According to the traversal of the first tree and second tree, a target schema is generated that is valid for all possible instance documents that the transformation map would generate.

Claims (60)

1. A computer-implemented method for generating a target schema for message mapping, the method comprising:

using a number of processors to perform the steps of:

receiving an input schema that defines an input structure;

receiving a transformation map;

parsing the transformation map and the input schema;

traversing, in step fashion, a first tree for the transformation map and a second tree for the input schema; and

generating, from the input schema and transformation map according to the traversal of the first tree and second tree, a target schema that is valid for all possible instance documents that the transformation map would generate, wherein the transformation map is applied to the input schema itself without need to process any messages.

2. The method of claim 1 , wherein the transformation map is parsed into an abstract syntax tree.

3. The method of claim 1 , wherein the transformation map comprises executable code.

4. The method of claim 1 , wherein the input schema comprises a parseable document that defines a valid set of instance documents.

5. The method of claim 1 , wherein the input schema comprises one of:

JSON;

standard generalized markup language;

HTML;

XML;

Swift;

Markdown; and

data format description language.

6. The method of claim 1 , wherein the input schema comprises a natural language definition of possible instance documents, and wherein the target schema comprises a natural language description of outgoing instance documents.

7. The method of claim 1 , wherein generating target schema uses JSONata query language.

8. A system for generating a target schema for message mapping, the system comprising:

a storage device that stores program instructions;

one or more processors operably connected to the storage device and configured to execute the program instructions to cause the system to:

receive an input schema that defines an input structure;

receive a transformation map;

parse the transformation map and the input schema;

traverse, in step fashion, a first tree for the transformation map and a second tree for the input schema; and

generate, from the input schema and transformation map according to the traversal of the first tree and second tree, a target schema that is valid for all possible instance documents that the transformation map would generate, wherein the transformation map is applied to the input schema itself without need to process any messages.

9. The system of claim 8 , wherein the transformation map is parsed into an abstract syntax tree.

10. The system of claim 8 , wherein the transformation map comprises executable code.

11. The system of claim 8 , wherein the input schema comprises a parseable document that defines a valid set of instance documents.

12. The system of claim 8 , wherein the input schema comprises one of:

JSON;

standard generalized markup language;

HTML;

XML;

Swift;

Markdown; and

data format description language.

13. The system of claim 8 , wherein the input schema comprises a natural language definition of possible instance documents, and wherein the target schema comprises a natural language description of outgoing instance documents.

14. The system of claim 8 , wherein generating target schema uses JSONata query language.

15. A computer program product for generating a target schema for message mapping, the computer program product comprising:

a computer-readable storage medium having program instructions embodied thereon to perform the steps of:

receiving an input schema that defines an input structure;

receiving a transformation map;

parsing the transformation map and the input schema;

traversing, in step fashion, a first tree for the transformation map and a second tree for the input schema; and

generating, from the input schema and transformation map according to the traversal of the first tree and second tree, a target schema that is valid for all possible instance documents that the transformation map would generate, wherein the transformation map is applied to the input schema itself without need to process any messages.

16. The computer program product of claim 15 , wherein the transformation map is parsed into an abstract syntax tree.

17. The computer program product of claim 15 , wherein the transformation map comprises executable code.

18. The computer program product of claim 15 , wherein the input schema comprises a parseable document that defines a valid set of instance documents.

19. The computer program product of claim 15 , wherein the input schema comprises one of:

JSON;

standard generalized markup language;

HTML;

XML;

Swift;

Markdown; and

data format description language.

20. The computer program product of claim 15 , wherein the input schema comprises a natural language definition of possible instance documents, and wherein the target schema comprises a natural language description of outgoing instance documents.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 28, 2023
From: REEVE, JOHN ANTHONY; DOLBY, TREVOR CLIFFORD; COLEMAN, ANDREW JOHN
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 063136/0557 →
Continuity (1)
Related Publication 20240330571A1 · Oct 3, 2024
References Cited (23)
US 9626368B2 · Nicola et al. · 2017 [cited by applicant]
US 10102269B2 · Marin · 2018 [cited by applicant]
US 10127250B2 · Dingman et al. · 2018 [cited by applicant]
US 10747588B2 · Bussler · 2020 [cited by examiner]
US 10860548B2 · Roth et al. · 2020 [cited by applicant]
US 11099823B2 · Gass · 2021 [cited by examiner]
US 11341154B2 · Mitra · 2022 [cited by examiner]
US 20030182282A1 · Ripley · 2003 [cited by examiner]
US 20060235882A1 · Mateescu · 2006 [cited by examiner]
US 20070203931A1 · Ukelson · 2007 [cited by examiner]
US 20090006943A1 · Matheson · 2009 [cited by examiner]
US 20140324857A1 · Hazelwood · 2014 [cited by examiner]
US 20180121259A1 · Bussler · 2018 [cited by examiner]
US 20200356570A1 · Carr · 2020 [cited by examiner]
US 20200409970A1 · Dhayanithi · 2020 [cited by examiner]
US 20210192397A1 · Rastogi · 2021 [cited by examiner]
US 20210224295A1 · Coleman · 2021 [cited by examiner]
US 20230008057A1 · Hendry · 2023 [cited by examiner]
US 20240303241A1 · Gupta · 2024 [cited by examiner]
Stack Overflow, “transforming with xsl an xml schema template to an other xml schema template,” Stack Exchange Inc., last edited edited Jun. 14, 2011, accessed Mar. 27, 2023, 4 pages. https://stackoverflow.com/questions… [cited by applicant]
Stack Overflow, “XSLT to transform XSD to another XSD with minOccurs tags,” Stack Exchange Inc., last edited edited May 23, 2017, accessed Mar. 27, 2023, 2 pages. https://stackoverflow.com/questions/19361277/xslt-to-tra… [cited by applicant]
Wikipedia, “XML Schema (W3C),” Wikimedia Foundation, Inc., last edited Aug. 17, 2022, accessed Mar. 27, 2023, 7 pages. https://en.wikipedia.org/wiki/XML_Schema_(W3C). [cited by applicant]
Wikipedia, “XSLT,” Wikimedia Foundation, Inc., last edited Feb. 10, 2023, accessed on Mar. 27, 2023, 10 pages. https://en.wikipedia.org/wiki/XSLT. [cited by applicant]