📄 中文 xml faq - fanqiang_com.htm
字号:
<BR>16. 据说 Unicode 不是一组好的中文字集 (character set) ? Chinese!
<BR>Unicode 定组织 (Unicode Consortium) 是许多的公司联合决定定一个包含全世界所有文字 的巨大字集,
<BR>其中也有亚洲的公司参与。例如:Fujitsu and Fuji Xerox 公司。 该组织取用 ISO 10646 字集然後加
<BR>入其他的资讯:标准名称及 特性。 Unicode 包含 GB2312 中所有的字及(可能) Big5 码中所有的字。
<BR>而且加入了许多其他语言的文字。(ISO 10646 有几种编码方式: UTF-8 是 8-bit 的,而 UTF-16 是
<BR>16-bit。 Unicode 是 UTF-16 的形式。
<BR><BR>因此 Unicode 比 Big5 及 GB2312 码好 - 因为 Unicode 包含较多的字。
<BR><BR>但是 ISO 10646 码有下列问题:
<BR><BR>UTF-16 或 Unicode 是 16-bit 固定长度的编码,并没有比 Big5 或 GB2312 码提供更大的容纳空间。
<BR>而 8-bit 不定长 (variable-length) 的编码,每个中文字使用 3 个位元组 (byte)。 这意味着使用
<BR>UTF-8 编码的 XML 档案会比使用 Big5 码的档案大上 50%。但是假如使用 ASCII 码的标示 (Markup),
<BR>档案就不会大这麽多了。 标示大约会占文件的 50%。可能要使档案大小减少的方式就是采用 档案压缩了。
<BR>ISO 10646 码中,字的顺序与任何的中文码并不同。无法使用一个 简单的演算法 (algorithm) 就可以
<BR>将 Big5 或 GB2312 码转换为 ISO 10646。您得用一个转换表来进行转码。但另一方面,ISO 10646 码的
<BR>中文字序有利於排序 (sorting)。而且也去除了重字,因而 对於检索 (searching) 也有帮助。(据说
<BR> GBK 字集包含 ISO 10646 码中所有的字,而且保留与 GB2312 码相同的字序。在某些情形下 可能是个
<BR> 好字集。)
<BR>这就是为何 XML 档不一定要用 UTF-8 或 UTF-16 编码的原因。 您可以使用 Big5 或 GB2312 码。但是
<BR>很少 XML 软体工具支援 这些中文字码。所以建议您,以长远眼光来探讨,最好是转移到 UTF-8 或 UTF-16。
<BR>--------------------------------------------------------------------------------
<BR><BR>17. 为何某个软体工具的文件说明该软体无法正确处理 Big5 码文件, 但事实上却可以用呢 ?
<BR>Big5 码是一个以 "7-bit unsafe" "ASCII-family" 编码的字集。
<BR><BR>"ASCII-family" 编码的字集 (ASCII, ISO646, ISO8859-*, UTF-8, EUC, Big5, GB2312) 中的 ASCII
<BR> 字部份 都在 ASCII 字集表中的位置上。(也就是 'A' 的字码为 65 (0x41)。) 所有的 ASCII 字都
<BR> 小於 128 (0x80)。
<BR>一个 "8-bit safe" 编码的字集表示假如其中有一个位元组 (byte) 的值小於 128,那这个字一定是
<BR>ASCII 中的字。Shift-JIS 及 Big5 码 都不是 8-bit unsafe,因为在多位元组 (multiple-byte) 字
<BR>码的第二 个位元组可能是小於 128 (0x80)。使用"8-bit safe" 编码的好处是可以与 一些只处理以
<BR>ASCII 做为标示 (markup) 的软体工具相容。
<BR>"7-bit safe" 编码是:假如有小於 64 (0x40) 的位元组 (byte) 就表示这是 个 ASCII 码的字。
<BR>Shift-JIS 及 Big5 码不是 "8-bit safe" (因为 字码中的第二个位元组可能小於 128 (0x80)) 但这
<BR>些字码是 "7-bit safe" (因为字码中的第二个位元组一定大於 63 (0x3f))。"7-bit safe" 编码 对於
<BR>一些只将小於 64 (0x40) 的字认定为分隔符号 (&#eter) 的软体工具是安全无虑的。在 XML 中,所有
<BR>的 XML 分隔符号 (delimiter) [<>&%"'] 的值都小於 64 (0x40)。
<BR>这意味着会有许多的 XML 软体工具可以处理 Big5 码的文件。但这纯属 意外,因为严格来讲,一个不
<BR>认得 XML 标头中的编码属性的 XML 系统, 应该产生错误讯息。特别的是,通常这些系统可能无法处
<BR>理数字字元参引 (numeric character reference) (请参阅问题 10)。当然这些系统虽然 不符合标准,
<BR>但还是有其用处的。
<BR><BR>对於 Big5 码还有一个特殊的问题要考虑。 请参阅问题 18.
<BR>--------------------------------------------------------------------------------
<BR><BR>18. 为何在处理有些 Big5 码文件时会产生奇特的错误呢 ?
<BR>在某些系统中,Big5 码的第二个 byte 会产生问题。因为 Big5 码不是 "8-bit safe" (请参阅问题 17)。
<BR><BR>这个问题只会在不将 Big5 码文件转为 "8-bit safe" 的内部格式 (例如:Unicode,UTF-8 或 UTF-16)
<BR>的系统中发生。在这些系统中, Big5 码的某些位元组 (byte) 会被解译为错误的字。
<BR><BR>第一个状况是您使用本地语言 (Native Language) 的标示 (例如:您使用中文做为元素名称 (element
<BR>names),属性名称 (attribute names),ID 属性等等)。这个问题无解。如果您一定要用这类的软体,
<BR>您 就要在标示中避免使用第二个 byte 有问题的 Big5 字。
<BR><BR>第二个状况是您在 CDATA 段落 (section) 中使用下列中文字,而且 紧接着 "]>" 这个字串。解决的方
<BR>法是,将这个 CDATA 段落分割为两个 CDATA 段落,然後在其间夹杂一个特别的字元。下列 Big5 中文字
<BR>的第二个 byte 都是 0x5D,也就是 ASCII 中的 "]" 字元。
<BR><BR>也包因氓栅苗孙孙财 <BR>崧淫设弼琶跑愍窟榜蒸稽 <BR>霄瓢馆缧擞魔 <BR><BR>焱菏酡 <BR>螗螬泷
<BR>蹰 <BR><BR>警告:我们还在检视这些字。
<BR>(:假如您不能看到上述的字,请参阅问题 19)
<BR>--------------------------------------------------------------------------------
<BR><BR>19. 为何我不能在 HTML 浏览器 (browser) 中看到所有的字呢 ?
<BR>您不能看到所有的字,可能是:
<BR><BR>您的浏览器 (browser) 无法依据 HTML 4 或 XML 规则正确处理 数字字元参引
<BR> (numeric character reference);或是
<BR>您没有安装或选择正确的字型;
<BR>您的浏览器使用 "encoding" 设定来决定使用那一个字型,但在这个 字型中并没有文件中的某
<BR>些字的字形。
<BR>试着改变浏览器上的功能选项中的 "Encoding" 项目切换为 Big5 或 UTF-8。 这项设定在不同
<BR>的浏览器中,会放在不同的位置。
<BR>--------------------------------------------------------------------------------
<BR>20. 什麽是 Big5/GCCS, EUDC 及 Big5+ 码 ?
<BR>(1998-12-31)
<BR><BR>EUDC (Extended User-defined Characters) 是香港地区定的一组 标准使用者造字
<BR> (user-defined characters)。(日文称为 gaiji)?这些字包含 R&D EUDC, HKUST EUDC 及 GCCS EUDC。
<BR><BR>Big5 码是在台湾定的,这些繁体字也在香港使用。但在香港有些字很少在 在台湾使用,因些香港政
<BR>府将 Big5 字集再加上 3049 个字定为 "政府中文字 集" (Government Chinese Character Set, GCCS),
<BR>目前已广为使用中。
<BR><BR>台湾的行政院研究发展考核委员会(研考会)委中文电脑推广基金会(中推会) 进行 Big5 码字集扩编,
<BR>约为 24,066 字,称为 Big5+ 码。
<BR><BR>请注意:Big5/GCCS, EUDC 及 Big5+ 码并未在 IANA 册编码名称供 在 Internet 上使用。
<BR><BR>为了将来可互通使用 (interoperability),请在 WWW 中的 HTML 及 档中加上正确的标头。假如
<BR>您不知道确切的字集,e-commerce 就无法正确 运作了。假如您使用 Big5+ 码,请在文件的标头
<BR>上加上解或处理指令 (processing instruction)。在 XML 中,我们建议在文件的第二个标示
<BR>(tag) 写上 "ascc-hint" 的处理指令并使用 "non-IANA" 属性。
<BR> <?xml version="1.0" encoding="Big5" ?> <?ascc-hint non-IANA="Big5plus" ?> 及
<BR><BR> <?xml version="1.0" encoding="Big5" ?>
<BR> <?ascc-hint non-IANA="GCCS" ?>
<BR>
<BR><BR><BR>--------------------------------------------------------------------------------
<BR><BR>那儿可以找到更多的相关资讯 ?
<BR>请参考Chinese XML Now! 网页。
<BR><BR>"Chinese XML Now!" 这个计划的目的是什麽 ?
<BR>这是一个在中央研究院计算中心进行的计划。这个计划的目的是协助 XML 软体工具发展者测试其软
<BR>体是否具有处理中文的能力及 提供 XML 使用者各软体的中文处理能力的资讯。 对於不使用中文的
<BR>软体发展者不容易在网路上找到相关的资讯。在这个 计划草创之初,也少有针对 XML 的中文资料。
<BR><BR><BR>在这个计划中,各项内容将可能以英文及中文 (UTF-8,Big5 和 GB2312 码) 同步提供资料。
<BR><BR>我可以与谁联络关於这份 FAQ 的相关事宜 ?
<BR>我们竭诚欢迎任何的更正,疑问及建议。英文版请与 Rick Jelliffe: ricko@gate.sinica.edu.tw
<BR>联络。中文版请与 张锦堂: ctchang@gate.sinica.edu.tw联络。
<BR><BR><BR>--------------------------------------------------------------------------------
<BR><BR>贡献者
<BR>感谢 Sidney Lu 及 Toshinori Numata 及 John Cowen 的更正。
<BR><BR><BR>--------------------------------------------------------------------------------
<BR><BR>目录资讯 (Cataloging Information, Dublin Core)
<BR><DC:TITLE xml:lang="zh-TW">Chinese XML 常见问题及解答 </DC:TITLE>
<BR><DC:TITLE xml:lang="en">The Chinese XML FAQ (Chinese version)</DC:TITLE>
<BR><DC:CREATOR >Rick Jelliffe </DC:CREATOR>
<BR><DC:CONTRIBUTOR xml:lang="zh-TW-Lt">Chin-Tang Chang</DC:CONTRIBUTOR>
<BR><DC:CONTRIBUTOR xml:lang="zh-TW"> 张锦堂</DC:CONTRIBUTOR>
<BR><DC:SUBJECT xml:lang="en">XML, SGML, Chinese, FAQ,
<BR> Big5, GB2312, Unicode, ISO 10646, UTF-8, UTF-16,
<BR> Apache, Voyager </DC:SUBJECT>
<BR><DC:DESCRIPTION xml:lang="zh-TW">关於 XML 的常见问题及解答 </DC:DESCRIPTION>
<BR><DC:PUBLISHER xml:lang="zh-TW">台湾中央研究院计算中心 </DC:PUBLISHER>
<BR><DC:TYPE xml:lang="en">Text.Article </DC:TYPE>
<BR><DC:DATE >1998-12-31 </DC:DATE>
<BR><DC:RIGHTS >http://www.ascc.net/xml/en/utf-8/legal.html </DC:RIGHTS>
<BR>
<!-- 正文end --><BR>(http://www.fanqiang.com)<BR></FONT><BR><FONT
color=#999999><SMALL></SMALL></FONT><BR></FONT></TD></TR></TBODY></TABLE><BR></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width=750 border=0>
<TBODY>
<TR>
<TD align=middle width=620>
<TABLE cellSpacing=0 cellPadding=0 width=562 border=0>
<TBODY>
<TR>
<TD width=562>
<TABLE cellSpacing=0 cellPadding=0 width=562 border=0>
<TBODY>
<TR>
<TD></TD></TR>
<TR>
<TD height=10></TD></TR></TBODY></TABLE><!--结束:底部-->
<TABLE width=750 border=0>
<TBODY>
<TR>
<TD width="100%" bgColor=#d09f0d colSpan=5 height=2><IMG
height=1 src="中文 XML FAQ - fanqiang_com.files/c.gif"
width=1></TD></TR>
<TR>
<TD vAlign=top width="100%" colSpan=5 height=40>
<P align=center><FONT color=#ffffff>★ 樊强制作
欢迎分享 ★ </FONT></P></TD></TR></TBODY></TABLE>
<CENTER></CENTER></TR></TBODY></TABLE></TR></TBODY></TABLE></CENTER></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -