掌握XML系列(四)---创建格式良好的XML文档
掌握XML系列(四)---创建格式良好的XML文档
前言:创建良好格式的XML文档,虽然写了这些,其实,等到大家真正的看完之后美酒会发现,其实也很简单的,我们这里所做的是带着大家全面的看看怎么样创建.
这一节,我们讲解有关属性的问题.
XML的属性:
其实大家都知道,其实属性就"名值对",再HTML中,我们看见过很多.之前的文章中也用过了一些属性的例子.来看个例子吧:
<?xml version="1.0" ?>
<persons>
<person name="xiaoyang"/>
<person name="panyan"/>
</persons>
关于属性的问题,有几点是要说明下的:
1.在属性的值中,最好不要使用":"(冒号),,尽管可以有,但是最好不要,因为与命名空间有冲突的.
2.属性不能以"xml"开头,也是有关命名空间的问题.
下面来看看我们什么时候使用属性
大家都知道,一份数据文档,用XML来表示可以有很多的形式.如上面的XML的例子,我们也可以改写为别的形式.如.
<?xml version="1.0"?>
<persons>
<person>
<name>xiaoyang</name>
</person>
<person>
<name>panyan</name>
</person>
</persons>
所以,我们对使用属性的情况会讲解如下(什么时候用属性):
1.将属性作为描述的数据:
之前大家看看的文档,我们在person元素中使用属性name,我们这样做,只是用属性来描述一个person的一个特征,而后面的一个例子,我们将name作为了一个元素,来强调name.所以建议:如果想强调XML,那么就把它作为一个元素.
2.属性容易使用.
属性通常比元素容易使用,如下:
<person>
23
<name>
xiaoyang
</name>
</person>
这样,虽然没有错,但是看起来就不是很清楚,如果改为下面的
<person age="23" name="xiaoyang"/>
这样就比上面更加的简洁,清晰,那么也就引出下面的话题:
3.用属性的XML文档的大小比用元素XML文档更加的小,那么就很便于网络传输.
4.DTD验证文档的有效性:在有的XML文档中,如果在DTD(一种验证文档)中明确要求要某个属性,如果XML文档中没有,那么文档就不合法了.
下面,我们就看看什么时候不用元素的.
通常在重复使用属性的地方,如,想用XML文档表一个国家的城市:如下:
<country name="china" city="wuhan" city="beijing"/>
这样就不对,不能在一个元素中有两个相同的属性,这种情况下用元素更加的好.
<country>
<city>wuhan</city>
</country>
今天就些到这,讲得不多,基本上就这些,大家把之前的一起看看,就发现,规则很少,很多的时候都是一种平衡的策略,没有说一定要怎么样用才正确.
下一篇,就讲讲怎么样验证XML文档.