📄 xml1_0 中文文档(第二版)---2_ 文件 - fanqiang_com.htm
字号:
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-Misc">Misc</A>*
(<A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-doctypedecl">doctypedecl</A>
<A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-Misc">Misc</A>*)?</CODE></TD></TR>
<TR vAlign=baseline>
<TD><A name=NT-XMLDecl></A>[23] </TD>
<TD><CODE>XMLDecl</CODE></TD>
<TD>::= </TD>
<TD><CODE>'<?xml' <A
href="#NT-VersionInfo">VersionInfo</A> <A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-EncodingDecl">EncodingDecl</A>?
<A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-SDDecl">SDDecl</A>?
<A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-S">S</A>?
'?>'</CODE></TD></TR>
<TR vAlign=baseline>
<TD><A name=NT-VersionInfo></A>[24] </TD>
<TD><CODE>VersionInfo</CODE></TD>
<TD>::= </TD>
<TD><CODE><A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-S">S</A>
'version' <A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-Eq">Eq</A>
("'" <A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-VersionNum">VersionNum</A>
"'" | '"' <A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-VersionNum">VersionNum</A>
'"')<I>/* */</I></CODE></TD></TR>
<TR vAlign=baseline>
<TD><A name=NT-Eq></A>[25] </TD>
<TD><CODE>Eq</CODE></TD>
<TD>::= </TD>
<TD><CODE><A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-S">S</A>?
'=' <A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-S">S</A>?</CODE></TD></TR>
<TR vAlign=baseline>
<TD><A name=NT-VersionNum></A>[26] </TD>
<TD><CODE>VersionNum</CODE></TD>
<TD>::= </TD>
<TD><CODE>([a-zA-Z0-9_.:] | '-')+</CODE></TD></TR>
<TR vAlign=baseline>
<TD><A name=NT-Misc></A>[27] </TD>
<TD><CODE>Misc</CODE></TD>
<TD>::= </TD>
<TD><CODE><A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-Comment">Comment</A>
| <A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-PI">PI</A>
| <A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-S">S</A></CODE></TD></TR></TBODY></TABLE>
<P><A name=dt-doctype></A>[定义:XML <B>文件类型声明</B>包含或指向<A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#dt-markupdecl">标记声明</A>,标记声明提供某一类文件的文法。这种文法被称为文件类型定义(document
type difinition,<B>DTD</B>)。文件类型定义可以指向一个外部子集(一种特殊类型的<A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#dt-extent">外部实体</A>),或者可以在一个内部子集中直接包含标记声明,或者两者兼用。一个文件的文件类型定义由这两个子集合在一起组成。]</P>
<P><A name=dt-markupdecl></A>[定义:<B>标记声明</B>可以是<A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#dt-eldecl">元素类型声明</A>,<A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#dt-attdecl">属性表声明</A>,<A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#dt-entdecl">实体声明</A>,或是<A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#dt-notdecl">记法声明</A>。]
这些声明可以如下面格式正确性和有效性约束中所述,全部或部分地包含在<A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#dt-PE">参数实体</A>中,"<A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#sec-physical-struct">4.
物理结构</A>"中有更多的信息。</P>
<H5>文件类型定义</H5>
<TABLE class=scrap>
<TBODY>
<TR vAlign=baseline>
<TD><A name=NT-doctypedecl></A>[28] </TD>
<TD><CODE>doctypedecl</CODE></TD>
<TD>::= </TD>
<TD><CODE>'S</A> <A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-Name">Name</A>
(<A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-S">S</A>
<A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-ExternalID">ExternalID</A>)?
<A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-S">S</A>?
('[' (<A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-markupdecl">markupdecl</A>
| <A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-DeclSep">DeclSep</A>)*
']' <A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-S">S</A>?)?
'>'</CODE></TD>
<TD><A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#vc-roottype">[VC:
根元素类型]</A></TD></TR>
<TR vAlign=baseline>
<TD></TD>
<TD></TD>
<TD></TD>
<TD></TD>
<TD><A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#ExtSubset">[WFC:
外部子集]</A></TD></TR>
<TR vAlign=baseline>
<TD></TD>
<TD></TD>
<TD></TD>
<TD></TD>
<TD><I>/* */</I></TD></TR>
<TR vAlign=baseline>
<TD><A name=NT-DeclSep></A>[28a] </TD>
<TD><CODE>DeclSep</CODE></TD>
<TD>::= </TD>
<TD><CODE><A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-PEReference">PEReference</A>
| <A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-S">S</A></CODE></TD>
<TD><A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#PE-between-Decls">[WFC:
声明间的参数实体]</A></TD></TR>
<TR vAlign=baseline>
<TD></TD>
<TD></TD>
<TD></TD>
<TD></TD>
<TD><I>/* */</I></TD></TR>
<TR vAlign=baseline>
<TD><A name=NT-markupdecl></A>[29] </TD>
<TD><CODE>markupdecl</CODE></TD>
<TD>::= </TD>
<TD><CODE><A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-elementdecl">elementdecl</A>
| <A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-AttlistDecl">AttlistDecl</A>
| <A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-EntityDecl">EntityDecl</A>
| <A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-NotationDecl">NotationDecl</A>
| <A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-PI">PI</A>
| <A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-Comment">Comment</A>
</CODE></TD>
<TD><A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#vc-PEinMarkupDecl">[VC:
严格的声明/参数实体嵌套]</A></TD></TR>
<TR vAlign=baseline>
<TD></TD>
<TD></TD>
<TD></TD>
<TD></TD>
<TD><A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#wfc-PEinInternalSubset">[WFC:
内部子集中的参数实体]</A></TD></TR></TBODY></TABLE>
<P>注意,要构建包含了一个既不指向外部子集也不包含内部子集的 <A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-doctypedecl">doctypedecl</A>
而格式正确的文件是可能的。</P>
<P>标记声明可以全部或部分地由<A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#dt-PE">参数实体</A>的<A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#dt-repltext">置换文本</A>组成。本规范后面的各个非终结符(<A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-elementdecl"><CODE>elementdecl</CODE></A>,<A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-AttlistDecl"><CODE>AttlistDecl</CODE></A>,等等)产生式描述的是在所有的参数实体被<A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#dt-include">包含(include)</A><EM>之后</EM>的声明。<A
name=vc-roottype></A></P>
<P>除了在常量,处理指令,注释和被忽略的条件段的内容中出现的参数实体引用以外,DTD
中的其他任何地方(内部或外部子集以及外部参数实体)的参数实体引用都被识别(见 <A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#sec-condition-sect"><B>3.4
条件段</B></A>)。在实体值常量中的参数实体引用也被识别。内部子集中参数实体引用的使用限制如下所述。</P>
<DIV class=constraint>
<P><B>有效性约束: 根元素类型(Root Element Type)</B> 文件类型声明中的 <A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-Name"><CODE>Name</CODE></A>
必须匹配<A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#dt-root">根元素</A>的类型。
<A name=vc-PEinMarkupDecl></A></P></DIV>
<DIV class=constraint>
<P><B>有效性约束: 严格的声明/参数实体嵌套</B> 参数实体的<A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#dt-repltext">置换文本</A>必须用标记声明严格嵌套。即,如果一个标记声明(上面的
<A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-markupdecl"><CODE>markupdecl</CODE></A>)的第一个或最后一个字符被包含于一个<A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#dt-PERef">参数实体引用</A>的置换文本中,两者必须都在此置换文本中。<A
name=wfc-PEinInternalSubset></A></P></DIV>
<DIV class=constraint>
<P><B>格式正确性约束: 内部子集中的参数实体</B></P>
<P>在内部 DTD 子集中,<A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#dt-PERef">参数实体引用</A>只能出现在标记声明可以出现的地方,而不能在标记声明内部出现。(这个约束不适用于出现在外部参数实体内的引用,也不适用于外部子集。)</P></DIV>
<DIV class=constraint>
<P class=prefix><A name=ExtSubset></A><B>格式正确性约束: 外部子集</B></P>
<P>外部子集(如果有的话)必须匹配产生式 <A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-extSubset">extSubset</A>。</P></DIV>
<DIV class=constraint>
<P class=prefix><A name=PE-between-Decls></A><B>格式正确性约束:
声明间的参数实体</B></P>
<P>一个 <A
href="http://fanqiang.chinaunix.net/program/html/2001-05-17/2004.shtml#NT-Ding>Hello,&nb</A> 内的参数实体引用的置换文本必须匹配产生式 <A href="
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -