Abstract
Data validation rules constitute the constraints that data input and processing must adhere to in addition to the structural constraints imposed by a data model. Web modeling tools do not make all types of data validation explicit in their models, hampering full code generation and model expressivity. Web application frameworks do not offer a consistent interface for data validation. In this paper, we present a solution for the integration of declarative data validation rules with user interface models in the domain of web applications, unifying syntax, mechanisms for error handling, and semantics of validation checks, and covering value well-formedness, data invariants, input assertions, and action assertions. We have implemented the approach in WebDSL, a domain-specific language for the definition of web applications.
Article PDF
Similar content being viewed by others
Avoid common mistakes on your manuscript.
References
Bauer, C., King, G. (eds): Java Persistence with Hibernate. Manning Publications Co., Greenwich (2006)
Book, M., Brückmann, T., Gruhn, V., Hülder, M.: Specification and control of interface responses to user input in rich internet applications. In: ASE ’09: Proceedings of the 2009 IEEE/ACM International Conference on Automated Software Engineering, pp. 321–331. IEEE Computer Society, Washington, DC (2009)
Boyer, J.M. (ed.): XForms 1.0, 3rd edn. W3C Recommendation (2007)
Brambilla, M., Comai, S., Fraternali, P., Matera, M.: Designing web applications with WebML and WebRatio. Web Eng Model Implement Web Appl. 221–260 (2007)
Brown, D., Davis, C., Stanlick, S. (eds): Struts 2 in Action. Manning Publ. Co., (2008)
Burns, E., Kitain, R. (eds): JavaServer Faces Specification. Version 1.2. Sun, (2006)
Ceri S., Fraternali P., Bongio A.: Web modeling language (WebML): a modeling language for designing Web sites. Comput. Netw. 33(1–6), 137–157 (2000)
Cuadrado, J., Molina, J.: Building domain-specific languages for model-driven development. IEEE Softw. 48–55 (2007)
DeMichiel, L., Keith, M. (eds.): JSR 220: Enterprise JavaBeans, Version 3.0. Java Persistence API. Sun Microsystems (2006)
Frasincar F., Houben G., Barna P.: HPG: the Hera Presentation Generator. J. Web Eng. 5(2), 175 (2006)
Groenewegen, D.M., Hemel, Z., Kats, L.C.L., Visser, E.: When frameworks let you down. platform-imposed constraints on the design and evolution of domain-specific languages. In: Gray, J., et al. (eds.) Domain Specific Modelling (DSM’08), pp. 64–66 (2008)
Groenewegen, D.M., Visser, E.: Declarative access control for WebDSL: Combining language integration and separation of concerns. In: Schwabe, D., Curbera, F. (eds.) International Conference on Web Engineering (ICWE’08), pp. 175–188 (2008)
Groenewegen, D.M., Visser, E.: Integration of data validation and user interface concerns in a DSL for web applications. In: van den Brand, M., Gray, J. (eds.) Software Language Engineering, Second International Conference, SLE 2009, Denver, USA, October, 2009. Revised Selected Short Papers, Lecture Notes in Computer Science. Springer, Berlin (2009)
Hemel, Z., Verhaaf, R., Visser, E.: WebWorkFlow: an object-oriented workflow modeling language for web applications. In: Czarnecki, K., et al. (eds.) Proceedings of the 11th International Conference on Model Driven Engineering Languages and Systems (MODELS 2008). LNCS, vol. 5301, pp. 113–127. Springer, Berlin (2008)
Järvi, J., Marcus, M., Parent, S., Freeman, J., Smith, J.N.: Property models: from incidental algorithms to reusable components. In: GPCE, pp. 89–98 (2008)
Kats, L.C.L., Bravenboer, M., Visser, E.: Mixing source and bytecode. A case for compilation by normalization. In: Kiczales, G., (Ed.) Object-Oriented Programing, Systems, Languages, and Applications (OOPSLA 2008), pp. 91–108. ACM Press, New York (2008)
Kittoli, S. (eds): Seam - Contextual Components. A Framework for Enterprise Java. LLC , Red Hat Middleware (2008)
Koch, N., Kraus, A., Hennicker, R.: The authoring process of the UML-based web engineering approach. In: Web-Oriented Software Technology (2001)
Kraus, A., Knapp, A., Koch, N.: Model-driven generation of web applications in UWE. In: Model-Driven Web Engineering (MDWE 2007), Como, Italy (July 2007)
Lima, F., Schwabe, D.: Application modeling for the semantic web. In: Latin American Web Congress (LA-WEB’03), p. 93. IEEE Computer Society, Washington, DC, USA (2003)
MacDonald, M., Szpuszta, M.: Pro ASP. NET 3.5 in C# 2008. Apress (2007)
Meijer, E., Beckman, B., Bierman, G.: LINQ: reconciling object, relations and XML in the .NET framework. In: Management of Data, pp. 706–706 (2006)
Nunes, D., Schwabe, D.: Rapid prototyping of web applications combining domain specific languages and model driven design. In: International Conference on Web Engineering (ICWE’06), pp. 153–160 (2006)
Object Constraint Language, OMG Available Specification, Version 2.0 (2006)
Pastor, O., Fons, J., Pelechano, V.: OOWS: A method to develop web applications from web-oriented conceptual models. In: Web Oriented Software Technology (IWWOST’03), pp. 65–70 (2003)
Ruby, S., Thomas, D., Heinemeier Hansson, D.: Agile Web Development with Rails, 3rd edn. Pragmatic Programmers, Raleigh (2009)
Scaffidi, C., Myers, B.A., Shaw, M.: Topes: reusable abstractions for validating data. In: ICSE’08, pp. 1–10 (2008)
Schwabe, D., Rossi, G., Barbosa, S.: Systematic hypermedia application design with OOHDM. In: Proceedings of the Seventh ACM Conference on Hypertext, pp. 116–128. ACM Press, New York (1996)
van der Sluijs, K., Houben, G., Broekstra, J., Casteleyn, S.: Hera-S: web design using sesame. In: International Conference on Web Engineering (ICWE’06), pp. 337–344 (2006)
Vdovjak R., Frasincar F., Houben G., Barna P.: Engineering semantic web information systems in hera. J Web Eng 2, 3–26 (2003)
Visser E.: WebDSL: a case study in domain-specific language engineering. In: Lämmel, R., Visser, J., Saraiva, J. (eds) Generative and transformational techniques in software engineering (GTTSE’07). In: LNCS, vol. 5235, pp. 291–373. Springer, Berlin (2008)
Visser, E., et al.: WebDSL. http://webdsl.org (2007–2009)
Open Access
This article is distributed under the terms of the Creative Commons Attribution Noncommercial License which permits any noncommercial use, distribution, and reproduction in any medium, provided the original author(s) and source are credited.
Author information
Authors and Affiliations
Corresponding author
Additional information
Communicated by Gustavo Rossi, Nora Koch, Geert-Jan Houben, and Antonio Vallecillo.
Rights and permissions
Open Access This is an open access article distributed under the terms of the Creative Commons Attribution Noncommercial License (https://creativecommons.org/licenses/by-nc/2.0), which permits any noncommercial use, distribution, and reproduction in any medium, provided the original author(s) and source are credited.
About this article
Cite this article
Groenewegen, D.M., Visser, E. Integration of data validation and user interface concerns in a DSL for web applications. Softw Syst Model 12, 35–52 (2013). https://doi.org/10.1007/s10270-010-0173-9
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10270-010-0173-9