МАРИЯ XML - MARIA XML

МАРИЯ (Модельно-ориентированный язык для интерактивных приложений)[1] универсальный, декларативный, несколько уровень абстракции, XML -основан язык разметки пользовательского интерфейса за моделирование интерактивные приложения в вездесущий среды.

МАРИЯ один из языков, который был представлен на стандартизацию в W3C.[2]

Абстрактный пользовательский интерфейс

МАРИЯ Абстрактный пользовательский интерфейс (AUI) уровень описывает UI только через семантику взаимодействия, без ссылки на конкретную возможность устройства, модальность взаимодействия или технологию реализации. AUI состоит из различных презентаций, которые группируют элементы модели, представленные пользователю одновременно. Элементы модели бывают двух типов: Interactor или же InteractorComposition. Первый представляет каждый тип объекта взаимодействия с пользователем, последний группирует вместе элементы, которые имеют логические отношения.

По своей семантике интерактор относится к одному из следующих подтипов:

  • Выбор. Позволяет пользователю выбрать одно или несколько значений среди элементов предварительно определенного списка. В зависимости от количества значений, которые можно выбрать, интерактор может быть одиночным или множественным выбором.
  • Редактировать. Позволяет пользователю вручную редактировать объект, представленный интерактором, который может быть текстом (TextEdit), число (Числовое редактирование), позиция (PositionEdit) или универсальный объект (ObjectEdit).
  • Контроль. Позволяет пользователю переключаться между презентациями (Навигатор) или для активации функций пользовательского интерфейса (Активатор).
  • OnlyOutput. Представляет информацию, которая отправляется пользователю, на которую не влияют действия пользователя. Это может быть текст Описание который представляет различные типы медиа, Тревога, а Обратная связь или общий Объект.

К различным типам взаимодействующих композиций относятся:

  • Группировка: общая группа элементов взаимодействия.
  • Связь: группа, в которой два или более элемента связаны друг с другом.
  • Композитный Описание: представляет группу, предназначенную для представления содержимого через сочетание элементов описания и навигатора.
  • Повторитель который используется для повторения контента в соответствии с данными, полученными из общего источника данных

МАРИЯ позволяет описывать не только аспекты презентации, но и интерактивное поведение. Для этого он имеет различные функции:

  • Модель данных: описание типов данных, связанных с элементами интерфейса. Во время выполнения изменение состояния интерактора также изменит значение связанного элемента данных и наоборот, чтобы описать динамические изменения пользовательского интерфейса (корреляция между элементами пользовательского интерфейса, условный макет, условные связи между презентациями, формат входных значений и т. Д.) . Модель данных определяется с использованием стандарта Определение схемы XML конструкции.
  • Общий бэкэнд. Определение интерфейса содержит набор объявлений ExternalFunctions, которые представляют функциональные возможности, используемые пользовательским интерфейсом, но реализованные с помощью общей серверной поддержки приложения (например, веб-сервисов, библиотек кода, баз данных и т. Д.).
  • Модель событий. Каждое определение интерактора имеет ряд связанных событий, которые позволяют указать реакцию пользовательского интерфейса, запускаемую взаимодействием с пользователем.
  • Модель диалога. Модель диалога содержит конструкции для определения динамического поведения презентации, определяя, какие события могут запускаться в данный момент. Выражения диалога связаны с помощью CTT[3] операторы, чтобы определить их временные отношения.
  • Постоянное обновление полей. Можно указать, что данное поле должно периодически обновляться, вызывая внешнюю функцию.
  • Динамический набор элементов пользовательского интерфейса. Язык содержит конструкции для указания частичных обновлений презентации (динамическое изменение содержимого целых группировок) и возможность указать условную навигацию между презентациями.

Этот набор новых функций позволяет уже на абстрактном уровне иметь модель пользовательского интерфейса, не привязанную к деталям макета, но достаточно полную, чтобы рассуждать о том, как пользовательский интерфейс поддерживает взаимодействие с пользователем и серверную часть приложения.

Конкретный пользовательский интерфейс

А Конкретный пользовательский интерфейс (CUI) в MARIA предоставляет зависимые от платформы, но не зависящие от языка реализации детали пользовательского интерфейса. Платформа - это набор программных и аппаратных ресурсов взаимодействия, которые характеризуют данный набор устройств. В настоящее время MARIA поддерживает следующие платформы:

  • Рабочий стол CUI моделируют графические интерфейсы для настольных компьютеров.
  • Мобильный CUI моделируют графические интерфейсы для мобильных устройств.
  • Мультимодальный рабочий стол Интерфейсы модели CUI сочетают в себе графические и голосовые функции для настольных компьютеров.
  • Мультимодальный мобильный Интерфейсы модели CUI сочетают в себе графические и голосовые методы для мобильных устройств.
  • Вокал CUI взаимодействуют с рендерингом голосовых сообщений и распознаванием речи.

Каждая метамодель платформы является уточнением AUI, который определяет, как данный абстрактный интерактор может быть представлен на текущей платформе. Например, если мы рассмотрим абстрактный интерактор Single Choice, он может быть реализован (на графической платформе рабочего стола) с помощью переключателя, раскрывающегося списка или окна списка, в то время как на голосовой платформе он может быть отображен со списком голосовые сообщения для каждой опции, связанной с данным ключевым словом. То же самое относится и к композициям интерактора: на настольной платформе группировка может быть реализована с использованием цветов фона, границ и т. Д., Тогда как на вокальной платформе можно использовать звуки перед первым элементом группы. Определение модели можно использовать для создания (или получения с помощью генератора кода) окончательных реализаций на разных целевых языках.

Поддержка инструментов

Создание и редактирование моделей MARIA вместе с генерацией окончательного кода пользовательского интерфейса поддерживается Инструмент MARIAE.

Рекомендации

  1. ^ Патерно, Фабио; Санторо Кармен; Спано Лучио Давиде (2009). «MARIA: универсальный декларативный язык с множеством уровней абстракции для сервис-ориентированных приложений в повсеместных средах» (PDF). Транзакции ACM о взаимодействии компьютера и человека. 16 (4): 219–224. Получено 25 июля 2011.
  2. ^ Кантера Фонсека, Хосе Мануэль; Хуан М. Гонсалес Кальерос; Геррит Мейкснер; Фабио Патерно; Ярослав Пульманн; Дэйв Рэггетт; Даниэль Швабе; Жан Вандердонкт. «Итоговый отчет XG на основе модели». Получено 25 июля 2011.
  3. ^ Патерно, Фабио (2000). Модельное проектирование и оценка интерактивных приложений. Springer.