Альтернативная версия World Wide Web с использованием разных языков разметки
Теоретически, возможна версия Интернета с использованием TeX или Markdown, верно? (Хорошо, сайты MD, вероятно, не настолько продвинуты, но не берите в голову).
Итак, мой вопрос состоит из двух частей:
- Появилось ли это как идея раньше и
- Кто-то даже пытался понять это (возможно, в первые дни Интернета)
Заранее спасибо.
2 ответа
Идея расширения браузеров для поддержки других словарей, кроме только HTML, путем повторного определения самого HTML с помощью метаязыка разметки была первоначальной заявленной целью XML. Как говорится в пресс-релизе спецификации XML 1.0 (от 1998 года)
Расширяемый язык разметки (XML) является подмножеством SGML, полностью описанным в этом документе. Его цель - обеспечить обслуживание, прием и обработку универсального SGML в Интернете так, как это теперь возможно с HTML. XML был разработан для простоты реализации и для взаимодействия как с SGML, так и с HTML.
В частности, словари SVG и MathML были созданы с использованием XML в качестве метаязыка (например, для определения элементов и атрибутов SVG и MathML, соответственно).
Однако, хотя XML был успешным во многих приложениях вне браузеров, XHTML2 (HTML, переопределенный как словарь XML с дополнительными функциями, такими как XForms) не был принят браузерами, и производители браузеров под руководством Иана Хиксона (из Google) создали ЧТО Рабочая группа в 2004 году приступила к процессу спецификации того, что стало HTML 5, как мы его знаем сегодня. HTML 5 позволил использовать словари SVG и MathML (которые были определены с использованием XML) непосредственно в HTML, разрешив, например,. Пустые элементы в стиле XML, такие как </g>
в этих иностранных словарях.
Главная особенность HTML 5 заключается в том, что он обратно совместим с огромной существующей базой HTML-контента, тогда как XHTML потребовал бы принятия гораздо более ограниченных правил синтаксического анализа XML. Например, HTML допускает вывод тега / пропуск тега, пустые элементы (пустые элементы в стиле SGML без тега конечного элемента) и различные формы минимизации атрибутов.
HTML (вплоть до Версии 4) изначально указывался с использованием SGML в качестве метаязыка разметки, и SGML остается единственным метаязыком разметки, способным описывать правила синтаксического анализа HTML, в том числе для HTML 5 (см. Мою статью / доклад по адресу http://sgmljs.net/blog/blog1701.html для получения подробной информации). Хотя браузер никогда не поддерживал полный SGML изначально (будучи ограниченным как приложение SGML для обработки только жестко закодированного словаря HTML), идея использования большего количества функций SGML, чем поддерживается браузерами, была реализована в плагинах для браузера в 90-х годах, например в SoftQuad. Панорама SGML/HyTime браузер (ссылка с http://www.hytime.org/tools/index.html).
Пользовательские синтаксисы Wiki, такие как уценка, так же стары, как и сама цифровая обработка текста. SGML (начиная с 1986 года) позволяет вам определять контекстно-зависимые правила замены токенов для этой цели. Например, чтобы сделать формат SGML упрощенным фрагментом разметки в HTML, вы можете использовать пролог SGML следующим образом:
<!DOCTYPE p [
<!ELEMENT p - - ANY>
<!ELEMENT em - - (#PCDATA)>
<!ENTITY start-em '<em>'>
<!ENTITY end-em '</em>'>
<!SHORTREF in-p '*' start-em>
<!SHORTREF in-em '*' end-em>
<!USEMAP in-p p>
<!USEMAP in-em em>
]>
<p>The following text:
*this*
will be put into EM
element tags</p>
Даже с современными технологиями:
(а) браузеры понимают различные типы контента, помимо HTML, и будут отображать контент при условии, что он правильно идентифицирован в заголовке HTTP. (Помните Флэш?)
(б) в частности, они распознают XML, который может использовать любой словарь по вашему выбору, и вызовут предоставленную сервером таблицу стилей XSLT (или CSS) для визуализации содержимого XML.
Так что да, идея веб-поддержки нескольких типов контента вовсе не нова.