zoukankan      html  css  js  c++  java
  • 测试工作——XML

    • XML 指可扩展标记语言(eXtensible Markup Language)。
    • XML 被设计用来传输和存储数据
    • XML 标签没有被预定义。您需要自行定义标签。
    • XML 是独立于软件和硬件的信息传输工具。
    • XML 是各种应用程序之间进行数据传输的最常用的工具。

    XML 和 HTML 之间的差异

    XML 不是 HTML 的替代。

    XML 和 HTML 为不同的目的而设计:

    • XML 被设计用来传输和存储数据,其焦点是数据的内容。
    • HTML 被设计用来显示数据,其焦点是数据的外观。

    HTML 旨在显示信息,而 XML 旨在传输信息。

    XML 不会做任何事情

    也许这有点难以理解,但是 XML 不会做任何事情。XML 被设计用来结构化、存储以及传输信息。

    下面实例是 Jani 写给 Tove 的便签,存储为 XML:

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

    上面的这条便签具有自我描述性。它包含了发送者和接受者的信息,同时拥有标题以及消息主体。

    但是,这个 XML 文档仍然没有做任何事情。它仅仅是包装在 XML 标签中的纯粹的信息。我们需要编写软件或者程序,才能传送、接收和显示出这个文档。

    XML 命名规则

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

    • 名称可以包含字母、数字以及其他的字符
    • 名称不能以数字或者标点符号开始
    • 名称不能以字母 xml(或者 XML、Xml 等等)开始
    • 名称不能包含空格

    可使用任何名称,没有保留的字词。

    最佳命名习惯

    使名称具有描述性。使用下划线的名称也很不错:<first_name>、<last_name>。

    名称应简短和简单,比如:<book_title>,而不是:<the_title_of_the_book>。

    避免 "-" 字符。如果您按照这样的方式进行命名:"first-name",一些软件会认为您想要从 first 里边减去 name。

    避免 "." 字符。如果您按照这样的方式进行命名:"first.name",一些软件会认为 "name" 是对象 "first" 的属性。

    避免 ":" 字符。冒号会被转换为命名空间来使用(稍后介绍)。

    XML 文档经常有一个对应的数据库,其中的字段会对应 XML 文档中的元素。有一个实用的经验,即使用数据库的命名规则来命名 XML 文档中的元素。

    在 XML 中,éòá 等非英语字母是完全合法的,不过需要留意,您的软件供应商不支持这些字符时可能出现的问题。

    XML 元素是可扩展的

    XML 元素是可扩展,以携带更多的信息。XML 的优势之一,就是可以在不中断应用程序的情况下进行扩展。

    XML 元素 vs. 属性

    请看这些实例:

    <person sex="female">
     <firstname>Anna</firstname>
     <lastname>Smith</lastname>
     </person>
    <person>
     <sex>female</sex>
     <firstname>Anna</firstname>
     <lastname>Smith</lastname>
     </person>

    在第一个实例中,sex 是一个属性。在第二个实例中,sex 是一个元素。这两个实例都提供相同的信息。

    没有什么规矩可以告诉我们什么时候该使用属性,而什么时候该使用元素。我的经验是在 HTML 中,属性用起来很便利,但是在 XML 中,您应该尽量避免使用属性。如果信息感觉起来很像数据,那么请使用元素吧。

    在此我们极力向您传递的理念是:元数据(有关数据的数据)应当存储为属性,而数据本身应当存储为元素。

    如下面的例子:

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

    更好的方式:

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

    避免 XML 属性?

    因使用属性而引起的一些问题:

    • 属性不能包含多个值(元素可以)
    • 属性不能包含树结构(元素可以)
    • 属性不容易扩展(为未来的变化)

    属性难以阅读和维护。请尽量使用元素来描述数据。而仅仅使用属性来提供与数据无关的信息。

    不要做这样的蠢事(这不是 XML 应该被使用的方式):

    <note day="10" month="01" year="2008"  to="Tove" from="Jani" heading="Reminder"  body="Don't forget me this weekend!">
     </note>

    形式良好的 XML 文档

    "形式良好"的 XML 文档拥有正确的语法。

    在前面的章节描述的语法规则:

    • XML 文档必须有一个根元素
    • XML元素都必须有一个关闭标签
    • XML 标签对大小写敏感
    • XML 元素必须被正确的嵌套
    • XML 属性值必须加引号

    查看 XML 文件

    不要指望 XML 文件会直接显示为 HTML 页面。

    <?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>

     XML 文档将显示为代码颜色化的根以及子元素。通过点击元素左侧的加号(+)或减号( - ),可以展开或收起元素的结构。要查看原始的 XML 源(不包括 + 和 - 符号),选择"查看页面源代码"或从浏览器菜单"查看源文件"。

    为什么 XML 显示这个样子?

    XML 文档不会携带有关如何显示数据的信息。

    由于 XML 标签由 XML 文档的作者"发明",浏览器无法确定像 <table> 这样一个标签究竟描述一个 HTML 表格还是一个餐桌。

    在没有任何有关如何显示数据的信息的情况下,大多数的浏览器都会仅仅把 XML 文档显示为源代码。

    在下面的章节,我们会了解几个有关这个显示问题的解决方案,其中会使用 CSS、XSLT 和 JavaScript。

    XML DOM

    XML DOM(XML Document Object Model)定义了访问和操作 XML 文档的标准方法

    XML DOM 把 XML 文档作为树结构来查看。JavaScript 可存取的对象为XML DOM。

    所有元素可以通过 DOM 树来访问。可以修改或删除它们的内容,并创建新的元素。元素,它们的文本,以及它们的属性,都被认为是节点。

    换换句话说:XML DOM 是用于获取、更改、添加或删除 XML 元素的标准。

  • 相关阅读:
    Linux下替换默认版本的protobuf
    论文笔记——NEURAL ARCHITECTURE SEARCH WITH REINFORCEMENT LEARNING
    kafka 学习之初体验
    git命令01
    git 命令02
    SSH远程连接连接其他主机,等待时间过长的原因。
    lsof命令详解
    文本处理命令
    Windows Server 2008 远程桌面连接拒绝
    vim文本编辑工具—修改文件内容
  • 原文地址:https://www.cnblogs.com/sheropan/p/5142652.html
Copyright © 2011-2022 走看看