MotivationIn the past years, web-based user interfaces have become increasingly popular front-ends for applications that shall be accessible anywhere, anytime, and on any device. Especially in the area of information systems that are designed to support complex business processes (both between enterprises, and between enterprises and their consumers), these applications have become increasingly sophisticated. The complexity of the business processes is typically mirrored by the complexity of the information system's navigation structure, which should enable users to perform their tasks ef ciently, yet be exible enough to deal with any contingencies that may occur within a process.To model such complex navigation structures for web applications, we use the Dialog Flow Notation (DFN), a visual language for modeling the interplay between user activities and application operations that characterize a web application [4]. One of the core features of the DFN is the notion of "dialog modules" that can be nested arbitrarily in order to reuse dialog sequences in different contexts throughout an application.While all DFN constructs were designed with careful regard to their conceptual and technical compatibility, the language's semantics have so far only been encoded operationally in the implementation of a Dialog Control Framework (DCF) that is capable of executing DFN-based dialog speci cations. However, these semantics are not easily accessible to other tool developers, who thus cannot be completely sure that particular language constructs express exactly what they mean, or that framework implementations for other platforms work exactly as they intended. This has become especially apparent in our recent development of tools [3], applications [5] and extensions [6] based on the notation. The integration of tools for creating, validating and executing DFN speci cations, and the parallel existence of several implementations of the framework, make precisely de ned and well-understood semantics indispensable.In this paper, we therefore introduce the formal semantics of the DFN's core constructs. After an informal overview of the main language features (Sect. 2), we formally introduce the elements of the DFN's syntax in terms of sets, relations and invariants that any DFN speci cation must conform to (Sect. 3). Then, we map this syntax onto an automaton model that realizes the run-time behavior the DFN describes (Sect. 4), and we show how these semantics can be implemented by tools in practice (Sect. 5). After an overview of the related work (Sect. 6), we discuss the bene ts of these semantics for the implementation of tools and applications employing the DFN (Sect. 7).
Notation OverviewThe DFN is a visual language for the speci cation of all possible user navigation steps and application reactions Eighth International Conference on Web Engineering 978-0-7695-3261-5/08 $25.00