XML prolog 是 XML 文档开头的可选部分,包含 XML 声明(含 version、encoding、standalone 属性)、DOCTYPE 声明、注释和处理指令,必须位于文档最开始且前无空白。

XML prolog 是 XML 文档开头的可选部分,用于提供关于文档本身的基本信息。它不是文档内容的一部分,而是用来告诉解析器如何正确读取和处理该 XML 文件。
XML prolog 包含的重要声明信息
最常见的 XML prolog 只包含 XML 声明(XML declaration),其结构如下:
这个声明中包含三个关键属性:
-
version:指定所使用的 XML 版本。目前最常用的是
1.0,也有使用1.1的情况。必须项,如果省略,解析器默认使用 1.0。 -
encoding:定义文档使用的字符编码方式,如
UTF-8、UTF-16、ISO-8859-1等。可选项,若不写,默认为 UTF-8 或根据传输协议判断。 -
standalone:表示文档是否依赖外部的 DTD(文档类型定义)。取值为
yes或no。若为yes,说明文档所有信息都在内部;若为no,可能引用外部 DTD。可选项,默认是no。
除了 XML 声明外,prolog 还可以包括以下内容(在声明之后):
-
DOCTYPE 声明:用于指定文档类型和可选的 DTD,例如:
- 注释:在 prolog 中也可以加入注释,帮助理解文档结构。
-
处理指令(Processing Instructions):用于向应用程序传递特定指令,例如:
需要注意的是,XML prolog 不是必需的,但如果存在,必须出现在整个文档的最开始位置,前面不能有任何空白或字符(BOM 除外)。
基本上就这些。一个清晰的 prolog 能帮助解析器更准确地处理 XML 内容,尤其在涉及编码或多系统交互时尤为重要。










