Canonical XML(规范化形式的XML)XML规范的一个子集。任何XML文档都可以转换为规范化形式的XML,因此将特定类型的微小差异去除却仍是该XML文档。由于这些特定的差异通常不认为是有意义的,转换成规范化形式的XML是判断两个XML文档逻辑上是否是同一个文档的好办法。
举例来说,XML允许在开始标签(tag)的不同点出现,属性可以按任何顺序书写,这些差异很少用来表达含义,因此这些形式通常被认为是相等的
<p secure="1">
<p secure = "1"
class='a' >
在将一个任意XML文档到规范化形式的XML的转换中,属性将按标准书序(名字的字母顺序)排列,空格和引号被标准化。 这样上面的第二种形式将转换成第一种。
Canonical XML定义了一些规范化形式的规则,包括:
- 使用UTF-8编码
- 用0x0A字符表示换行符
- 属性值里的白空格被正规化
- 添加缺省属性的说明
- CDATA标记的部分替换为相应的文字字符
- 展开实体引用
- 删除XML的声明和DTD
- 空元素使用开始/结束标签对,而不是用特殊的空元素语法
- 属性按照属性名的字母顺序排序
- 删除元素中多余的命名空间声明
讲一个文档转换为规范化形式的XML是幂等的。 也就是说,第一次转换通常产生与原文档不同的字符串,而重复的转换将不再产生变化。
根据W3C的规范,如果两个XML文档具有相同的规范化形式,那么在一定的应用上下文(极少见的情形除外)中,这两个文档在逻辑上是相等的。
然而,在特殊的上下文中,用户可能关心规范形式的XML逻辑等价之外的特殊语义。比如说,隐写术系统可能在XML文档中通过不同的白空格,属性引号和顺序,使用十进制或十六进制数字字符等等来隐藏信息。显然,将这样的文件转换为标准化形式的XML将丢失这些特殊的语义。而另一方面,XML文件使用大小写的不同,单词使用古代的拼写或现代的拼写等,在某种意义上可以看作是相同的,这样的语境超过了标准化形式XML的范围。
参见
外部链接
- W3C Recommendation, Canonical XML Version 1.0, 15 March 2001(页面存档备份,存于互联网档案馆)
- W3C Recommendation, Exclusive XML Canonicalization Version 1.0, 18 July 2002(页面存档备份,存于互联网档案馆)
產品及 標準 | 推薦 | - ActivityPub
- Activity Streams(英语:Activity Streams (format))
- ARIA(英语:WAI-ARIA)
- Canonical XML
- CDF(英语:Compound Document Format)
- 階層式樣式表
- 文档对象模型
- 地理位置API(英语:W3C Geolocation API)
- HTML
- Indexed Database API
- ITS(英语:Internationalization Tag Set)
- JSON-LD(英语:JSON-LD)
- Linked Data Notifications(英语:Linked Data Notifications)
- MathML
- Micropub(英语:Micropub (protocol))
- OWL
- P3P
- PLS(英语:Pronunciation Lexicon Specification)
- RDF
- RDF Schema(英语:RDF Schema)
- 語音識別的語義解釋(英语:Semantic Interpretation for Speech Recognition)
- SISR(英语:Semantic Interpretation for Speech Recognition)
- SKOS
- SMIL
- SOAP
- SRGS(英语:Speech Recognition Grammar Specification)
- SRI(英语:Subresource Integrity)
- SSML
- 可縮放向量圖形
- SVG 濾鏡(英语:SVG filter effects)
- SCXML(英语:SCXML)
- SHACL(英语:SHACL)
- SPARQL
- Timed text
- VoiceXML
- WoT(英语:Web of Things)
- 网页存储
- WSDL
- XForms
- XHTML
- XHTML+RDFa(英语:XHTML+RDFa)
- XInclude(英语:XInclude)
- XLink
- 可扩展标记语言
|
---|
记录 | - IndieAuth(英语:IndieAuth)
- XAdES(英语:XAdES)
- XHTML+SMIL(英语:XHTML+SMIL)
- XUP
|
---|
工作草案 | - CCXML(英语:Call Control eXtensible Markup Language)
- CURIE(英语:CURIE)
- EME
- InkML
- JSON-LD
- MSE
- RIF
- SCXML(英语:SCXML)
- SMIL時間表(英语:SMIL Timesheets)
- sXBL(英语:sXBL)
- WICD(英语:Web Integration Compound Document)
- XFDL(英语:Extensible Forms Description Language)
- XFrames(英语:XFrames)
- XBL
- XMLHttpRequest
|
---|
檢測 | |
---|
倡議 | - 多通道交互活動(MMI)(英语:W3C MMI)
- 驗証服務
- 無障礙網頁倡議(英语:Web Accessibility Initiative)
- 網絡平台(英语:WebPlatform)
|
---|
棄用 | - C-HTML
- HDML(英语:Handheld Device Markup Language)
- JSSS(英语:JavaScript Style Sheets)
- PGML(英语:Precision Graphics Markup Language)
- VML
- XHTML+MathML+SVG(英语:XHTML+MathML+SVG)
|
---|
|
---|
機構 | - 萬維網基金會(英语:World Wide Web Foundation)
| 工作小組 | - SVG(英语:SVG Working Group)
- CSS(英语:CSS Working Group)
- HTML(英语:HTML Working Group)
- WebOnt(語義網活動)(英语:WebOnt)
- 設備描述(DDWG)(英语:W3C Device Description Working Group)
- 網頁超文本技術工作小組(WHATWG)
|
---|
|
---|
軟件 | | 瀏覽器 | - Line Mode (1990年-)
- Arena (1993年-1998年)
- Agora (1994年-1997年)(英语:Agora (web browser))
- Argo (1994年-1997年)(英语:Argo (web browser))
- Amaya (瀏覽器及編輯器,1996年-2012年)
|
---|
|
---|
會議 | - 國際萬維網大會(WWW大會)(英语:International World Wide Web Conference)
- 督導委員會(IW3C2)(英语:International World Wide Web Conferences Steering Committee)
- 第一屆(WWW1,1994年)(英语:First International Conference on the World-Wide Web)
|