Data transformation based on a technical design document
Data transformation is initiated by first obtaining a technical design document comprising non-machine-executable expressions of rules for transforming input data into output data. In one embodiment, a graphical user interface is employed to specify how to obtain the technical design document, as well as to designate locations of the input and output data. Thereafter, the technical design document is parsed such that the non-machine-executable expressions of the rules may serve as the basis for generating machine-executable transformation expressions. The resulting machine-executable transformation expressions may be optionally stored and subsequently applied to input data residing in one or more suitable repositories. In this manner, the instant techniques eliminate the need to capture the data transform rules using a data transformation tool, and instead rely on capturing the rules directly from the technical design documents, thereby improving efficiency and accuracy.
1. A method comprising:
obtaining, by a device, a document comprising a first type of expression and a second type of expression for transforming input data in a first format into output data in a second format,
the first type of expression being different than the second type of expression;
parsing, by the device, the document to generate a third type of expression,
the parsing including:
identifying a plurality of transformation rules;
identifying, using a first value of a first transformation rule of the plurality of transformation rules, a second value of the first transformation rule,
the second value being associated with the second type of expression;
parsing the identified second value to generate the third type of expression;
identifying, using a first value of a second transformation rule of the plurality of transformation rules, a second value of the second transformation rule,
the second value of the second transformation rule being associated with the first type of expression; and
using the identified second value of the second transformation rule, without parsing the second value of the second transformation rule, to generate the third type of expression; and
transforming, by the device, the input data into the output data based on the third type of expression,
the output data being in the second format.
2. The method of claim 1 , further comprising:
storing the third type of expression.
3. The method of claim 1 , where, when parsing the document, the method further comprises:
identifying, within the document, a source of the input data;
identifying, within the document, a destination of the output data; and
generating the third type of expression further based on the source of the input data and the destination of the output data.
4. The method of claim 1 , further comprising:
providing a graphical user interface to at least one processing device, where obtaining the document further comprises:
receiving an input, via the graphical user interface, indicating a location of the document; and
obtaining, based on the location, the document.
5. The method of claim 4 , further comprising:
receiving an input, via the graphical user interface, indicating a location of the input data; and
obtaining, based on the location of the input data, the input data.
6. The method of claim 5 , further comprising:
receiving an input, via the graphical user interface, indicating a location for the output data; and
transmitting the output data to the location for the output data.
7. The method of claim 1 , where the third type of expression comprises one or more query language expressions.
8. The method of claim 1 , where the plurality of transformation rules are associated with transforming clinical trial data into a standardized format.
9. A device comprising:
a memory to store instructions; and
at least one processor to execute the instructions to:
obtain a document comprising a first type of expression and a second type of expression for transforming input data in a first format into output data in a second format,
the first type of expression being different than the second type of expression;
parse the document to generate a third type of expression,
the one or more processors, when parsing the document, being further to:
identify a plurality of transformation rules;
identify, using a first value of a first transformation rule of the plurality of transformation rules, a second value of the first transformation rule,
the second value being associated with the second type of expression;
parse the identified second value to generate the third type of expression;
identify, using a first value of a second transformation rule of the plurality of transformation rules, a second value of the second transformation rule,
the second value of the second transformation rule being associated with the first type of expression; and
use the identified second value of the second transformation rule, without parsing the second value of the second transformation rule, to generate the third type of expression; and
transform the input data into the output data based on the third type of expression,
the output data being in the second format.
10. The device of claim 9 , where the one or more processors are further to:
store the third type of expression.
11. The device of claim 9 , where the one or more processors are further to:
provide a graphical user interface,
where the one or more processors, when obtaining the document, are further to:
receive an input, via the graphical user interface, indicating a location of the document; and
obtain, based on the location, the document.
12. The device of claim 11 , where the one or more processors are further to:
receive an input, via the graphical user interface, indicating a location of the input data; and
obtain, based on the location of the input data, the input data.
13. The device of claim 11 , where the one or more processors are further to:
receive an input, via the graphical user interface, indicating a location for the output data; and
transmit the output data to the location for the output data.
14. The device of claim 9 , where the third type of expression comprises one or more query language expressions.
15. A non-transitory computer-readable medium storing instructions, the instructions comprising:
one or more instructions which, when executed by at least one processor, cause the at least one processor to:
a document comprising a first type of expression and a second type of expression for transforming input data in a first format into output data in a second format,
the first type of expression being different than the second type of expression;
parse the document to generate a third type of expression
the one or more instructions to parse the document including:
one or more instructions to identify a plurality of transformation rules;
one or more instructions to identify, using a first value of a first transformation rule of the plurality of transformation rules, a second value of the first transformation rule, the second value being associated with the second type of expression;
one or more instructions to parse the identified second value to generate the third type of expression;
one or more instructions to identify, using a first value of a second transformation rule of the plurality of transformation rules, a second value of the second transformation rule,
the second value of the second transformation rule being associated with the first type of expression; and
one or more instructions to use the identified second value of the second transformation rule, without parsing the second value of the second transformation rule, to generate the third type of expression; and
transform the input data into the output data based on the third type of expression,
the output data being in the second format.