Как было указано выше, появление спецификации XForms было вызвано потребностью в расширяемых средствах, позволяющих включать в HTML-документы более богатые и более динамичные формы, а также необходимостью ускорить и упростить создание Web-форм. XForms можно рассматривать как модуль расширения XHTML (форма HTML, согласующаяся с XML). Спецификация XForms определяет предопределенный набор тегов, элементов и атрибутов, которые упрощают построение Web-форм. Браузеры с XForms-процессорами могут изображать XForms на клиентских машинах. Благодаря этому, разработчики могут избежать расходов на исполнение, которые вызваны повторными обращениями к серверу с целью модификации Web-формы. (При желании, для преобразования XForms-документов в HTML вы можете также использовать серверный XForms-интерпретатор.) Важно то, что XForms выделяют модель данных формы, вид и контроллер. Далее, эти части раскладываются на уровни, которые допускают более совершенное многократное использование. Например, XForms дифференцируют вид формы на ее презентацию (presentation) и предназначение (purpose).
Модель данных XForms позволяет объявлять единицы данных и отделять структуру от любого набора элементов управления, используемых для отображения значений этих данных. XForms описывают средства связывания этих единиц данных с управляющими элементами отдельно от самого объявления режима данных. Помимо этого, для каждой отдельной единицы данных определяются декларативные средства поведения при изменении значений.
Элементы управления XForms по своей природе абстрактны, поэтому для их различных реализаций можно выбирать разные платформы. Например, если в HTML-тег <radioButton> может иметь только одну презентацию на платформах, в XForms элемент управления <select1> (см.