XML 如何使用?
XML 在 Web 开发的许多方面都有应用。
XML 通常用于将数据与表示形式分离开。
XML 分离数据与表示形式
XML 不包含关于如何显示的任何信息。
同一份 XML 数据可以在许多不同的表示场景中使用。
因此,使用 XML,可以实现数据与表示形式的完全分离。
XML 常常是 HTML 的补充
在许多 HTML 应用中,XML 用于存储或传输数据,而 HTML 则用于格式化和显示相同的数据。
XML 分离数据与 HTML
在 HTML 中显示数据时,不应该在数据更改时去编辑 HTML 文件。
使用 XML,数据可以存储在单独的 XML 文件中。
通过几行 JavaScript 代码,您可以读取 XML 文件并更新任何 HTML 页面的数据内容。
Books.xml
<?xml version="1.0" encoding="UTF-8"?>
<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">XQuery Kick Start</title>
<author>James McGovern</author>
<author>Per Bothner</author>
<author>Kurt Cagle</author>
<author>James Linn</author>
<author>Vaidyanathan Nagarajan</author>
<year>2003</year>
<price>49.99</price>
</book>
<book category="web" cover="paperback">
<title lang="en">Learning XML</title>
<author>Erik T. Ray</author>
<year>2003</year>
<price>39.95</price>
</book>
</bookstore>
在本教程的 DOM 部分,您将学到更多关于使用 XML 和 JavaScript 的知识。
交易数据
在许多不同的行业中,存在数千种 XML 格式,用于描述日常数据交易
- 股票和证券
- 金融交易
- 医疗数据
- 数学数据
- 科学测量
- 新闻信息
- 天气服务
示例:XML 新闻
XMLNews 是用于交换新闻和其他信息的规范。
使用标准可以使新闻生产者和新闻消费者更容易地在不同的硬件、软件和编程语言之间生成、接收和归档任何类型的新闻信息。
一个示例 XMLNews 文档
<?xml version="1.0" encoding="UTF-8"?>
<nitf>
<head>
<title>哥伦比亚地震</title>
</head>
<body>
<headline>
<hl1>哥伦比亚地震造成 143 人死亡</hl1>
</headline>
<byline>
<bytag>作者:Jared Kotler,美联社撰稿人</bytag>
</byline>
<dateline>
<location>哥伦比亚波哥大</location>
<date>1999 年 1 月 25 日星期一 7:28 ET</date>
</dateline>
</body>
</nitf>
示例:XML 天气服务
来自 NOAA(美国国家海洋和大气管理局)的 XML 国家天气服务
<?xml version="1.0" encoding="UTF-8"?>
<current_observation>
<credit>NOAA 国家气象局</credit>
<credit_URL>http://weather.gov/</credit_URL>
<image>
<url>http://weather.gov/images/xml_logo.gif</url>
<title>NOAA 国家气象局</title>
<link>http://weather.gov</link>
</image>
<location>纽约/肯尼迪国际机场,纽约</location>
<station_id>KJFK</station_id>
<latitude>40.66</latitude>
<longitude>-73.78</longitude>
<observation_time_rfc822>周一,2008 年 2 月 11 日 06:51:00 -0500 EST
</observation_time_rfc822>
<weather>少云</weather>
<temp_f>11</temp_f>
<temp_c>-12</temp_c>
<relative_humidity>36</relative_humidity>
<wind_dir>西</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>
<disclaimer_url>http://weather.gov/disclaimer.html</disclaimer_url>
<copyright_url>http://weather.gov/disclaimer.html</copyright_url>
</current_observation>