• XML入门


    什么是 XML?

    • XML 指可扩展标记语言(EXtensible Markup Language)
    • XML 是一种标记语言,很类似 HTML
    • XML 的设计宗旨是传输数据,而非显示数据
    • XML 标签没有被预定义。您需要自行定义标签
    • XML 被设计为具有自我描述性
    • XML 是 W3C 的推荐标准

    XML 与 HTML 的主要差异

    XML 不是 HTML 的替代。

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

    XML 被设计为传输和存储数据,其焦点是数据的内容。

    HTML 被设计用来显示数据,其焦点是数据的外观。

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

    没有任何行为的 XML

    XML 是不作为的。

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

    下面是 John 写给 George 的便签,存储为 XML:

    <note>
    <to>George</to>
    <from>John</from>
    <heading>Reminder</heading>
    <body>Don't forget the meeting!</body>
    </note>

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

    XML 仅仅是纯文本

    XML 没什么特别的。它仅仅是纯文本而已。有能力处理纯文本的软件都可以处理 XML。

    不过,能够读懂 XML 的应用程序可以有针对性地处理 XML 的标签。标签的功能性意义依赖于应用程序的特性。

    通过 XML 您可以发明自己的标签

    上例中的标签没有在任何 XML 标准中定义过(比如 <to> 和 <from>)。这些标签是由文档的创作者发明的。

    这是因为 XML 没有预定义的标签。

    在 HTML 中使用的标签(以及 HTML 的结构)是预定义的。HTML 文档只使用在 HTML 标准中定义过的标签(比如 <p> 、<h1> 等等)。

    XML 允许创作者定义自己的标签和自己的文档结构。

    XML 不是对 HTML 的替代

    XML 是对 HTML 的补充。

    XML 不是对 HTML 的替代,理解这一点很重要。在大多数 web 应用程序中,XML 用于传输数据,而 HTML 用于格式化并显示数据。

    对 XML 的最好的描述是:

    XML 是独立于软件和硬件的信息传输工具。

    XML 是 W3C 的推荐标准

    可扩展标记语言 (XML) 于 1998 年 2 月 10 日成为 W3C 的推荐标准。

    XML 无所不在

    当我们看到 XML 标准突飞猛进的开发进度,以及大批的软件开发商采用这个标准的日新月异的速度时,真的是不禁感叹这真是令人叹为观止。

    目前,XML 在 Web 中起到的作用不会亚于一直作为 Web 基石的 HTML。

    XML 无所不在。XML 是各种应用程序之间进行数据传输的最常用的工具,并且在信息存储和描述领域变得越来越流行。

    实例:XML Weather Service

    国家气象服务案例,来自 NOAA (National Oceanic and Atmospheric Administration):

    <?xml version="1.0" encoding="ISO-8859-1" ?>
    
    <current_observation>
    
        <credit>NOAA's National Weather Service</credit> 
        <credit_URL>http://weather.gov/</credit_URL>
    
        <image>
            <url>http://weather.gov/images/xml_logo.gif</url> 
            <title>NOAA's National Weather Service</title> 
            <link>http://weather.gov</link> 
        </image>
    
        <location>New York/John F. Kennedy Intl Airport, NY</location> 
        <station_id>KJFK</station_id> 
        <latitude>40.66</latitude> 
        <longitude>-73.78</longitude> 
        <observation_time_rfc822>
            Mon, 11 Feb 2008 06:51:00 -0500 EST
        </observation_time_rfc822>
    
        <weather>A Few Clouds</weather> 
        <temp_f>11</temp_f> 
        <temp_c>-12</temp_c> 
        <relative_humidity>36</relative_humidity> 
        <wind_dir>West</wind_dir> 
        <wind_degrees>280</wind_degrees> 
        <wind_mph>18.4</wind_mph> 
        <wind_gust_mph>29</wind_gust_mph> 
        <pressure_mb>1023.6</pressure_mb> 
        <pressure_in>30.23</pressure_in> 
        <dewpoint_f>-11</dewpoint_f> 
        <dewpoint_c>-24</dewpoint_c> 
        <windchill_f>-7</windchill_f> 
        <windchill_c>-22</windchill_c> 
        <visibility_mi>10.00</visibility_mi>
    
        <icon_url_base>
            http://weather.gov/weather/images/fcicons/
        </icon_url_base> 
        <icon_url_name>nfew.jpg</icon_url_name> 
        <two_day_history_url>
            http://www.weather.gov/data/obhistory/KJFK.html
        </two_day_history_url> 
        <disclaimer_url>
            http://weather.gov/disclaimer.html
        </disclaimer_url> 
        <copyright_url>
            http://weather.gov/disclaimer.html
        </copyright_url>
    
    </current_observation>

    转自:W3School

  • 相关阅读:
    centos7下编译安装python3.7,且与python2.7.5共存
    Linux下的ctrl常用组合键
    命令 docker rm | docker rmi | docker prune 的差异
    docker操作命令大全和后台参数
    解决Linux下ssh登录后出现 报错 Write failed: Broken pipe 的方法
    在centos7 中docker info报错docker bridge-nf-call-iptables is disabled 的解决方法
    Linux下实现不活动用户登录超时后自动登出
    centos下非yum方式安装docker环境
    Git Error:There is no tracking information for the current branch.
    Vim操作:打开文件
  • 原文地址:https://www.cnblogs.com/quantumplan/p/3593743.html
Copyright © 2020-2023  润新知