该行是否是外部dtd的第一行?我对此有争议,但我们找不到类似dtd语言规范的来源来获得解决方案。
答案 0 :(得分:4)
是的,它可以。但这并不是必需的(即使在XML 1.1 DTD中)。
来自spec:
格式良好约束:外部子集
外部子集(如果有)必须与extSubset的生成匹配。
规范将extSubset
定义为:
[30] extSubset ::= TextDecl? extSubsetDecl
[31] extSubsetDecl ::= ( markupdecl | conditionalSect | DeclSep)*
和TextDecl
(允许在上面的定义中出现零或一次)为:
[77] TextDecl ::= '<?xml' VersionInfo? EncodingDecl S? '?>'