Software & Systems Modeling

, Volume 12, Issue 1, pp 35–52

Integration of data validation and user interface concerns in a DSL for web applications

Open Access
Theme Section

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.

Keywords

Web application Domain-specific language Data validation 

References

  1. 1.
    Bauer, C., King, G. (eds): Java Persistence with Hibernate. Manning Publications Co., Greenwich (2006)Google Scholar
  2. 2.
    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)Google Scholar
  3. 3.
    Boyer, J.M. (ed.): XForms 1.0, 3rd edn. W3C Recommendation (2007)Google Scholar
  4. 4.
    Brambilla, M., Comai, S., Fraternali, P., Matera, M.: Designing web applications with WebML and WebRatio. Web Eng Model Implement Web Appl. 221–260 (2007)Google Scholar
  5. 5.
    Brown, D., Davis, C., Stanlick, S. (eds): Struts 2 in Action. Manning Publ. Co., (2008)Google Scholar
  6. 6.
    Burns, E., Kitain, R. (eds): JavaServer Faces Specification. Version 1.2. Sun, (2006)Google Scholar
  7. 7.
    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)CrossRefGoogle Scholar
  8. 8.
    Cuadrado, J., Molina, J.: Building domain-specific languages for model-driven development. IEEE Softw. 48–55 (2007)Google Scholar
  9. 9.
    DeMichiel, L., Keith, M. (eds.): JSR 220: Enterprise JavaBeans, Version 3.0. Java Persistence API. Sun Microsystems (2006)Google Scholar
  10. 10.
    Frasincar F., Houben G., Barna P.: HPG: the Hera Presentation Generator. J. Web Eng. 5(2), 175 (2006)Google Scholar
  11. 11.
    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)Google Scholar
  12. 12.
    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)Google Scholar
  13. 13.
    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)Google Scholar
  14. 14.
    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)Google Scholar
  15. 15.
    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)Google Scholar
  16. 16.
    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)Google Scholar
  17. 17.
    Kittoli, S. (eds): Seam - Contextual Components. A Framework for Enterprise Java. LLC , Red Hat Middleware (2008)Google Scholar
  18. 18.
    Koch, N., Kraus, A., Hennicker, R.: The authoring process of the UML-based web engineering approach. In: Web-Oriented Software Technology (2001)Google Scholar
  19. 19.
    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)Google Scholar
  20. 20.
    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)Google Scholar
  21. 21.
    MacDonald, M., Szpuszta, M.: Pro ASP. NET 3.5 in C# 2008. Apress (2007)Google Scholar
  22. 22.
    Meijer, E., Beckman, B., Bierman, G.: LINQ: reconciling object, relations and XML in the .NET framework. In: Management of Data, pp. 706–706 (2006)Google Scholar
  23. 23.
    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)Google Scholar
  24. 24.
    Object Constraint Language, OMG Available Specification, Version 2.0 (2006)Google Scholar
  25. 25.
    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)Google Scholar
  26. 26.
    Ruby, S., Thomas, D., Heinemeier Hansson, D.: Agile Web Development with Rails, 3rd edn. Pragmatic Programmers, Raleigh (2009)Google Scholar
  27. 27.
    Scaffidi, C., Myers, B.A., Shaw, M.: Topes: reusable abstractions for validating data. In: ICSE’08, pp. 1–10 (2008)Google Scholar
  28. 28.
    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)Google Scholar
  29. 29.
    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)Google Scholar
  30. 30.
    Vdovjak R., Frasincar F., Houben G., Barna P.: Engineering semantic web information systems in hera. J Web Eng 2, 3–26 (2003)Google Scholar
  31. 31.
    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)Google Scholar
  32. 32.
    Visser, E., et al.: WebDSL. http://webdsl.org (2007–2009)

Copyright information

© The Author(s) 2010

Authors and Affiliations

  1. 1.Software Engineering Research GroupDelft University of TechnologyDelftThe Netherlands

Personalised recommendations