XML
This article is a brief introduction to XML
可扩展标记语言(eXtensible Markup Language)
XML 不是对 HTML 的替代
XML 被设计用来传输和存储数据,不用于表现和展示数据,HTML 则用来表现数据
XML 是对 HTML 的补充
XML 不会替代 HTML,理解这一点很重要。在大多数 Web 应用程序中,XML 用于传输数据,而 HTML 用于格式化并显示数据。
对 XML 最好的描述是:
XML 是独立于软件和硬件的信息传输工具
语法
第一行声明
1 |
元素
XML 文档必须有根元素
1 | <root> |
XML文档由元素构成,每个元素包括开始标签、结束标签和元素内容
属性
元素可以包含属性,属性提供有关元素的附加信息。
属性位于开始标签中,例如:
1 | <person age="30" gender="male">John Doe</person> |
XML 单标签
1 | <exampleTag /> |
标签对大小写敏感
必须使用相同的大小写来编写打开标签和关闭标签
属性值必须加引号
1 | <note date="12/11/2007"> |
实体引用
在 xml 的元素中不能加入<,>,&,’,”, 而是使用实体引用
< | < | less than |
---|---|---|
> | > | greater than |
& | & | ampersand |
' | ‘ | apostrophe |
" | “ | quotation mark |
注释
1 | <!-- This is a comment --> |
在 XML 中,空格会被保留
HTML 会把多个连续的空格字符裁减(合并)为一个
在 XML 中,文档中的空格不会被删减
XML 以 LF 存储换行
在 Windows 应用程序中,换行通常以一对字符来存储:回车符(CR)和换行符(LF)。
在 Unix 和 Mac OSX 中,使用 LF 来存储新行。
在旧的 Mac 系统中,使用 CR 来存储新行。
XML 以 LF 存储换行
元素
XML 元素指的是从(且包括)开始标签直到(且包括)结束标签的部分
一个元素可以包含:
- 其他元素
- 文本
- 属性
- 或混合以上所有…
命名规则
- 名称可以包含字母、数字以及其他的字符
- 名称不能以数字或者标点符号开始
- 名称不能以字母 xml(或者 XML、Xml 等等)开始
- 名称不能包含空格
命名习惯
避免 “-“ 字符
避免 “.” 字符
避免 “: “ 字符
元素是可扩展的
属性
属性必须加引号
属性值必须被引号包围,不过单引号和双引号均可使用。
如果属性值本身包含双引号,就可以使用单引号
1 | <person sex='female'> |
元素 vs. 属性
1 | <person sex="female"> |
1 | <person> |
没有什么规矩可以告诉我们什么时候该使用属性,而什么时候该使用元素。我的经验是在 HTML 中,属性用起来很便利,但是在 XML 中,您应该尽量避免使用属性。如果信息感觉起来很像数据,那么请使用元素吧
Why not arribute?
- 属性不能包含多个值(元素可以)
- 属性不能包含树结构(元素可以)
- 属性不容易扩展(为未来的变化)
针对元数据的 XML 属性
有时候会向元素分配 ID 引用。这些 ID 索引可用于标识 XML 元素,它起作用的方式与 HTML 中 id 属性是一样的。
元数据(有关数据的数据)应当存储为属性,而数据本身应当存储为元素
`
1 | <messages> |
XML CSS
使用 CSS 显示您的 XML
1 |
|
使用 CSS 格式化 XML 不是常用的方法。
W3C 推荐使用 XSLT
XML XSLT
XSLT (eXtensible Stylesheet Language Transformations) 是首选的 XML 样式表语言
通过使用 XSLT,您可以把 XML 文档转换成 HTML 格式
- Title: XML
- Author: yjy
- Created at : 2024-09-04 12:11:54
- Updated at : 2025-01-17 17:13:57
- Link: https://yjy.us.kg/xml/
- License: This work is licensed under CC BY-NC-SA 4.0.