Execution systems using unstructured data
Abstract
Execution systems using unstructured data include one or more processors performing steps including accessing a workflow document; identifying, from the workflow document, an action and one or more first mappings between the action and data in the working document; identifying an API function for performing the action; executing one or more first SQL queries specified in the first mappings; extracting, from results of the first SQL queries, input data for the action; preparing one or more parameters to pass to the API function based on the input data; executing the API function to perform one or more tasks; receiving result data from the API function; retrieving, from the workflow document, one or more second mappings between the action and the data in the working document; and writing, using the query module using one or more second SQL queries specified in the second mappings, the result data into the working document.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1. A portable computing device comprising:
a memory storing instructions; and
one or more processors coupled to the memory;
wherein the one or more processors, when executing the instructions, perform steps comprising:
accessing a workflow document;
identifying, from the workflow document, a first sub-process to be performed;
retrieving, from the workflow document, a first action associated with the first sub-process;
identifying an application programming interface (API) function for performing the first action, wherein the API function is identified in the first action;
retrieving, from the workflow document, one or more first mappings between the first action and data in a local working document stored in the memory, wherein the local working document is a JavaScript Object Notation (JSON) document;
executing, using a query module included in the memory, one or more first SQL queries on the data in the local working document without accessing a relational database, wherein the one or more first SQL queries are determined from the one or more first mappings;
extracting, from results of the one or more first SQL queries, input data for the first action;
preparing one or more parameters for the API function based on the extracted input data;
passing the one or more parameters to the API function;
executing the API function to perform one or more tasks using one or more input/output devices, wherein result data is determined based on the one or more tasks;
receiving the result data from the API function;
retrieving, from the workflow document, one or more second mappings between the first action and the data in the local working document; and
writing, using the query module using one or more second SQL queries on the local working document, the result data into the local working document without accessing a relational database, wherein the one or more second SQL queries are determined from the one or more second mappings.
2. The portable computing device of claim 1 , wherein the first action is performed in sequence with other actions based on a respective sequence number associated with the first action.
3. The portable computing device of claim 1 , wherein:
the portable computing device is a wearable device; and
the one or more input/output devices obtain data from an environment of the portable computing device.
4. The portable computing device of claim 3 , wherein the wearable device is waist-mounted, back mounted, wrist mounted, or arm mounted.
5. The portable computing device of claim 1 , wherein the one or more input/output devices comprise at least one of a heads up display, an imaging device, a microphone, or a speaker.
6. The portable computing device of claim 1 , wherein the data is organized as name-value pairs in the local working document.
7. The portable computing device of claim 1 , wherein the steps further comprise:
retrieving, from the workflow document, one or more first routings associated with the first sub-process, wherein each of the one or more first routings include a respective condition and a respective next sub-process, wherein the one or more first routings are ordered in a sequence;
retrieving, from the workflow document, one or more first data references to the data in the local working document, wherein the first data references are associated with the respective condition included in a first one in the sequence of the one or more first routings;
executing, using the query module, one or more third SQL queries on the local working document, wherein the one or more third SQL queries are determined from the one or more first data references;
extracting, from results of the one or more third SQL queries, data associated with the respective condition included in the first one in the sequence of the one or more first routings;
evaluating the respective condition included in the first one in the sequence of the one or more first routings based on the data extracted from the results of the one or more third SQL queries; and
when the respective condition included in the first one in the sequence of the one or more first routings is met, selecting the respective next sub-process included in the first one in the sequence of the one or more first routings as a second sub-process to be performed.
8. The portable computing device of claim 7 , wherein the steps further comprise:
when the respective condition included in the first one in the sequence of the one or more first routings is not met:
retrieving, from the workflow document, one or more second data references to the data in the local working document, wherein the second data references are associated with the respective condition included in a second one in the sequence of the one or more first routings;
executing, using the query module, one or more fourth SQL queries on the local working document, wherein the one or more fourth SQL queries are determined from the one or more second data references;
extracting, from results of the one or more fourth SQL queries, data associated with the respective condition included in the second one in the sequence of the one or more first routings; and
evaluating the respective condition included in the second one in the sequence of the one or more first routings based on the data extracted from the results of the one or more fourth SQL queries.
9. The portable computing device of claim 7 , wherein the one or more first routings are ordered and evaluated in the sequence based on a respective sequence number associated with each of the one or more first routings.
10. The portable computing device of claim 1 , further comprising:
a heads up display; and
an imaging device;
wherein the one or more tasks comprise:
detecting an identifying code in an image captured using the imaging device;
determining whether the identifying code matches a code extracted from the results of the one or more first SQL queries; and
in response to the determining, displaying, on the heads up display, a matching or non-matching indicator so that the indicator appears to be superimposed in proximity to the identifying code as viewed through the heads up display.
11. A computer-implemented method performed by a workflow engine executing on a portable computing device, the method comprising:
accessing a workflow document;
identifying, from the workflow document, a first sub-process to be performed;
retrieving, from the workflow document, a first action associated with the first sub-process;
identifying an application programming interface (API) function for performing the first action, wherein the API function is identified in the first action;
retrieving, from the workflow document, one or more first mappings between the first action and data in a local working document, wherein the local working document is a JavaScript Object Notation (JSON) document;
executing, using a query module, one or more first SQL queries on the data in the local working document without accessing a relational database, wherein the one or more first SQL queries are determined from the one or more first mappings;
extracting, from results of the one or more first SQL queries, input data for the first action;
preparing one or more parameters for the API function based on the extracted input data;
passing the one or more parameters to the API function;
executing, by the workflow engine, the API function to perform one or more tasks using one or more input/output devices, wherein result data is determined based on the one or more tasks;
receiving the result data from the API function;
retrieving, from the workflow document, one or more second mappings between the first action and the data in the local working document; and
writing, using the query module using one or more second SQL queries on the local working document, the result data into the local working document without accessing a relational database, wherein the one or more second SQL queries are determined from one or more second mappings.
12. The computer-implemented method of claim 11 , wherein the first action is performed in sequence with other actions based on a respective sequence number associated with the first action.
13. The computer-implemented method of claim 11 , wherein:
the portable computing device is a wearable device; and
the one or more input/output devices obtain data from an environment of the portable computing device.
14. The computer-implemented method of claim 11 , further comprising:
retrieving, from the workflow document, one or more first routings associated with the first sub-process, wherein each of the one or more first routings include a respective condition and a respective next sub-process, wherein the one or more first routings are ordered in a sequence;
retrieving, from the workflow document, one or more first data references to the data in the local working document, wherein the first data references are associated with the respective condition included in a first one in the sequence of the one or more first routings;
executing, using the query module, one or more third SQL queries on the local working document, wherein the one or more third SQL queries are determined from the one or more first data references;
extracting, from results of the one or more third SQL queries, data associated with the respective condition included in the first one in the sequence of the one or more first routings;
evaluating, the respective condition included in the first one in the sequence of the one or more first routings based on the data extracted from the results of the one or more third SQL queries;
when the respective condition included in the first one in the sequence of the one or more first routings is met, selecting the respective next sub-process included in the first one in the sequence of the one or more first routings as a second sub-process to be performed; and
when the respective condition included in the first one in the sequence of the one or more first routings is not met:
retrieving from the workflow document, one or more second data references to the data in the local working document, wherein the second data references are associated with the respective condition included in a second one in the sequence of the one or more first routings;
executing, using the query module, one or more fourth SQL queries on the local working document, wherein the one or more fourth SQL queries are determined from the one or more second data references;
extracting, from results of the one or more fourth SQL queries, data associated with the respective condition included in the second one in the sequence of the one or more first routings; and
evaluating the respective condition included in the second one in the sequence of the one or more first routings based on the data extracted from the results of the one or more fourth SQL queries.
15. The computer-implemented method of claim 14 , further comprising evaluating the one or more first routings in the sequence based on a respective sequence number associated with each of the one or more first routings.
16. One or more non-transitory machine-readable media comprising a plurality of machine-readable instructions which, when executed by one or more processors of a portable computing device, cause the one or more processors to perform steps comprising:
accessing a workflow document;
identifying, from the workflow document, a first sub-process to be performed;
retrieving, from the workflow document, a first action associated with the first sub-process;
identifying an application programming interface (API) function for performing the first action, wherein the API function is identified in the first action;
retrieving, from the workflow document, one or more first mappings between the first action and data in a local working document, wherein the local working document is a JavaScript Object Notation (JSON) document;
executing, using a query module, one or more first SQL queries on the data in the local working document without accessing a relational database, wherein the one or more first SQL queries are determined from the one or more first mappings;
extracting, from results of the one or more first SQL queries, input data for the first action;
preparing one or more parameters for the API function based on the extracted input data;
passing the one or more parameters to the API function;
executing the API function to perform one or more tasks using one or more input/output devices, wherein result data is determined based on the one or more tasks;
receiving the result data from the API function;
retrieving, from the workflow document, one or more second mappings between the first action and the data in the local working document; and
writing, using the query module using one or more second SQL queries on the local working document without accessing a relational database, the result data into the local working document, wherein the one or more second SQL queries are determined from the one or more second mappings.
17. The one or more non-transitory machine-readable media of claim 16 , wherein the first action is performed in sequence with other actions based on a respective sequence number associated with the first action.
18. The one or more non-transitory machine-readable media of claim 16 , wherein:
the portable computing device is a wearable device; and
the one or more input/output devices obtain data from an environment of the portable computing device.
19. The one or more non-transitory machine-readable media of claim 16 , wherein the steps further comprise:
retrieving, from the workflow document, one or more first routings associated with the first sub-process, wherein each of the one or more first routings include a respective condition and a respective next sub-process, wherein the one or more first routings are ordered in a sequence;
retrieving, from the workflow document, one or more first data references to the data in the local working document, wherein the first data references are associated with the respective condition included in a first one in the sequence of the one or more first routings;
executing, using the query module, one or more third SQL queries on the local working document, wherein the one or more third SQL queries are determined from the one or more first data references;
extracting, from results of the one or more third SQL queries, data associated with the respective condition included in the first one in the sequence of the one or more first routings;
evaluating the respective condition included in the first one in the sequence of the one or more first routings based on the data extracted from the results of the one or more third SQL queries;
when the respective condition included in the first one in the sequence of the one or more first routings is met, selecting the respective next sub-process included in the first one in the sequence of the one or more first routings as a second sub-process to be performed; and
when the respective condition included in the first one in the sequence of the one or more first routings is not met:
retrieving, from the workflow document, one or more second data references to the data in the local working document, wherein the second data references are associated with the respective condition included in a second one in the sequence of the one or more first routings;
executing, using the query module, one or more fourth SQL queries on the local working document, wherein the one or more fourth SQL queries are determined from the one or more second data references;
extracting, from results of the one or more fourth SQL queries, data associated with the respective condition included in the second one in the sequence of the one or more first routings; and
evaluating the respective condition included in the second one in the sequence of the one or more first routings based on the data extracted from the results of the one or more fourth SQL queries.
20. The one or more non-transitory machine-readable media of claim 19 , wherein the steps further comprise evaluating the one or more first routings in the sequence based on a respective sequence number associated with each of the one or more first routings.Join the waitlist — get patent alerts
Track US11741414B2 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.