XML 中的存储单元到底是什么?

What exactly are storage units in XML?

我想更多地了解 XML 文档的物理和逻辑结构。 From the specification at W3C 描述物理结构:

An XML document may consist of one or many storage units. These are called entities;...

所以我的问题是:

  1. 在此上下文中,存储单元到底指的是什么?
  2. 它是从 XML 处理器的角度使用的,以及它如何在内存中存储和操作 XML 文档,还是指用于存储文档的持久存储?

XML 和 SGML 中的一个实体表示一个字符流。它可以是一个外部实体,其中字符内容可以从另一个文件或网络 (HTTP) 流访问,也可以是一个内部实体,它是声明和引用它的文档的文字内容的一部分。内部实体可以这样声明

<!ENTITY e "replacement text for e">

然后在这样的内容中用作 &e; 实体引用

<p> some text ... &e; ... other text </p>

这样 XML 或 SGML 处理器将用 replacement text for e 替换 &e;。实体的概念也用于其他目的。

关于第二个问题,实体概念与"storage"外部文件或网络流中的字符数据有关;它不涉及标记处理器的内部存储器表示。