SGML(标准通用标记语言)是将纸质文件编码为电子格式的标准。随着互联网的发展,HTML显然已经无法提供更多动态内容的需要,因为它已经达到了它的局限性。XML(可扩展标记语言)是一种从SGML衍生出来的语言,它包含一个更有限的功能集,以便让编码者更简单地使用它,因为SGML对于预期的使用来说太全面和复杂了。由于XML只是SGML的一个子集,SGML解析器能够阅读和解码有效的XML文件。但反过来也不一定,因为SGML文件可能有XML解析器不理解的功能。
作为一个子集,XML中不会有SGML中不存在的特征。下面是被删除的内容的简短清单。
下列SGML的声明在XML中不再被允许:
- DATATAG
- OMITTAG
- 排名
- 链接
- CONCUR
- 次级文件
- 格式化
下列SGML结构在XML中不再被允许:
- 空的起始标签
- 空的结束标签
- 非封闭的开始标签
- 未封闭的结束标签
- 没有名称的属性规范
在属性规范中直接输入属性值是不允许的,应该在字面上输入。
在SGML中不再允许下列实体的声明:
- 外部SDATA实体
- 内部SDATA实体
- 外部CDATA实体
- 内部CDATA实体
- DEFAULT实体
- PI实体
- 带括号的文本条目
- 不再被允许为实体指定属性
编码者在代码中放置注释的方式也发生了变化。一个注释声明不再允许有一个以上的注释。一个空的注释声明也被禁止了。一个参数分离器不允许包含任何注释。这包括任何标记声明,当然,不包括注释声明。
SGML和XML的区别
- XML是SGML的一个子集
- 与SGML相比,XML更简单
- XML文档应该可以用SGML解析器阅读,而一些SGML可能在XML解析器中产生错误
- 在XML中已经删除了一系列SGML的声明
- 一些在SGML中允许的结构在XML中不再允许。
- 一些SGML的实体在XML中不再被允许
- SGML中的一些注释做法在XML中也被禁止了。
SGML和XML的区别
欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果。
转载请注明:文章转载自 有区别网 [http://www.vsdiffer.com]
本文标题:SGML和XML的区别
本文链接:https://www.vsdiffer.com/vs/difference-between-sgml-vs-xml.html
免责声明:以上内容仅代表 个人看法、理解、学习笔记、总结和研究收藏。不保证其正确性,因使用而带来的风险与本站无关!如本网站内容冒犯了您的权益,请联系站长,邮箱: ,我们核实并会尽快处理。