HTML和XML的区别
- html用来显示数据,xml用来传输数据
- html中空格会被保留 但会被合并成一个,xml会保留所有空格
XML的构造
- 格式:<标签名 属性名="属性值">数据</标签名>
- 标签名区分大小写
- 属性值必须加引号
- 必须正确嵌套
- 必须有且只有一个根元素
- 使用转义字符代替 < > & ' "
- 注释 使用< !-- -- >(这个简书的md格式转义也没用 <! -> 这两个地方是没有空格的这点和html一样)
- 空格会被保留
- 换行格式为LF(点击看说明)
标签命名规范
- 名称可以含有字母/数字以及其他字符,但是:
- 不能以数字或标点符号开头
- 不能以 xml 开头
- 不能包含空格
- 有一些软件可能会对下面的情况特殊识别,所以:
命名空间
- 当两个xml中出现相同的根元素,但包含的子元素不同 xml解析器无法进行区分
<table>
<tr>
<td></td>
</tr>
</table>
<table>
<foot></foot>
</table>
<t:table>
<tr>
<td></td>
</tr>
</t:table>
<f:table>
<foot></foot>
</f:table>
<f:table xmlns:f="http://www.w3school.com.cn/furniture">
<f:name>African Coffee Table</f:name>
<f:width>80</f:width>
<f:length>120</f:length>
</f:table>
- 命名空间在根元素中作为属性被定义
- 格式:<code>xmlns:namespace-prefix="namespaceURI"</code>
- 翻译为 xmlns:前缀="随意"(不过这个随意的部分一般会被写自定义的或者官方的解释文档)
子元素以及属性
- 两者的级别以及作用相当
- 但是不推荐使用属性,尽可能使用子元素能提高可读性
- 例如:
<cat tom="汤姆"></cat>
<cat>
<tom>汤姆</tom>
</cat>
可以使用CSS 以及 XSLT 样式
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/css" href="simple.css"?>
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="simple.xsl"?>
- 但是 要记住xml本质上是被设计用来存储数据的,不建议这么用
读取(解析)
DTD和XSD(几乎没有理解性全是记忆性的东西所以只给出教程位置)
网友评论