XForms

Бесплатно

Сайт: www.w3.org/MarkUp/Forms

XForms — это спецификация XML-маркирования, предназначенная для декларативного определения форм и формоподобных приложений в веб-среде. Она отделяет модель данных, представление и поведение управления, позволяя описывать структуру данных, привязку к элементам управления, правила валидации и логику обработки без привязки к конкретной реализации интерфейса. XForms был разработан как эволюция классических HTML-форм с целью повышения гибкости, повторного использования и поддержки сложных сценариев ввода данных.

В основе XForms лежит модель данных на базе XML, которая может содержать повторяющиеся группы, вложенные структуры и типы данных, а также декларативные выражения для ограничений и вычислений. Представление формирует набор визуальных и управляющих элементов, привязанных к узлам модели, а механизм действий и событий обеспечивает реактивное обновление, валидацию и подготовку данных к отправке в формате XML или JSON. Спецификация позволяет реализовывать клиентские и серверные сценарии обработки, включая локальную проверку ввода и динамическое изменение структуры формы.

  • Декларативность: отделение модели данных от представления и логики управления.
  • Модель на базе XML: структурированное хранение данных с поддержкой вложенности и повторений.
  • Привязка данных: элементы управления привязываются к узлам модели через binding.
  • Валидация и ограничения: декларативные правила для проверки типов, диапазонов и регулярных выражений.
  • Вычисления: автоматическое вычисление значений на основе выражений, обновляющееся при изменении зависимостей.
  • Повторяющиеся блоки: поддержка динамического множества записей (repeat) для списков и таблиц.
  • События и действия: реакция на пользовательские и системные события с выполнением предопределённых действий.
  • Множественные представления: возможность создавать несколько интерфейсов для одной модели данных.
  • Форматы обмена: сериализация данных в XML; часто используется преобразование в JSON на стороне сервера или клиента.
  • Интеграция с веб-технологиями: взаимодействие с XSLT, XPath и другими стандартами для обработки и трансформации данных.
Подробнее