XML SGML HTML 笔记
- XML Extensible Markup Language - SGML Standard Generalized Markup Language - CSS Cascading Style Sheets - XSL Extensible Stylesheet Language. - DOM Document Object Model - SAX Simple API for XML - XSLT Extensible Stylesheet Language for Transformations - DTD Document Type Definition
输入特殊字符
一个整数可以表示一个 Unicode 的字符。 例如:
有一些特殊字符可以有特殊的符号名字代替数字。例如 "&" 可以用 "&"
文档的字符集
字符集采用 Unicode 。 文档作者可以使用任何的编码方案来输入字符。编码方案不必包含所有的 Unicode 字符,只要包含作者需要的字符就行了。如果作者需要输入的字母不在编码方案中,那么也可以采用 &#D; 的方法输入特殊字符。
在 HTML 中, HTTP 协议通过协议内容类指明编码方案,例如:
Content-Type: text/html; charset=gb3212
HTML 中可以用下面的办法指明编码方案:
<META http-equiv="Content-Type" content="text/html; charset=gb2312">
浏览器通过以下方式识别编码方案:
1. 用户看到乱码后,指定了一个新的编码方案。 2. HTTP 协议中的 "Content-Type" 字段。 3. HTML 文档中的 META 字段。 4. 某些 HTML 标记中的 charset 属性。 5. 浏览器猜测,或者用户指定的默认编码方案。
XML 的优点
1. 不依赖于特定软件。 人和机器都可以读懂。 不同的应用程序之间很容易共享数据。
2. 层次化结构。
3. 不依赖于固定平台。
4. 国际化。
Empty Element
<Picture src="blueball.gif" /> <Picture src="blueball.gif"> </Picture>
一个简单的 XML 文档
<?xml version="1.0" encoding="gb2312" standalone="no"?> <!DOCTYPE oReilly:Books SYSTEM "sample.dtd"> <!-- Here begins the XML data --> <OReilly:Books xmlns:OReilly=\(ashttp://www.oreilly.com/\(as> <OReilly:Product> XML Pocket Reference</OReilly:Product> <OReilly:Price>8.95</OReilly:Price> </OReilly:Books>
- 开头表明这是 XML 文档。 encoding 可以指定编码方案。 sandalone 指明是否需要 DTD
文件。
- DOCTYPE 指明根元素。 SYSTEM 是关键字,指明 DTD 文件,用于验证 XML 文档的有效性。
- 然后是注释。 在 <!- 和 -> 之间。 注释不能在 element 定义中间。
- 后面的 XML 文档的 element 。
- Namespace 冒号前面的就是 namespace , 如, OReilly 。namespace 由 xmlns 定义。
规则
- Element name 或者 attribute name
必须是字母或者下划线开头,可以是任何字母,数字,连字符,点,下划线。 大小写敏感。也可以是英语外的其他语言的字母。
- attribute value
必须在引号中,单引号或者双引号。
- CDATA
例子 :
<![CDATA[ bala bala ba... ]]>
- XML 文档中有且只有一个 root element
- 所有的 element 必须嵌套的。
- attribute value 必须括起来。
- element 必须有结尾 tag 。空 element 必须用 <lily age="6" /> 表示。
- 默认的 XML 的编码方案是 UTF-8 。