(1)XML元素是可扩展的
<note>
<to>Tove</to>
<from>Jani</from>
<body>Don't forget me this weekend!</body>
</note>
假设我们已经创造了一个应用软件,用它从XML文档中获取<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>
原来的应用软件依然可用.
(2)XML元素是互相关联的
<book>
<title>My First XML</title>
<prod id="33-657" media="paper"></prod>
<chapter>Introduction to XML
<para>What is HTML</para>
<para>What is XML</para>
</chapter>
<chapter>XML Syntax
<para>Elements must have a closing tag</para>
<para>Elements must be properly nested</para>
</chapter>
</book>
Book 是根元素。Title, prod, 和 chapter 是书的子元素。Book是title, prod, 和 chapter的父元素。Title, prod, 和 chapter 是“同胞手足”(或姐妹元素)因为他们拥有相同的父类(parent),因为它们有相同的“父亲”
(3)元素里有内容
元素可以有不同的内容类型
一个XML元素是元素始标签和末标签之间的一切内容(始末标签也算在内)
一个元素可以含有元素内容,混合内容,简易内容,甚至空内容。一个元素也有属性
上述例子中,book含有元素内容,因为它包含着其他元素。Chapter拥有混合内容因为它既有文本又有其他元素。Para拥有家简易内容(或者文本内容),因为它只含有文本。Prod 有空内容,因为它没有携带信息。
上述例子中只有prod元素有属性。ID属性值为"33-657"。Media属性值为"paper".
(4)元素命名规范
名称可以含有字母,数字,和其他字符
名称不能以数字或标点字符开头
名称不能以xml(或XML,或Xml等)字母开头
名称不能含有空格
避免在名称中出现"-" 和"."。举个例子,如果你取名称为"first-name," 软件会试着从first中减去name,这结果会造成运行混乱。如果你取名称为“first.name”,软件可能会认为"name"是对象"first."的属性
XML文档常有相应的数据库,数据库是与XML文档的元素相符的。给XML文档元素取名时用上数据库里的命名规则,这是个很好的习惯。
元素名称中不应用":"因为它已经为“名称空间(namespaces)”的使用而专门预留出来了