PowerForms: Declarative client-side form field validation
World Wide Web
Developing a Declarative Rule Language for Applications in Product Configuration
PADL '99 Proceedings of the First International Workshop on Practical Aspects of Declarative Languages
PADL '00 Proceedings of the Second International Workshop on Practical Aspects of Declarative Languages
Declarative specification of Web sites with S
The VLDB Journal — The International Journal on Very Large Data Bases
Declarative specification of Web applications exploiting Web services and workflows
SIGMOD '04 Proceedings of the 2004 ACM SIGMOD international conference on Management of data
Hilda: A High-Level Language for Data-DrivenWeb Applications
ICDE '06 Proceedings of the 22nd International Conference on Data Engineering
HOP: achieving efficient anonymity in MANETs by combining HIP, OLSR, and pseudonyms
Companion to the 21st ACM SIGPLAN symposium on Object-oriented programming systems, languages, and applications
A unified platform for data driven web applications with automatic client-server partitioning
Proceedings of the 16th international conference on World Wide Web
Secure web applications via automatic partitioning
Proceedings of twenty-first ACM SIGOPS symposium on Operating systems principles
An introduction to logical spreadsheets
The Knowledge Engineering Review
Predicalc: A logical spreadsheet management system
The Knowledge Engineering Review
Elements of Argumentation
Declarative Programming of User Interfaces
PADL '09 Proceedings of the 11th International Symposium on Practical Aspects of Declarative Languages
Inconsistencies, negations and changes in ontologies
AAAI'06 proceedings of the 21st national conference on Artificial intelligence - Volume 2
A logical framework for configuration software
PPDP '09 Proceedings of the 11th ACM SIGPLAN conference on Principles and practice of declarative programming
Practical first-order argumentation
AAAI'05 Proceedings of the 20th national conference on Artificial intelligence - Volume 2
An egalitarist fusion of incommensurable ranked belief bases under constraints
AAAI'07 Proceedings of the 22nd national conference on Artificial intelligence - Volume 1
Journal of Artificial Intelligence Research
A general framework for reasoning about inconsistency
IJCAI'07 Proceedings of the 20th international joint conference on Artifical intelligence
Reasoning with inconsistent ontologies
IJCAI'05 Proceedings of the 19th international joint conference on Artificial intelligence
Ripley: automatically securing web 2.0 applications through replicated execution
Proceedings of the 16th ACM conference on Computer and communications security
Links: web programming without tiers
FMCO'06 Proceedings of the 5th international conference on Formal methods for components and objects
Unification of arrays in spreadsheets with logic programming
PADL'08 Proceedings of the 10th international conference on Practical aspects of declarative languages
High-level database programming in curry
PADL'08 Proceedings of the 10th international conference on Practical aspects of declarative languages
Algorithms for effective argumentation in classical propositional logic: a connection graph approach
FoIKS'08 Proceedings of the 5th international conference on Foundations of information and knowledge systems
An ER-based framework for declarative web programming
PADL'10 Proceedings of the 12th international conference on Practical Aspects of Declarative Languages
Hi-index | 0.01 |
Modern web forms interact with the user in real-time by detecting errors and filling-in implied values, which in terms of automated reasoning amounts to SAT solving and theorem proving. This paper presents PLATO, a compiler that automatically generates web forms that detect errors and fill-in implied values from declarative web form descriptions. Instead of writing HTML and JavaScript directly, web developers write an ontology in classical logic that describes the relationships between web form fields, and PLATO automatically generates HTML to display the form and browser scripts to implement the requisite SAT solving and theorem proving. We discuss PLATO's design and implementation and evaluate PLATO's performance both analytically and empirically.