最新的Web开发教程
 

XML元素


一个XML文档包含XML元素。


什么是XML元素?

XML元素是一切(including)元素的开始标记(including)该元素的结束标记。

<price>29.99</price>

一个元素可以包含:

  • 文本
  • 属性
  • 其他元素
  • 或上述的混合
<bookstore>
  <book category="children">
    <title>Harry Potter</title>
    <author>J K. Rowling</author>
    <year>2005</year>
    <price>29.99</price>
  </book>
  <book category="web">
    <title>Learning XML</title>
    <author>Erik T. Ray</author>
    <year>2003</year>
    <price>39.95</price>
  </book>
</bookstore>

在上面的例子:

<title>, <author>, <year><price>text content ,因为它们包含文本(like 29.99)

<bookstore><book>element contents ,因为它们含有的元素。

<book>有一个attribute (category="children")


空XML元素

没有内容的元素被认为是空的。

在XML中,你可以指示像这样的空元素:

<element></element>

您还可以使用所谓的自闭标签:

<element />

这两种形式产生XML软件(读者,解析器,浏览器)相同的结果。

空元素可以有属性。


XML命名规则

XML元素必须遵循以下命名规则:

  • 元素名称是区分大小写
  • 元素名称必须以字母或下划线开始
  • 元素名称不能以字母的xml启动(or XML, or Xml, etc)
  • 元素名称可以包含字母,数字,连字符,下划线和句号
  • 元素名称不能包含空格

任何名称都可以使用,没有的话被保留(except xml)


最佳命名做法

创建描述性名称,例如: <person>, <firstname><lastname>

创建简短的名称,像这样: <book_title>不喜欢这样的: <the_title_of_the_book>

避免"-" 如果命名的东西"first-name" ,一些软件会认为你想减去"name" ,从"first"

避免"." 。 如果你的东西命名为"first.name"一些软件会认为"name"是对象的属性"first"

避免":" 冒号被保留用于名字空间(more later)

像EOA非英文字母是XML完全合法的,但要注意的问题,如果你的软件不支持他们。


样式命名

有用于XML元素定义没有命名的样式。 但这里有一些常用的有:

样式 描述
Lower case<firstname> 所有字母小写
Upper case<FIRSTNAME> 所有字母大写
Underscore<first_name> 下划线分隔词
Pascal case<FirstName> 每个单词首字母大写
Camel case<firstName> 每个单词首字母大写,除了第一

如果你选择的命名风格,这是好事,是一致的!

XML文档通常有一个相应的数据库。 通常的做法是使用数据库的命名规则的XML元素。

骆驼的情况是JavaScript中常见的命名规则。


XML元素是可扩展

XML元素可以扩展到携带更多的信息。

请看下面的XML例子:

<note>
  <to>Tove</to>
  <from>Jani</from>
  <body>Don't forget me this weekend!</body>
</note>

让我们想象一下,我们创建了一个提取的应用程序中的<至>,<距离>和<body>从XML文档元素产生这样的输出:

MESSAGE

To:托芙
From:贾尼

不要忘了我这个周末!

想象一下,XML文档的作者增加了一些额外的信息,它:

<note>
  <date>2008-01-10</date>
  <to>Tove</to>
  <from>Jani</from>
  <heading>Reminder</heading>
  <body>Don't forget me this weekend!</body>
</note>

如果应用程序中断或崩溃?

第应用程序仍然应该能够找到<to>, <from><body> XML文档中的元素,并产生相同的输出。

这是XML的美女之一。 它可以在不破坏的应用程序进行扩展。