使用XML应注意的三个问题

ZDNet软件频道 时间:2003-03-06 作者:BUILDER.COM |  我要评论()
本文关键词:
XML正日益成为当今的数据标准。不过还有很多人还没有掌握这门技术。在本文中,我们将关注以下三个方面:不恰当的放置属性位置,结构丢失和标记名称混乱。
XML正日益成为当今的数据标准。不过还有很多人还没有掌握这门技术。事实上,很多开发人员正在学习如何正确理解和应用XML(就是说,他们可以从XML技术而不是其他什么中获得收益)。在本文中,我们将关注以下三个方面:不恰当的放置属性位置,结构丢失和标记名称混乱。
不恰当的放置属性位置

前几次我们曾经谈到过属性的问题。事实上,对它们使用不当或者不一致是很让人恼火的。因此,弄清属性的定义以及为什么要使用它们是非常重要的。

XML是一种标记语言,理解这一点,你就会知道任何数据都是被包含在标记符里的。换句话说,在你设定标记符的时候,里面的内容就应经被定义了。比如:

<FirstName>Joe</FirstName>

Joe在这里是数据,很显然你一看就知道Joe是一个姓氏(从标记就可以看出)。但是,如果你把标记写成下面的样子会如何呢。

<FirstName value="Joe"/>

这仍然是一个有效的XML写法,因为XML的语法允许这样写。但是,它看起来有些怪异,也很让人费解。再来看看下面的例子:

<Name type="first"value="Joe" />

你仍然可以看出Joe是个姓氏。但是,跟第一个例子比较,它既不一目了然也很麻烦。这就说明,应该由标记来决定你的数据。你应该保留有关内容的属性信息。下面是一个将属性位置放置不恰当的典型例子:

<Address>
           <Type>Billing</Type>
           <Street>900 N. Michigan Ave.</Street>
           <City>Chicago</City>
           <State>IL</State>
           <Zip>60612</Zip>
</Address>

在这个例子中,<Type>标记并不是地址的一部分,它只是地址的一个特性。所以,与其作为一个元素,还不如作为<Address>的属性。就象这样:

<Address type="billing">
           <Street>900 N. Michigan Ave.</Street>
           <City>Chicago</City>
           <State>IL</State>
           <Zip>60612</Zip>
</Address>

这样,在描述地址的相关数据时,<Address>元素就可以同它的子元素保持一致。


百度大联盟认证黄金会员Copyright© 1997- CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号 京ICP备09041801号-159
京公网安备:1101082134