使用不同标记语言的万维网的替代版本

时间:2018-10-30 20:56:10

标签: html xml tex sgml troff

从理论上讲,可以使用TeX或Markdown版本的Internet,对吗? (好吧,医学博士网站可能没有那么高级,但是没关系)。

所以我的问题是双重的:

  1. 这曾经是一个主意吗?
  2. 有人甚至尝试意识到这一点(也许是在网络的早期)

谢谢。

2 个答案:

答案 0 :(得分:1)

即使采用当今的技术:

(a)浏览器不仅可以理解HTML的各种内容类型,而且可以在HTTP标头中正确识别的情况下呈现内容。 (还记得Flash吗?)

(b)特别是,他们识别出可以使用您自己选择的任何词汇的XML,并将调用服务器提供的XSLT(或CSS)样式表来呈现XML内容。

是的,网络支持多种内容类型的想法并不是什么新鲜事。

答案 1 :(得分:1)

通过使用标记元语言重新指定HTML本身来扩展浏览器以支持除HTML以外的其他词汇的想法是XML的最初目标。正如XML 1.0规范的新闻稿(从1998年开始)所述

  

可扩展标记语言(XML)是SGML的子集,在本文档中已进行了完整描述。它的目标是使通用SGML能够以HTML现在可以实现的方式在Web上提供,接收和处理。 XML的设计易于实现,并且可与SGML和HTML互操作。

值得注意的是,SVG和MathML词汇是使用XML作为元语言创建的(例如,用于定义SVG和MathML的元素和属性)。

但是,尽管XML在浏览器之外的许多应用程序中都取得了成功,但浏览器并未采用XHTML2(将HTML重新指定为具有XForms等附加功能的XML词汇表),而Ian Hickson(由Google领导)的浏览器供应商在2004年成立了WHAT工作组,以开始对今天众所周知的HTML 5的规范过程。 HTML 5通过允许,例如,可以直接在HTML中使用SVG和MathML词汇表(使用XML指定)。 XML样式的空元素,例如那些外来词汇中的</g>

HTML 5的一个主要功能是,它可以与现有的大量HTML内容向后兼容,而XHTML则需要采用更为有限的XML解析规则。例如,HTML允许标签推断/标签省略,“空”元素(SGML样式的空元素,没有结束元素标签)以及各种形式的属性最小化

最初使用SGML将HTML(直到第4版)指定为标记元语言,而SGML仍然是唯一能够描述HTML解析规则(包括HTML 5解析规则)的标记元语言(请参阅我在{ {3}})。尽管浏览器从未原生支持完整的SGML(仅限于仅处理硬编码HTML词汇的SGML应用程序),但在90年代的浏览器插件中(例如在SoftQuad的)中实现了使用比浏览器直接支持更多的SGML功能的想法。 Panorama SGML / HyTime浏览器(从http://sgmljs.net/blog/blog1701.html链接)。

自定义Wiki语法(例如markdown)与数字文本处理本身一样古老。 SGML(至少从1986年开始)允许您为此目的定义特定于上下文的令牌替换规则。例如,要将SGML格式简化为Markdown片段转换为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>