|
XML元素是可扩展的,它们之间是存在着某些关系。
XML元素须遵守一些简单的命名规则。
XML元素是可扩展的
XML元素是可被扩展,来携带更多的信息。
请看下面这个XML标签例子: <note>
<to>Tove</to>
<from>Jani</from>
<body>Don't forget me this weekend!</body>
</note>
让我们设想一下,我们创建了一个应用程序,可将<to>、<from>以及<body>元素提取出来,并产生以下的输出: MESSAGE
To: Tove
From: Jani
Don't forget me this weekend!
想象一下,之后这个XML文档作者又向这个文档添加了一些额外的信息: <note>
<date>2002-08-01</date>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
那么这个应用程序会中断或崩溃吗?
不会。这个应用程序仍然可以找到XML文档中的<to>、<from>以及<body>元素,并产生同样的输出:
XML文档是可扩展的。
XML元素之间是有关系的
元素之间有父与子的关系。
为了理解XML的术语,我们需要了解XML之间的关系是如何命名的,以及元素的内容是如何被描述的。
想象一下,关于某本书的描述: 我的第一个XML
XML 简介
HTML 的概念
XML 的概念
XML 的语法
元素必须拥有关闭标签
元素必须被正确地嵌套
想象一下,XML文档是如何描述这本书的: <book>
<title>我的第一个XML</title>
<prod id="33-657" media="paper"></prod>
<chapter>XML 简介
<para>HTML 的概念</para>
<para>XML 的概念</para>
</chapter>
<chapter>XML 的语法
<para>元素必须拥有关闭标签</para>
<para>元素必须被正确地嵌套</para>
</chapter>
</book>
book(书)是根元素。Title、prod以及chapter是book的子元素。book是Title、prod以及chapter的父元素。Title、prod以及chapter是兄弟元素或者姐妹元素,这是因为它们都拥有相同的父母。
元素拥有内容
元素可以拥有不同的内容类型。
一个XML元素由(且包括)元素的开始标签起始,到(且包括)元素的结束标签终止。
一个元素可以拥有元素内容、混合型内容、简易内容或者空内容。元素也可以拥有属性。
在上面的例子中,book有元素内容,因为它包含了其他的元素。chapter拥有混合型内容,因为即包含文本,也包含其他的元素。para拥有简易内容(或文本内容),因为它仅包含文本。prod拥有空内容,因为它没有携带信息。
在上面的例子中,仅有prod元素拥有属性。名为id的属性的值为"33-657"。名为medea的属性的值为"paper"。
元素命名
XML元素必须遵守如何的命名规则:
- 名字可包含字母、数字以及其他的字符
- 名字不能以数字或者标点符号开始
- 名字不能以字符“xml”(或者XML、Xml)开始
- 名字不能包含空格
当您“发明创造”元素名称时,请留意并遵循下面的简单的规则:
您可以使用任何名称,没有保留字,但是理想的做法是使名称具有描述性。使用下划线的名称也是不错的。
例子: <first_name>,<last_name>
应该在名称中避免"-"和"."。比方说,如果您将某个元素命名为"first-name",那么当您的软件试图从first段来提取名称时可能会出现混乱的局面。或者如果您将某个元素命名为"first.name",您的软件也许会认为"name"是"first"对象的一个属性。
元素名称可以是你希望的任何长度,但是也不要太夸张。名称应当比较简短,比如:<book_title>,而不是:<the_title_of_the_book>。
XML文档经常有一个对应的数据库,其中的域会对应XML文档中的某个元素。有一个实用的经验,即使用数据库的名称规则命名XML文档中的元素。
非英语的字母比如éòá也是合法的XML元素名,不过需要注意当软件开发商不支持字母时出现的问题。
不应在XML元素名称中使用":",这是由于它是用于被称作命名空间(namespaces)的保留字。
 |
频道声明:本频道的文章除部分特别声明禁止转载的专稿外,可以自由转载.但请务必注明出出处和原始作者 文章版权归本频道与文章作者所有.对于被频道转载文章的个人和网站,我们表示深深的谢意。
| 原始作者:佚名 |
录入时间:2007-6-20 17:14:13 |
| 信息来源:不详 |
投稿信箱:itqoo@126.com |
|
|
 |
|