这个理解起来总感觉有些抽象,不太好懂,自己学的也是一知半解,但是感觉它的存在却是很不同凡响的, ,在XML的应用中,给我们带来了很多方便,也让XML的功能得到了很大的提升,自己感觉的,呵呵,有说的不对的地方,不要见笑哟!
在进入正题之前,我们先引用一个例子:
1<table>
2<tr>
3<td>Apples</td>
4<td>Bananas</td>
5</tr>
6</table>
在上面这个XML中,有点类似于我们以前见到的HTML中的表格的功能,其实你也可以那样简单的认为这样;
1<table>
2<name>African Coffee Table</name>
3<width>80</width>
4<length>120</length>
5</table>
在这个XML中,我们描述了一个桌子的信息,这样假如我们把这两个XML放到一个XML文件中,就会遇到命名冲突的问题,于是便有了Name space.
XML的命名空间----解决上述问题的途径:
一.使用前缀解决命名冲突的问题:
上面的两个文件变为以下内容:
1--
1<h:table>
2<h:tr>
3<h:td>Apples</h:td>
4<h:td>Bananas</h:td>
5</h:tr>
6</h:table>
2--
1<f:table>
2<f:name>African Coffee Table</f:name>
3<f:width>80</f:width>
4<f:length>120</f:length>
5</f:table>
现在是不是可以很明显的把两种不同的信息分开了呢,通过
1<h:table>与<f:table>就可以方便的引用这两个文件了,
2 二.使用命名空间来解决这个问题:
3
4
5
6 1--
7 <h:table xmlns:h="http://www.w3.org/TR/html4/">
8<h:tr>
9<h:td>Apples</h:td>
10<h:td>Bananas</h:td>
11</h:tr>
12</h:table>
13 2---
14
15
16
17 <f:table xmlns:f="http://www.w3.org/TR/xsl">
18<f:name>African Coffee Table</f:name>
19<f:width>80</f:width>
20<f:length>120</f:length>
21</f:table>
22 在上面的例子中,我们除了使用了前缀外,还使用了xmlns属性,xmlns即xml name space的缩写.
23 命名空间属性:
24 一般其声明在元素开始标记的地方,格式为:
25 xmlns:namespace-prefix="namespace"
26 如:xmlns:f=" http://www.w3.org/TR/xsl "
27 我们在命名的时候,文中出现的类似URL的东东其实没有实际的意义,只是一种标记.
28 好了,今天就这么多了,怎么用呢,还有待研究,呵呵.....</f:table></h:table>