首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >什么时候使用SGML和XML?

什么时候使用SGML和XML?
EN

Stack Overflow用户
提问于 2017-01-05 14:21:30
回答 2查看 879关注 0票数 2

这个问题相当于:“在XML上使用SGML和在SGML上使用XML有什么优缺点?”

我已经知道了SGML和XML之间的一些相似之处,但它们没有回答这个问题。

相似性

  1. SGML和XML都允许我们描述文档(结构、数据、元数据);
  2. 两者分开外观(颜色等)来自数据/结构/元数据;
  3. SGML和XML都可以在Web页面/ Web中使用(即使XML在Web中比SGML更专业)
  4. SGML和XML文档必须包含“有效”的DTD。

差异

  1. SGML提供了几种编写东西的方法(例如:我们可以编写空的和非封闭的标记,我们可以编写<foo>d</>等等)。
  2. SGML文档很难编写。
  3. 因此,SGML文档的解析可以非常低且复杂。
  4. XML是SGML的一个子集,更易于学习和使用。
  5. XML不允许以几种与SGML相反的方式编写东西(例如:不允许空的和不关闭的标记)
  6. 因此,XML的解析比SGML的解析更简单、更快
  7. SGML文档没有状态“格式良好”,XML文档是这样的。(如果syntaxe是正确的,则具有此状态)
  8. SGML文档必须包含DTD :而不是XML文档。

,但问题仍然是

SGML/XML有哪些优点和缺点?*何时使用其中一种而不是另一种?)?

EN

回答 2

Stack Overflow用户

发布于 2017-01-05 16:49:54

不同的是,全世界都使用XML,并且有大量的软件用于XML,而SGML只被少数高级牧师所使用,并且几乎没有可用的软件。

在这种情况下的技术差异在很大程度上是无关紧要的。

票数 3
EN

Stack Overflow用户

发布于 2017-02-14 14:55:57

请允许我以最近在SGML上花费了大量精力的人的身份加入进来。

我认为您的第3点(XML比SGML更适合web )是不正确的,因为解析HTML超出了XML的能力;相反,我认为我们将看到在基于HTML的工作流中更多地使用SGML,其中HTML被用作创作和传递格式。

您的第4点(SGML必须有一个DTD)只适用于传统的SGML,但在1998年,随着XML规范,SGML的附件K修订版(即"WebSGML“)取消了这一要求,这正是为了使DTD XML成为SGML的适当子集。当然,没有DTD声明,您就没有标记省略/推断、空元素(HTML "void“元素)、Wiki语法以及SGML在XML上具有的所有其他强大特性。

另外,让我指出,我发现"SGML与XML“的讨论毫无意义。SGML是一个适当的XML超集,可以向下转换为XML,所以在使用SGML时,您不会放弃任何东西。当我需要使用XML和SGML的附加特性时,我会同时使用它。

关于使用SGML的现代帐户,我想向您介绍我在http://www.xmlprague.cz/day2-2017/ (“HTML5.1DTD”)上的演讲/论文。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41487397

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档