IP Library › Granted Patent US 10,762,285
Granted Patent B2
US 10,762,285 · App. 15/440,996 · Granted Sep 1, 2020

Methods and systems for generating electronic forms

Inventors: Stephen Wolfram (Concord, MA); Michael Poulshock (Philadelphia, PA)
Assignee: Wolfram Research, Inc.
G06F40/174G06F3/0484G06F8/38G06F9/44G06F40/226
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 10,762,285
App. No.
15/440,996
Granted
Sep 1, 2020
Kind
B2
Abstract

In a method for generating an electronic form, programmer input in a programming language is received, the programmer input including specification data corresponding to an electronic form to be generated. The programmer input is evaluated to generate an electronic form object that includes one or more user-interface mechanisms for receiving the user input, including evaluating the specification data to generate code in the electronic form object, the generated code capable of being processed by an application to render the electronic form on or via a user interface device such that the electronic form serially prompts the user over time for multiple user inputs. The electronic form object is stored in a memory of or communicatively coupled to the one or more computers.

Claims (64)

1. A method for generating an electronic form, the method comprising:

receiving, at one or more computers, programmer input in a first programming language, the programmer input including i) a built-in function of the programming language corresponding to electronic form generation, and ii) specification data corresponding to an electronic form to be generated, the specification data including data indicating one or more properties of user input to be elicited by the electronic form to be generated, the one or more properties of user input including at least one data type of user input to be elicited by the electronic form;

evaluating, at one or more computers, the programmer input to generate an electronic form object that includes one or more user-interface mechanisms for receiving the user input, wherein

evaluating the programmer input to generate the electronic form object includes evaluating the specification data to generate code in the electronic form object in a second programming language that is different from the first programming language, the generated code conforming to the one or more properties of the user input to be elicited by the electronic form to be generated and capable of being processed by an application to render the electronic form on or via a user interface device such that the electronic form serially prompts the user over time for multiple user inputs using different types of user interface mechanisms appropriate for different data types of the multiple user inputs; and

storing the electronic form object in a memory of or communicatively coupled to the one or more computers, the electronic form object being stored for processing by an application to render the electronic form on or via a user interface device, wherein the electronic form object is configured to generate the electronic form such that electronic form serially prompts the user over time for multiple user inputs.

2. The method of claim 1 , wherein:

the programmer input includes data that indicates a function to be applied to one or more user inputs among the multiple user inputs; and

the electronic form object is generated such that the electronic form object is configured to apply, upon being processed by the application, the function to the one or more user inputs received via the one or more user-interface mechanisms.

3. The method of claim 2 , wherein the data that indicates the function to be applied to the one or more user inputs includes a built-in function of the programming language.

4. The method of claim 2 , wherein the data that indicates the function to be applied to the one or more user inputs corresponds to a user-defined function expressed using the programming language.

5. The method of claim 1 , wherein evaluating the programmer input to generate the electronic form object includes:

evaluating the specification data to generate the electronic form object such that the electronic form object is configured to:

render a first user interface mechanism to prompt the user for a first user input,

determine whether a second user interface mechanism to prompt the user for a second user input is to be rendered, and

render the second user interface mechanism only in response to determining that the second user interface mechanism is to be rendered.

6. The method of claim 5 , wherein evaluating the programmer input to generate the electronic form object includes:

evaluating the specification data to generate the electronic form object such that the electronic form object is configured to determine whether the second user interface mechanism is to be rendered using the first user input.

7. The method of claim 5 , wherein evaluating the programmer input to generate the electronic form object includes:

evaluating the specification data to generate the electronic form object such that the electronic form object is configured to determine whether the second user interface mechanism is to be rendered using information other than the first user input.

8. The method of claim 1 , wherein:

receiving the programmer input comprises receiving the programmer input as a parameter of a built-in function of the programming language, the built-in function corresponding to cloud deployment;

the method further includes evaluating, at one or more computers, the built-in function; and

in response to evaluating the built-in function, storing the electronic form object in the memory such that the electronic form object is accessible on the Internet via a web browser.

9. A system for generating an electronic form, comprising:

one or more processors; and

one or more memory devices coupled to the one or more processors, the one or more memories storing machine readable instructions that, when executed by the one or more processors, cause the one or more processors to:

receive programmer input in a first programming language, the programmer input including specification data corresponding to an electronic form to be generated, the specification data including data indicating one or more properties of user input to be elicited by the electronic form to be generated, the one or more properties of user input including at least one data type of user input to be elicited by the electronic form,

cause the programmer input to be evaluated to generate an electronic form object that includes one or more user-interface mechanisms for receiving the user input, wherein

evaluating the programmer input to generate the electronic form object includes evaluating the specification data to generate code in the electronic form object in a second programming language that is different from the first programming language, the generated code conforming to the one or more properties of the user input to be elicited by the electronic form to be generated and capable of being processed by an application to render the electronic form on or via a user interface device such that the electronic form serially prompts the user over time for multiple user inputs using different types of user interface mechanisms appropriate for different data types of the multiple user inputs, and

store the electronic form object in the one or more memories of the system and/or cause the electronic form object to be stored in one or more other memories communicatively coupled to the system, the electronic form object being stored for processing by an application to render the electronic form on or via a user interface device, wherein the electronic form object is configured to generate the electronic form such that electronic form serially prompts the user over time for multiple user inputs.

10. The system of claim 9 , wherein:

the programmer input includes data that indicates a function to be applied to one or more user inputs among the multiple user inputs; and

the one or more memories store machine readable instructions that, when executed by the one or more processors, cause the one or more processors to generate the electronic form object such that the electronic form object is configured to apply, upon being processed by the application, the function to the one or more user inputs received via the one or more user-interface mechanisms.

11. The system of claim 10 , wherein the data that indicates the function to be applied to the one or more user inputs includes a built-in function of the programming language.

12. The system of claim 10 , wherein the data that indicates the function to be applied to the one or more user inputs corresponds to a user-defined function expressed using the programming language.

13. The system of claim 9 , wherein the one or more memories store machine readable instructions that, when executed by the one or more processors, cause the one or more processors to:

evaluate the specification data to generate the electronic form object such that the electronic form object is configured to:

render a first user interface mechanism to prompt the user for a first user input,

determine whether a second user interface mechanism to prompt the user for a second user input is to be rendered, and

render the second user interface mechanism only in response to determining that the second user interface mechanism is to be rendered.

14. The system of claim 13 , wherein the one or more memories store machine readable instructions that, when executed by the one or more processors, cause the one or more processors to:

evaluate the specification data to generate the electronic form object such that the electronic form object is configured to determine whether the second user interface mechanism is to be rendered using the first user input.

15. The system of claim 13 , wherein the one or more memories store machine readable instructions that, when executed by the one or more processors, cause the one or more processors to:

evaluate the specification data to generate the electronic form object such that the electronic form object is configured to determine whether the second user interface mechanism is to be rendered using information other than the first user input.

16. The system of claim 9 , wherein:

receiving the programmer input comprises receiving the programmer input as a parameter of a built-in function of the programming language, the built-in function corresponding to cloud deployment;

the one or more memories store machine readable instructions that, when executed by the one or more processors, cause the one or more processors to:

evaluate the built-in function, and

in response to evaluating the built-in function, store the electronic form object in the memory such that the electronic form object is accessible on the Internet via a web browser.

17. A tangible, non-transitory computer readable medium or media storing instruction thereon that, when executed by one or more computer processors, cause the one or more computer processors to:

receive programmer input in a first programming language, the programmer input including specification data corresponding to an electronic form to be generated, the specification data including data indicating one or more properties of user input to be elicited by the electronic form to be generated, the one or more properties of user input including at least one data type of user input to be elicited by the electronic form,

cause the programmer input to be evaluated to generate an electronic form object that includes one or more user-interface mechanisms for receiving the user input, wherein

evaluating the programmer input to generate the electronic form object includes evaluating the specification data to generate code in the electronic form object in a second programming language that is different from the first programming language, the generated code conforming to the one or more properties of the user input to be elicited by the electronic form to be generated and capable of being processed by an application to render the electronic form on or via a user interface device such that the electronic form serially prompts the user over time for multiple user inputs using different types of user interface mechanisms appropriate for different data types of the multiple user inputs, and

cause the electronic form object to be stored in one or more memories of a computer system, the electronic form object being stored for processing by an application to render the electronic form on or via a user interface device, wherein the electronic form object is configured to generate the electronic form such that electronic form serially prompts the user over time for multiple user inputs.

18. The tangible, non-transitory computer readable medium or media of claim 17 , wherein:

the programmer input includes data that indicates a function to be applied to one or more user inputs among the multiple user inputs; and

the tangible, non-transitory computer readable medium or media store machine readable instructions that, when executed by the one or more processors, cause the one or more processors to generate the electronic form object such that the electronic form object is configured to apply, upon being processed by the application, the function to the one or more user inputs received via the one or more user-interface mechanisms.

19. The tangible, non-transitory computer readable medium or media of claim 17 , further storing machine readable instructions that, when executed by the one or more processors, cause the one or more processors to:

evaluate the specification data to generate the electronic form object such that the electronic form object is configured to:

render a first user interface mechanism to prompt the user for a first user input,

determine whether a second user interface mechanism to prompt the user for a second user input is to be rendered, and

render the second user interface mechanism only in response to determining that the second user interface mechanism is to be rendered.

20. The tangible, non-transitory computer readable medium or media of claim 19 , further storing machine readable instructions that, when executed by the one or more processors, cause the one or more processors to:

evaluate the specification data to generate the electronic form object such that the electronic form object is configured to determine whether the second user interface mechanism is to be rendered using the first user input.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 13, 2017
From: WOLFRAM, STEPHEN; POULSHOCK, MICHAEL
To: WOLFRAM RESEARCH, INC.
Reel/Frame 044103/0258 →
Continuity (2)
Provisional Application 62298981 · Feb 23, 2016
Related Publication 20170242835A1 · Aug 24, 2017
Cited By (1)
US 12,724,527