`

xml 文档树

    博客分类:
  • XML
阅读更多

xml 文档树

XML documents form a tree structure that starts at "the root" and branches to "the leaves".
XML 文档树起始于“根元素”,并以此为基础扩展文档的分支结构。


An Example XML Document
下面举一个XML文档案例

XML documents use a self-describing and simple syntax:
XML 文档使用一种相对简单的自述性语法:

<?xml version="1.0" encoding="ISO-8859-1"?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>

The first line is the XML declaration. It defines the XML version (1.0) and the encoding used (ISO-8859-1 = Latin-1/West European character set). 
代码的第一行对XML文档做出了声明。它定义了XML版本号(1.0)以及文档所使用的字符编码(ISO-8859-1:拉丁文/西欧字符集)。

The next line describes the root element of the document (like saying: "this document is a note"): 
接下来的一行定义了文档的根元素(指明该文档是一份便条):

<note>

The next 4 lines describe 4 child elements of the root (to, from, heading, and body):
再接下去的4行定义了根元素的4个子元素,分别是“to”、“form”、“heading”和“body”:

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

And finally the last line defines the end of the root element:
文档的最后一行定义了根元素的结束标签:

</note>

You can assume, from this example, that the XML document contains a note to Tove from Jani.
举个例子来说,你可以假设这份XML文档是Jani递交给Tove的一张便条。

Don't you agree that XML is pretty self-descriptive?
通过上述案例,对于XML是一种完美的自述性语言这点应该毋庸置疑了吧?


XML Documents Form a Tree Structure
XML 树状结构文档

XML documents must contain a root element. This element is "the parent" of all other elements.
XML 文档必须包含一个根元素。这个根元素是其它所有元素的“父元素”。

The elements in an XML document form a document tree. The tree starts at the root and branches to the lowest level of the tree.
这些元素位于XML树状结构文档内。树状结构起始于根元素,并向更低级别的树状分支结构扩展。

All elements can have sub elements (child elements):
文档中所有的元素都可以包含二级元素(即:子元素):

<root>
  <child>
    <subchild>.....</subchild>
  </child>
</root>

The terms parent, child, and sibling are used to describe the relationships between elements. Parent elements have children. Children on the same level are called siblings (brothers or sisters).
这里提到的一些术语,如:父元素、子元素、同级元素使用与描述元素之间的相互关系的。父元素包含子元素;和子元素同级的称为同级元素(或兄弟、姐妹元素)。

All elements can have text content and attributes (just like in HTML).
所有的元素都包含文本内容和属性(这点和HTML极其类似)。


Example:
案例:

The image above represents one book in the XML below:
上述图表代表了下述XML文档中的一本书:

<bookstore>
<book category="COOKING">
  <title lang="en">Everyday Italian</title> 
  <author>Giada De Laurentiis</author> 
  <year>2005</year> 
  <price>30.00</price> 
</book>
<book category="CHILDREN">
  <title lang="en">Harry Potter</title> 
  <author>J K. Rowling</author> 
  <year>2005</year> 
  <price>29.99</price> 
</book>
<book category="WEB">
  <title lang="en">Learning XML</title> 
  <author>Erik T. Ray</author> 
  <year>2003</year> 
  <price>39.95</price> 
</book>
</bookstore>

The root element in the example is <bookstore>. All <book> elements in the document are contained within <bookstore>.
案例中的根元素是<bookstore>。文档内所有的<book>元素都位于<bookstore>内。

The <book> element has 4 children: <title>,< author>, <year>, <price>.
与此同时,<book>元素还包含了4个子元素:<title>、< author>、<year>、<price>。

评论

相关推荐

    XML文件读写

    3. `xmlNewNode()`: 创建一个新的XML节点,用于构建XML文档树。 4. `xmlNewChild()`: 在父节点下创建子节点。 5. `xmlNewProp()`: 为节点添加属性。 6. `xmlSetProp()`: 设置节点的属性值。 7. `xmlNodeGetContent()...

    VC++ ,XML类,XML文件读写类

    - 解析过程可能涉及递归地遍历XML文档树,构建内部的数据结构以供后续操作。 5. **XML文件的写入** - 对于写入,类可能提供方法来创建新XML文档,或者修改现有文档的节点和属性。 - 序列化时,类将内部数据结构...

    生成、解析xml的四种方式(dom,dom4j,sax,jdom)

    SAX是一种基于事件驱动的解析器,它不构建完整的XML文档树,而是通过事件回调的方式处理XML元素。当解析器遇到文档的开头、元素开始、元素结束等事件时,会调用预先定义的处理器方法。这种方式节省了内存,但操作...

    一种XML数据库的数据模型PDF,深层次讲解XML

    XML文档遵循严格的层次结构,每个文档都有一个根元素,根元素下可以包含子元素,子元素可以有子元素,以此类推,形成一棵树状结构,我们称之为XML文档树。 1. **XML文档结构**: - **元素(Element)**:XML文档的...

    xml——————表单资源

    这些节点可以嵌套形成树状结构,也就是常说的XML文档树。这种结构使得通过遍历树来访问和操作数据变得简单。 XML还支持命名空间(Namespaces),这是一个重要的特性,它允许在同一文档中使用来自不同来源的标签而不...

    xml生成,解析开源库

    5. **生成XML**:使用`xmlNewDoc()`和`xmlNewNode()`等函数构建XML文档树,然后调用`xmlSaveFile()`或`xmlSaveFormatFileEnc()`生成XML文件。 6. **清理资源**:解析或生成完成后,记得释放内存和关闭文件,如调用`...

    EXCEL转XML小工具附VBA源码

    3. **生成XML**:VBA脚本根据Excel数据创建XML文档,使用`DOMDocument`对象来构建和操作XML文档树。`createElement`和`appendChild`等方法用于创建和连接XML元素,而`save`方法则将XML文档保存到文件中。 4. **输出...

    Servlet利用SAX解析XML文档

    SAX解析器不创建整个XML文档树,而是当遇到XML文档的各个部分(如元素、属性、文本等)时,触发相应的事件回调函数。开发者通过实现SAX解析器的ContentHandler接口,定义这些回调函数来处理这些事件。 以下是使用...

    full方式解析xml

    1. 节省内存:SAX解析器不存储整个XML文档树,只在需要时处理元素,减少了内存消耗。 2. 高效:解析速度较快,因为它只需要逐行读取和解析XML,不需要构建完整的DOM树。 3. 流式处理:可以边读取边处理,适合处理...

    xmlsec-1.4.3.rar

    XML-signature 中的签名算法就是对 XML文档树 进行签名,说明如下: 1、确认签名内容,通过 URL 将这些内容表示为引用资源,用 Reference 标识。对于断言信息来说,其 URI 是saml:Assertion的 ID 2、对待签名的数据...

    无废话 XML.pdf

    4. **XML文档树** - **XML** 文档可以用一棵树的形式来表示,其中每个节点代表一个元素或属性。 #### 三、DTD(文档类型定义) **DTD** 是一种用于定义 **XML** 文档结构的规范,包含以下组成部分: 1. **文档...

    dom4j_XML.rar_DOM4J_dom4j xml

    解析过程中,DOM4J会构建出一个完整的XML文档树。 3. **访问和操作元素**:`Element`是DOM4J中的基本节点类型,代表XML文档中的元素。可以使用`Document.getRootElement()`获取根元素,然后通过`Element`的`...

    生成+解析XML

    SAX是一种基于事件驱动的解析器,它不创建整个XML文档树,而是逐行读取文件,当遇到元素开始、结束、属性等事件时触发回调函数。这种方式适用于处理大型XML文件,因为它节省了内存。Java中,可以通过org.xml.sax包来...

    php xmlReader & xmlWriter

    - DOM构建完整的XML文档树,提供了强大的数据访问和修改能力,但代价是高内存消耗。 - `xmlReader`和`xmlWriter`则更侧重于性能和效率,适用于处理大型数据集。 #### 2. 与SimpleXML的对比: - SimpleXML提供了一...

    Excel与XML相互转化的Java实现

    具体实现涉及到使用POI API遍历Excel工作表中的每一个单元格,构建XML文档树。 ```java // 示例代码片段 FileInputStream file = new FileInputStream(new File("example.xlsx")); Workbook workbook = new ...

    用c#操作Xml

    它不创建整个XML文档树,而是逐个节点地读取,这使得它在处理大型XML文档时效率较高。以下是一个基本的使用示例: ```csharp using System.Xml; // 创建XmlReader实例 using (var reader = XmlReader.Create(...

    oldXerces-J-bin.2.0.0.beta4.zip

    SAX是一种基于事件驱动的轻量级XML解析方式,它不创建整个XML文档树,而是通过事件回调函数来处理XML数据,适合处理大型XML文件。 **标签解读:** - **xerces**:这是一个与XML解析相关的关键词,代表了Xerces项目...

    SDcard数据访问SAX解析XML文件

    SAX是一种事件驱动的XML解析方法,它不创建整个XML文档树,而是逐行读取XML文件,遇到元素、属性等时触发相应的事件处理器。这种方式对内存使用友好,适用于处理大文件或资源有限的环境,如移动设备。 要使用SAX...

    浅显易懂的XML学习笔记全集

    XML的结构可以视为一棵树,称为XML文档树。例如,下面的XML文档表示了一个书店: ```xml &lt;?xml version="1.0" encoding="ISO-8859-1"?&gt; &lt;title lang="en"&gt;Everyday Italian &lt;author&gt;Giada De Laurentiis ...

Global site tag (gtag.js) - Google Analytics