Введение

Язык веб-моделирования (WebML) - это визуальная нотация и методология для разработки веб-приложений, использующих большие объемы данных. Он предоставляет графическое средство для определения специфики дизайна веб-приложения в рамках структурированного процесса проектирования. Этот процесс может быть усовершенствован с помощью инструментов визуального дизайна. В 2013 году WebML был расширен, чтобы охватить более широкий спектр интерфейсов фронт-энда, что привело к разработке языка моделирования потоков взаимодействия (IFML). С тех пор IFML была признана стандартом Группой по управлению объектами (OMG). Этот подход включает в себя разработку пяти различных моделей: структуры, производных, композиции, навигации и презентации. Эти модели уточняются в ходе итеративного процесса.

Понятия

WebML позволяет дизайнерам выражать основные особенности сайта на высоком уровне, не обязуясь подробно описывать архитектурные детали. Концепции WebML связаны с графическим представлением, которое может поддерживаться инструментами CASE и передаваться нетехническим членам команды разработчиков сайта (например, с графическими дизайнерами и производителями контента). WebML также поддерживает синтаксис XML, который может быть введен в генераторы программного обеспечения для автоматического создания реализации веб-сайта. Спецификация сайта в WebML состоит из четырех ортогональных перспектив: Структурная модель: выражает содержание данных сайта с точки зрения соответствующих объектов и отношений. WebML не предлагает еще один язык для моделирования данных, но совместим с классическими обозначениями, такими как модель E / R, объектно-ориентированная модель ODMG и диаграммы классов UML. Модель гипертекста: описывает один или несколько гипертекстов, которые могут быть опубликованы на сайте. Каждый гипертекст определяет так называемый вид сайта. Описания видоизменения сайта, в свою очередь, состоят из двух подмоделей. Модель композиции: определяет, какие страницы составляют гипертекст, и какие единицы контента составляют страницу. Модель навигации: выражает, как страницы и единицы контента связаны, чтобы сформировать гипертекст. Ссылки являются либо неконтекстными, когда они соединяют семантически независимые страницы (например, страницу художника на домашнюю страницу сайта), либо контекстными, когда содержание целевой единицы ссылки зависит от содержания исходной единицы. Модель представления: выражает макет и графический вид страниц, независимо от устройства вывода и языка представления, с помощью абстрактного синтаксиса XML. Спецификации представления могут быть либо страницеспецифическими, либо общими. Модель персонализации: пользователи и группы пользователей явно моделируются в схеме структуры в виде предопределенных объектов, называемых пользователем и группой. Функции этих объектов могут использоваться для хранения группового или индивидуального контента, такого как предложения по покупкам, список любимых и ресурсы для графической настройки.

Структурная модель

Основными элементами модели структуры WebML являются сущности, которые являются контейнерами элементов данных, и отношения, которые позволяют семантическую связь сущностей. Субъекты имеют названные атрибуты с ассоциированным типом; свойства с несколькими встречами могут быть организованы с помощью многозначных компонентов, что соответствует классической части отношения. Сущности могут быть организованы в иерархии обобщения. Отношениям могут быть присвоены ограничения кардинальности и названия ролей.

Навигационная модель

Единицы и страницы не существуют в изоляции, но должны быть связаны, чтобы сформировать гипертекстовую структуру. Целью моделирования навигации является определение того, как подразделения и страницы связаны, чтобы сформировать гипертекст. Для этого WebML предоставляет понятие ссылки. Существует два варианта ссылок: Контекстные ссылки (соединяют единицы таким образом, чтобы они соответствовали семантике, выраженной структурной схемой приложения. Передает некоторую информацию (называемую контекстом) от исходной единицы к целевой единице. Контекст используется для определения фактического объекта или набора объектов, которые должны быть показаны в целевой единице). Неконтекстные ссылки (соединяют страницы совершенно свободно, т.е. независимо от единиц, которые они содержат, и семантических отношений между структурными понятиями, включенными в эти единицы. Синтаксически контекстные и неконтекстные ссылки обозначаются элементами INFOLINK и HYPERLINK, соответственно вложенными в единицы и страницы).

Модель персонализации

Персонализация - это определение контента или стиля презентации, основанное на данных профиля пользователя. В WebML можно определить единицы, страницы, их стили представления и представления сайта, чтобы учитывать конкретные данные пользователя или группы. Это может быть сделано двумя взаимодополняющими способами: Декларативная персонализация: дизайнер определяет производные концепции (например, сущности, атрибуты, многозначные компоненты), определение которых зависит от конкретных данных пользователя. Таким образом, настройка определяется декларативно; система заполняет информацию относительно каждого пользователя при вычислении содержания единиц. Процедура персонализации: WebML включает синтаксис XML для написания бизнес-правил, которые вычисляют и хранят пользовательскую информацию. Бизнес-правило - это тройная акция, которая определяет событие, которое должно быть отслежено, предварительное условие, которое должно быть проверено, когда событие происходит, и действие, которое должно быть предпринято, когда условие подтверждено. Типичными задачами, выполняемыми бизнес-правилами, являются распределение пользователей по группам пользователей на основе динамически собранной информации, уведомление пользователей о сообщениях при обновлении информационной базы (технология push), регистрация действий пользователей в специфических для пользователя структурах данных и т. д.

Модель презентации

Моделирование презентации связано с внешним видом страниц, идентифицированных с помощью моделирования композиции. Страницы WebML отображаются в соответствии со стилевым листом. Стилирование диктует макет страниц и элементы контента, которые должны быть вставлены в такой макет, и не зависит от фактического языка, используемого для отображения страницы. Для лучшей многоразовой удобства предоставляются две категории таблиц стилей: нетипированные таблицы стилей (также называемые моделями) описывают макет страницы независимо от его содержания и, таким образом, могут применяться независимо от отображения страницы к данной концепции; типированные таблицы стилей определяются с более тонкой детализацией и, таким образом, применяются только к страницам, описывающим конкретные концепции.