{'fraction_non_alphanumeric': 0.019103600293901544, 'fraction_numerical': 0.0029390154298310064, 'mean_word_length': 5.0265486725663715, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
A Syntax Definition Method for Visual Specification Languages

Today, the syntax of visual specification languages such as UML is typically defined using metamodeling techniques. However, this kind of syntax definition has drawbacks. In particular, graphic metamodels are not powerful enough, so they must be augmented by a constraint language. In this report, we present a text-based technique for the syntax definition of a graphic specification language. We exploit the fact that in a graphic specification language, most syntactic features are independent of the layout of the graph. So we map the graphic elements to textual ones and define the context-free syntax of this textual language in EBNF. Using our mapping, this grammar also defines the syntax of the graphic language. Simple spatial and context-sensitive constraints are then added by attributing the context-free grammar. Finally, for handling complex structural and dynamic information in the syntax, we give a set of operational rules that work on the attributed EBNF. We explain our syntax definition technique by applying it to the modeling language ADORA which is being developed in our research group. We also briefly discuss the application of our technique to the syntax definition of UML. Copyright c © 2003 by Institut für Informatik der Universität Zürich, Yong Xia and Martin Glinz