2013Unpublished venueRequires access

Declarative Ajax Web Applications through SQL++ on a Unified Application State

Yupeng Fu, Kian Win Ong, Yannis Papakonstantinou

Open publisher page 2 citations

Abstract

Implementing even a conceptually simple web application requires an inordinate amount of time. FORWARD addresses three prob-lems that reduce developer productivity: (a) Impedance mismatch across the multiple languages used at different tiers of the appli-cation architecture. (b) Distributed data access across the multiple data sources of the application (SQL database, user input of the browser page, session data in the application server, etc). (c) Asyn-chronous, incremental modification of the pages, as performed by Ajax actions. FORWARD belongs to a novel family of web application frame-works that attack impedance mismatch by offering a single unify-ing language. FORWARD’s language is SQL++, a minimally ex-tended SQL. FORWARD’s architecture is based on two novel cor-nerstones: (a) A Unified Application State (UAS), which is a virtual database over the multiple data sources. The UAS is accessed via distributed SQL++ queries, therefore resolving the distributed data access problem. (b) Declarative page specifications, which treat the data displayed by pages as rendered SQL++ page queries. The re-sulting pages are automatically incrementally modified by FOR-WARD. User input on the page becomes part of the UAS. We show that SQL++ captures the semi-structured nature of web pages and subsumes the data models of two important data sources of the UAS: SQL databases and JavaScript components. We show that simple markup is sufficient for creating Ajax displays and for modeling user input on the page as UAS data sources. Finally, we discuss the page specification syntax and semantics that are needed in order to avoid race conditions and conflicts between the user input and the automated Ajax page modifications. FORWARD has been used in the development of eight commer-cial and academic applications. An alpha-release web-based IDE (itself built in FORWARD) enables development in the cloud.

About this research paper

What this paper is about

Implementing even a conceptually simple web application requires an inordinate amount of time. FORWARD addresses three prob-lems that reduce developer productivity: (a) Impedance mismatch across the multiple languages used at different tiers of the appli-cation architecture. (b) Distributed data access across the multiple data sources of the application (SQL database, user input of the browser page, session data in the application server, etc). (c) Asyn-chronous, incremental modification of the pages, as performed by Ajax actions. FORWARD belongs to a novel family of web application frame-works that attack impedance mismatch by offering a single unify-ing language. FORWARD’s language is SQL++, a minimally ex-tended SQL. FORWARD’s architecture is based on two novel cor-nerstones: (a) A Unified Application State (UAS), which is a virtual database over the multiple data sources. The UAS is accessed via distributed SQL++ queries, therefore resolving the distributed data access problem. (b) Declarative page specifications, which treat the data displayed by pages as rendered SQL++ page queries. The re-sulting pages are automatically incrementally modified by FOR-WARD. User input on the page becomes part of the UAS. We show that SQL++ captures the semi-structured nature of web pages and subsumes the data models of two important data sources of the UAS: SQL databases and JavaScript components. We show that simple markup is sufficient for creating Ajax displays and for modeling user input on the page as UAS data sources. Finally, we discuss the page specification syntax and semantics that are needed in order to avoid race conditions and conflicts between the user input and the automated Ajax page modifications. FORWARD has been used in the development of eight commer-cial and academic applications. An alpha-release web-based IDE (itself built in FORWARD) enables development in the cloud.

Why it matters

OpenAlex reports 2 citations for this work. Citation counts describe recorded attention and do not establish research quality.

Key contribution

A contribution statement is not available in the OpenAlex record.

Method / approach

Method details are not available in the OpenAlex metadata.

Main findings

Findings are not separately available in the OpenAlex metadata.

Limitations

Limitations are not available in the OpenAlex metadata.

Applications

Application details are not available in the OpenAlex metadata.

Available abstract

Implementing even a conceptually simple web application requires an inordinate amount of time. FORWARD addresses three prob-lems that reduce developer productivity: (a) Impedance mismatch across the multiple languages used at different tiers of the appli-cation architecture. (b) Distributed data access across the multiple data sources of the application (SQL database, user input of the browser page, session data in the application server, etc). (c) Asyn-chronous, incremental modification of the pages, as performed by Ajax actions. FORWARD belongs to a novel family of web application frame-works that attack impedance mismatch by offering a single unify-ing language. FORWARD’s language is SQL++, a minimally ex-tended SQL. FORWARD’s architecture is based on two novel cor-nerstones: (a) A Unified Application State (UAS), which is a virtual database over the multiple data sources. The UAS is accessed via distributed SQL++ queries, therefore resolving the distributed data access problem. (b) Declarative page specifications, which treat the data displayed by pages as rendered SQL++ page queries. The re-sulting pages are automatically incrementally modified by FOR-WARD. User input on the page becomes part of the UAS. We show that SQL++ captures the semi-structured nature of web pages and subsumes the data models of two important data sources of the UAS: SQL databases and JavaScript components. We show that simple markup is sufficient for creating Ajax displays and for modeling user input on the page as UAS data sources. Finally, we discuss the page specification syntax and semantics that are needed in order to avoid race conditions and conflicts between the user input and the automated Ajax page modifications. FORWARD has been used in the development of eight commer-cial and academic applications. An alpha-release web-based IDE (itself built in FORWARD) enables development in the cloud.

Key concepts: Computer science, Ajax, SQL, Web page, Database, SQL injection, Programming language, Stored procedure

Related papers

Back to paper searchBrowse research topicsOriginal source
Declarative Ajax Web Applications through SQL++ on a Unified Application State — Research Paper | ScholarLens