Constructing declarative componentized applications
First Claim
Patent Images
1. A method of constructing a software application comprising the steps of:
- representing a data model of the application as a relational model;
defining control logic of the application to specify each of a plurality of operations of the application as a mapping from a current state of the application data model and one or more current application inputs to a new state of the application data model and one or more application outputs, wherein the mapping is described by a graph of one or more components representing respective relational algebra operations selected from the group consisting of a relation-complement operation, a disjunction operation and a conjunction operation, wherein the operations of the application comprise a create operation, a retrieve operation, an update operation, and a delete operation; and
representing a user-interface of the application as a declarative view component model, wherein;
in the step of representing a user-interface, the user-interface comprises text entry fields;
a first component of the components representing respective relational algebra operations in the graph receives a text entry input from a text entry field of the user interface and feeds an output to a second component of the components representing respective relational algebra operations in the graph;
the second component further receives as an input contents of the application data model representing the current state of the application data model and outputs a new value to the application data model; and
each of the steps is performed at least in part by a computer; and
wherein;
in the create operation, the first component represents the conjunction operation, which is performed on the text entry input and another value, and the second component presents the disjunction operation, which is performed on the output from the first component and the contents of the application data model; and
in the update and delete operations, the first component represents the relation-complement operation, which is performed on the text entry input, and the second component represents the conjunction operation, which is performed on the output from the first component and the contents of the application data model.
2 Assignments
0 Petitions
Accused Products
Abstract
Techniques for constructing a software application are provided. A data model of the application is represented as a relational model. Control logic of the application is defined to specify each of a plurality of operations of the application as a mapping from a current state of the application data model and one or more current application inputs to a new state of the application data model and one or more application outputs, described by one or more relational algebra operations selected from the group consisting of a relation-complement operation, a disjunction operation and a conjunction operation.
35 Citations
15 Claims
-
1. A method of constructing a software application comprising the steps of:
-
representing a data model of the application as a relational model; defining control logic of the application to specify each of a plurality of operations of the application as a mapping from a current state of the application data model and one or more current application inputs to a new state of the application data model and one or more application outputs, wherein the mapping is described by a graph of one or more components representing respective relational algebra operations selected from the group consisting of a relation-complement operation, a disjunction operation and a conjunction operation, wherein the operations of the application comprise a create operation, a retrieve operation, an update operation, and a delete operation; and representing a user-interface of the application as a declarative view component model, wherein; in the step of representing a user-interface, the user-interface comprises text entry fields; a first component of the components representing respective relational algebra operations in the graph receives a text entry input from a text entry field of the user interface and feeds an output to a second component of the components representing respective relational algebra operations in the graph; the second component further receives as an input contents of the application data model representing the current state of the application data model and outputs a new value to the application data model; and each of the steps is performed at least in part by a computer; and
wherein;in the create operation, the first component represents the conjunction operation, which is performed on the text entry input and another value, and the second component presents the disjunction operation, which is performed on the output from the first component and the contents of the application data model; and in the update and delete operations, the first component represents the relation-complement operation, which is performed on the text entry input, and the second component represents the conjunction operation, which is performed on the output from the first component and the contents of the application data model. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. Apparatus for constructing a software application, comprising:
-
a memory; and at least one processor coupled to the memory and operative to; represent a data model of the application as a relational model; define control logic of the application to specify each of a plurality of operations of the application as a mapping from a current state of the application data model and one or more current application inputs to a new state of the application data model and one or more application outputs, wherein the mapping is described by a graph of one or more components representing respective relational algebra operations selected from the group consisting of a relation-complement operation, a disjunction operation and a conjunction operation, wherein the operations of the application comprise a create operation, a retrieve operation, an update operation, and a delete operation; and represent a user-interface of the application as a declarative view component model, wherein; in the operation of representing a user-interface, the user-interface comprises text entry fields; a first component of the components representing respective relational algebra operations in the graph receives a text entry input from a text entry field of the user interface and feeds an output to a second component of the components representing respective relational algebra operations in the graph; and the second component further receives as an input contents of the application data model representing the current state of the application data model and outputs a new value to the application data model; and
wherein;in the create operation, the first comment represents the conjunction operation, which is performed on the text entry input and another value, and the second component represents the disjunction operation, which is performed on the output from the first component and the contents of the application data model; and in the update and delete operations, the first component represents the relation-complement operation, which is performed on the text entry input, and the second component represents the conjunction operation, which is performed on the output from the first component and the contents of the application data model. - View Dependent Claims (11, 12, 13, 14)
-
-
15. An article of manufacture for constructing a software application, comprising a computer readable storage medium containing one or more programs which when executed by a processor implement the steps of:
-
representing a data model of the application as a relational model; defining control logic of the application to specify each of a plurality of operations of the application as a mapping from a current state of the application data model and one or more current application inputs to a new state of the application data model and one or more application outputs, wherein the mapping is described by a graph of one or more components representing respective relational algebra operations selected from the group consisting of a relation-complement operation, a disjunction operation and a conjunction operation, wherein the operations of the application comprise a create operation, a retrieve operation, an update operation, and a delete operation; and representing a user-interface of the application as a declarative view component model, wherein; in the step of representing a user-interface, the user-interface comprises text entry fields; a first component of the components representing respective relational algebra operations in the graph receives a text entry input from a text entry field of the user interface and feeds an output to a second component of the components representing respective relational algebra operations in the graph; and the second component further receives as an input contents of the application data model representing the current state of the application data model and outputs a new value to the application data model; and
wherein;in the create operation, the first component represents the conjunction operation, which is performed on the text entry input and another value, and the second component represents the disjunction operation, which is performed on the output from the first component and the contents of the application data model; and in the update and delete operations, the first component represents the relation-complement operation, which is performed on the text entry input and the second component represents the conjunction operation, which is performed on the output from the first component and the contents of the application data model.
-
Specification