logo
MathML (Mathematical Markup Language)

1.3.2 Механизм расширения HTML

Как отмечено выше, успех HTML привел к попыткам интеграции в Сеть различных типов данных и приложений. Каждый новый формат или приложение потенциально накладывал новые требования на HTML и производителей браузеров. Через некоторое время стало понятно, что необходим общий механизм для интеграции новых расширений в HTML. Изначально, рабочая группа начала работу с идеей о простом расширении HTML в духе первых попыток реализации поддержки математики в HTML 3.2 Но при ближайшем рассмотрении, это оказалось не такой уж и хорошей идеей. К моменту начала работ над MathML, XML стал доминирующим механизмом общих расширений.

XML расшифровывается как eXtensible Markup Language. Он создан как упрощенная версия SGML, метаязыка, используемого для определения грамматики и синтаксиса HTML. Одна из целей XML - возможность применения в Сети, и в данном случае он может быть рассмотрен как общий механизм расширений HTML. Как следует из его названия, расширяемость - основная черта XML. Авторы получили возможность объявлять и использовать новые элементы и атрибуты. В то же время, правила грамматики и синтаксиса XML требуют обеспечения регулярной структуры документа для реализации автоматической обработки и сопровождения больших объемов документов. Строго говоря, XML является удобным способом описания древовидных структур и, таким образом, может использоваться в качестве языка разметки.

К моменту образования первой W3C Math Working Group XML уже имел широкую поддержку среди фирм-разработчиков, включая основных производителей браузеров. Глобальный переход от HTML к XML важен для W3C. Промежуточным результатом работы в этом направлении стало появление рекомендации XHTML, которая определяет новую модульную форму HTML. MathML может рассматриваться как один из модулей, который очень хорошо соответствует новому формату XHTML.

Кроме того, другие XML-приложения для всех видов публикации и обработки документов обещают стать все более и более распространенными. Следовательно, как с теоретической так и с практической точки зрения, было бы логично определить MathML как XML-приложение.