xml - 为什么 XML 文档必须有一个根元素?
问题描述
决定在 XML 文档中使用单个根元素的动机是什么?
有人能解释一下为什么 XML 设计团队做出这个决定吗?
解决方案
你在问一个设计动机问题,这通常很难事后回答,而不仅仅是推测。
幸运的是,Tim Bray 捕捉并记录了XML 背后的一些设计历史和动机,并仅针对一个元素(称为root或文档元素)进行了说明:
根和巢
这一段(严格来说是不必要的——它只是放大了语法的后果)描述了格式良好的本质。简单地说,必须有一个元素包含其他所有元素,并且所有元素都必须很好地相互嵌套 - 不能重叠!所有这些“根”和“巢”术语都暗示树,这很好。
XML 需要单个根元素这一事实比您想象的更重要;考虑到我们希望通过网络链接传输这些文档,我们都知道,网络链接有时速度很慢、不稳定且不可靠,如果每个文档的开头和(尤其是)结尾都被清楚地标记出来,这是一个非常好的主意,这样即使另一端的人关闭链接的速度很慢,您也知道何时收到了全部信息。
另请参阅: XML 中的根节点、根元素和文档元素有什么区别?
推荐阅读
- c++ - 设置子窗口的文本颜色
- itext - 使用 iText 1.3.1 在 PDF 中显示页码
- object - 如何修复“字节”对象没有属性“findAll”
- scala - java.util.NoSuchElementException:未定义命名属性
- django - Django 对象不计数
- python - 我得到 SystemError: Parent module '' not loaded, cannot perform relative import Error when I run my Python Script
- python-3.x - 使用真实标签和预测标签列表进行评估
- c# - 获取 SignalR 集线器的 HubContext
- c# - WPF 中的附加属性实现了哪种模式?
- javascript - 在 node.js 中捕获 docker-compose 关闭事件