Abstract
Model-based techniques place modeling at the cornerstone of software development. Because of the large number of domains and levels of abstraction one can find in software systems, a large number of modeling languages is necessary. Modeling languages need to be properly defined regarding concrete syntax in addition to abstract syntax and semantics. Most modeling languages use a graphical concrete syntax, and solutions to model those syntaxes appeared. If those solutions are convincing to support the rapid development of graphical modeling tools, they are often restrictive in the range of possible concrete syntaxes for a given abstract syntax, and rely on dedicated technologies. In previous works, we proposed such a solution based on a representation model which was more flexible in that it abstracted away purely graphical concerns. Those concerns include actual design for representation icons, how the design reacts to representation variations within the icons, possible interactions with an icon, and synchronization between the graphical representation and the graphical model. In this paper, we show how to solve those four last points using the SVG open standard for vector graphics. We propose to define representation icons by SVG templates complemented by layout constraints, a predefined and extensible library of possible user interactions using DOM, and a specific approach based on events to synchronize the graphical representation with the graphical model. Thus, our solution solves the concrete realization of an modeling environment cumulating advantages of a clear separation between abstract and concrete syntaxes at the modeling level, while benefiting from the expertise of the vector graphics community.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Kent, S.: Model Driven Engineering. In: Butler, M., Petre, L., Sere, K. (eds.) IFM 2002. LNCS, vol. 2335, pp. 286–298. Springer, Heidelberg (2002)
Iivari, J.: Why Are Case Tools Not Used? Commun. ACM 39(10), 94–103 (1996)
Pohjonen, R.: Boosting Embedded Systems Development with Domain-Specific Modeling. RTC Magazine, 57–61 (April 2003)
Harel, D., Rumpe, B.: Meaningful Modeling: What’s the Semantics of "Semantics"? Computer 37(10), 64–72 (2004)
Sun Microsystems: Metadata repository (MDR) (December 2005)
Scheidgen, M., Fischer, J.: Human comprehensible and machine processable specifications of operational semantics. In: Akehurst, D.H., Vogel, R., Paige, R.F. (eds.) ECMDA-FA. LNCS, vol. 4530, pp. 157–171. Springer, Heidelberg (2007)
Muller, P.A., Fleurey, F., Fondement, F., Hassenforder, M., Schneckenburger, R., Gérard, S., Jézéquel, J.M.: Model-Driven Analysis and Synthesis of Concrete Syntax. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 98–110. Springer, Heidelberg (2006)
Eclipse Consortium: Eclipse Graphical Editing Framework (GEF), http://www.eclipse.org/gef
Vernadat, F., Percebois, C., Farail, P., Vingerhoeds, R., Rossignol, A., Talpin, J.P., Chemouil, D.: The TOPCASED Project - A Toolkit in OPen-source for Critical Applications and SystEm Development. In: Data Systems In Aerospace (DASIA), Berlin, Germany, European Space Agency (ESA Publications) (May 2006), http://www.esa.int/publications
Guerra, E., de Lara, J.: Event-driven grammars: relating abstract and concrete levels of visual languages. In: Ehrig, H., Engels, G., Parisi-Presicce, F., Rozenberg, G. (eds.) ICGT 2004. LNCS, vol. 3256, pp. 317–347. Springer, Heidelberg (2004)
Ehrig, K., Ermel, C., Hänsgen, S., Taentzer, G.: Generation of visual editors as eclipse plug-ins. In: Redmiles, D.F., Ellman, T., Zisman, A. (eds.) ASE, pp. 134–143. ACM, New York (2005)
Clark, T., Evans, A., Sammut, P., Willans, J.: Applied Metamodelling: A Foundation for Language-Driven Development (2005)
Fondement, F., Baar, T.: Making Metamodels Aware of Concrete Syntax. In: Hartman, A., Kreische, D. (eds.) ECMDA 2005. LNCS, vol. 3748, pp. 190–204. Springer, Heidelberg (2005)
Costagliola, G., Lucia, A.D., Orefice, S., Polese, G.: A Classification Framework to Support the Design of Visual Languages. J. Vis. Lang. Comput. 13(6), 573–600 (2002)
Fondement, F.: Concrete syntax definition for modeling languages. PhD thesis, École Polytechnique Fédérale de Lausanne (EPFL) (2007)
Jackson, D., Northway, C.: Scalable Vector Graphics (SVG) Full 1.2 specification. World Wide Web Consortium, Working Draft WD-SVG12-20050413 (April 2005)
Borning, A., Marriott, K., Stuckey, P.J., Xiao, Y.: Solving Linear Arithmetic Constraints for User Interface Applications. In: ACM Symposium on User Interface Software and Technology, pp. 87–96 (1997)
McCormack, C.L., Marriott, K., Meyer, B.: Constraint SVG. In: WWW Alt. 2004: Proceedings of the 13th international World Wide Web conference on Alternate track papers & posters, pp. 310–311. ACM Press, New York (2004)
Hors, A.L., Hégaret, P.L., Wood, L., Nicol, G., Robie, J., Champion, M., Byrne, S.: Document Object Model (DOM) level 3 core specification. World Wide Web Consortium (April 2004)
Harel, D.: Statecharts: A Visual Formulation for Complex Systems. Science of Computer Programming 8(3), 231–274 (1987)
Adaptive Ltd., Boldsoft, France Telecom, International Business Machines Corporation, IONA Technologies, Object Management Group: Object Constraint Language specification, v2.0. OMG Document formal/06-05-01 (May 2006)
Apache Foundation - XML Graphics Project: Batik SVG toolkit, http://xmlgraphics.apache.org/batik/
Beaudoux, O.: DoPIdom: une approche de l’interaction et de la collaboration centrée sur les documents. In: IHM 2006: Proceedings of the 18th international conference on Association Francophone d’Interaction Homme-Machine, pp. 19–26. ACM Press, New York (2006)
Hong, F.: Provide behaviour to XML-SVG. Bachelor Semester Project, École Polytechnique Fédérale de Lausanne (EPFL) (2005)
Rohrer, F., Helg, F.: Synchronization between display objects and representation templates in graphical language construction. Bachelor Semester Project, École Polytechnique Fédérale de Lausanne (EPFL) (2006)
Java Community Process: Java(TM) Metadata Interface API specification 1.0 final release. JSR-000040 (June 2002)
Clark, J., De Rose, S.: XML path language (XPath). World Wide Web Consortium (November 1999)
Fondement, F.: SVG-based modeling tools (2007), http://fondement.free.fr/lgl/projects/probxs/
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2008 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Fondement, F. (2008). Graphical Concrete Syntax Rendering with SVG. In: Schieferdecker, I., Hartman, A. (eds) Model Driven Architecture – Foundations and Applications. ECMDA-FA 2008. Lecture Notes in Computer Science, vol 5095. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-69100-6_14
Download citation
DOI: https://doi.org/10.1007/978-3-540-69100-6_14
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-69095-5
Online ISBN: 978-3-540-69100-6
eBook Packages: Computer ScienceComputer Science (R0)