MARIA XML


MARIA is a universal, declarative, multiple abstraction level, XML-based user interface markup language for modelling interactive applications in ubiquitous environments.
MARIA one of the languages that has been submitted for standardization at W3C.

Abstract User Interface

The MARIA Abstract User Interface level describes a UI only through the semantics of the interaction, without referring to a particular device capability, interaction modality or implementation technology.
An AUI is composed by various Presentations that groups model elements presented to the user at once. The model elements are of two types: Interactor or InteractorComposition. The former represents every type of user interaction object, the latter groups together elements that have a logical relationship.
According to its semantics an interactor belongs to one of the following subtypes:
The different types of interactor-compositions are:
MARIA allows describing not only the presentation aspects but also the interactive behaviour. For this purpose it has various features:
This set of new features allows having already at the abstract level a model of the user interface that is not tied to layout details, but it is complete enough for reasoning on how UI supports both the user interaction and the application back end.

Concrete User Interface

A Concrete User Interface in MARIA provides platform-dependent but implementation language-independent details of a UI. A platform is a set of software and hardware interaction resources that characterize a given set of devices. MARIA currently supports the following platforms:
Each platform meta-model is a refinement of the AUI, which specifies how a given abstract interactor can be represented in the current platform. For instance, if we consider the abstract Single Choice interactor, it can be implemented with a radio button, a drop down list or a list box, while on the vocal platform it can be rendered with a list of vocal messages for each option associated to a given keyword.
The same applies for the interactor compositions: in a desktop platform a grouping can be implemented using background colours, borders etc., while in a vocal platform it is possible to use sounds before the first group element. The model definition can be exploited for creating final implementations in different target languages.

Tool Support

The creation and editing of MARIA models, together with the generation of the final UI code is supported by the .