📅  最后修改于: 2023-12-03 15:24:42.515000             🧑  作者: Mango
XML(可扩展标记语言)是将数据存储、传输和使用的常用格式。在 XML 中,文档的结构通过定义 XML 元素来实现。本文将向您介绍如何定义 XML 文档的结构。
XML 元素是 XML 文档的基本单位。每个 XML 元素都可以包含文本和其他 XML 元素。每个 XML 元素都必须有一个开始标记和一个结束标记。
以下是一个 XML 元素的示例:
<book>
<title>Harry Potter and the Philosopher's Stone</title>
<author>J.K. Rowling</author>
<publisher>Bloomsbury</publisher>
</book>
在上面的示例中,<book>
是一个 XML 元素,其中包含了三个子元素:<title>
、<author>
和 <publisher>
。
请注意,如果一个 XML 元素不包含任何子元素,则可以使用自闭合标记来表示它。例如:
<bookstore>
<book category="Children" price="29.99">
<title lang="en">Harry Potter</title>
<author>J.K. Rowling</author>
</book>
<book category="Web" price="49.99">
<title lang="en">Learning XML</title>
<author>Erik T. Ray</author>
</book>
</bookstore>
在上面的示例中,<book>
元素包含了两个属性:category
和 price
,同时也包含了两个子元素:<title>
和 <author>
。由于 category
和 price
属性是可以直接定义在 <book>
的开始标记中的,所以在两个 book
子元素结束标记之前,它们的自闭合标记就已经出现了。
XML 属性是表示 XML 元素属性的键值对。在 XML 元素中,属性用于提供关于元素的额外信息。
以下是一个属性的示例:
<book category="Children" price="29.99">
<title>Harry Potter</title>
<author>J.K. Rowling</author>
</book>
在上面的示例中,category
和 price
是属性名称,Children
和 29.99
是属性值。
可以在 XML 元素的开始标记中定义属性:
<bookstore>
<book category="Children" price="29.99">
<title>Harry Potter</title>
<author>J.K. Rowling</author>
</book>
<book category="Web" price="49.99">
<title>Learning XML</title>
<author>Erik T. Ray</author>
</book>
</bookstore>
在上面的示例中,category
和 price
这两个属性都定义在了 book
元素的开始标记中。
XML 允许使用 XML 命名空间来避免元素名称冲突。在 XML 中,命名空间可以通过以下方式定义:
<h:bookstore xmlns:h="http://www.w3.org/TR/html4/"
xmlns:f="http://www.w3schools.com/furniture">
<h:book category="Children">
<h:title lang="en">Harry Potter</h:title>
<h:author>J.K. Rowling</h:author>
<f:color>red</f:color>
</h:book>
</h:bookstore>
在上面的示例中,xmlns:h
使用了命名空间 h
,它定义了一个指向 HTML 4 的命名空间。在该 bookstore
元素中,我们可以使用如下的限定名称:
h:book
h:title
h:author
同时,我们也可以使用 f:color
属性,它使用了命名空间 f
。
本文介绍了 XML 元素、XML 属性和 XML 命名空间。在设计 XML 文档时,您可以使用这些元素来定义 XML 数据的结构,并在其中存储有用的信息。