Web application development platform with relationship modeling
First Claim
1. A computer-implemented method comprising:
- receiving one or more base data files at a platform server;
transforming the base data files into one or more application data files, the application data files being defined in a declarative application modeling language, the declarative application modeling language comprising named data elements arranged in a hierarchical structure, the names and structure of the named data elements describing an application user interface and behavior, the declarative application modeling language including a structure for managing rules that define in part the behavior of an application, the rules comprising at least a given action and a given action trigger, the given action being automatically performed by the application upon the occurrence of the given action trigger, the given action trigger being dynamically evaluated during execution of the application and based in part on user actions, wherein the base data files are input into one or more data transformations to yield one or more application data files, each application data file describing a different application user interface and behavior corresponding to different web applications;
compiling, by execution of a data processor, each application data file into the corresponding different web applications; and
causing the web applications to be served to a browser, wherein the web application caches application states using state identifiers.
0 Assignments
0 Petitions
Accused Products
Abstract
A system and method for dynamically creating web applications from data is described. Simple data is transformed into a declarative application data model that is then parsed by a server and compiled into a functional web application. Application functionality is partly determined by rules applied to web application objects in response to user actions. These rules are triggered by various cues, including user actions and relationships among objects in the web applications. A web application is considered an n-dimensional problem space, and relationships among application objects can be modeled using set theory. The status of a particular relationship among objects and user actions can trigger specific application behavior. Additionally application behavior can be triggered in other ways, like conditions in arbitrary scripts or combinations of multiple triggers combined using logical connectives.
104 Citations
26 Claims
-
1. A computer-implemented method comprising:
-
receiving one or more base data files at a platform server; transforming the base data files into one or more application data files, the application data files being defined in a declarative application modeling language, the declarative application modeling language comprising named data elements arranged in a hierarchical structure, the names and structure of the named data elements describing an application user interface and behavior, the declarative application modeling language including a structure for managing rules that define in part the behavior of an application, the rules comprising at least a given action and a given action trigger, the given action being automatically performed by the application upon the occurrence of the given action trigger, the given action trigger being dynamically evaluated during execution of the application and based in part on user actions, wherein the base data files are input into one or more data transformations to yield one or more application data files, each application data file describing a different application user interface and behavior corresponding to different web applications; compiling, by execution of a data processor, each application data file into the corresponding different web applications; and causing the web applications to be served to a browser, wherein the web application caches application states using state identifiers. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
-
Specification