XML 入门学习笔记(一)
2016-04-28 09:12
429 查看
第一章 XML的介绍和使用
1.1 简介
XML是一种可扩展标记性语言,它主要用于存储和传输数据。它是连接人和机器的一个桥梁。它的标记可以通过用户自己定义,它被W3C推荐。
XML Example 1
<?xml version="1.0" encoding="UTF-8"?> <note> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don't forget me this weekend!</body> </note>
这个例子的标记就是用户自己设计,它用来保存发件人和收件人信息,同时它也保存了邮件头和邮件内容,但是这个XML文档没做任何事情,它仅仅是把信息用标签封装起来而已。
1.1.1 XML 和 HTML 的不同
XML和HTML有不同的设计目的:l XML用来存储和传输数据-----------关注的数据内容
l HTML用来显示数据-------------------关注数据的显示方式
l XML不用像HTML预定义标签
XML不用预定义标签,就如上面的例子(<to> and<from>),这些标签需要XML的作者自己发明。HTML需要用预定义标签,像<p>, <h1>, <table>等才能工作。然而XML的使用,作者必须自己定义tags和文档结构。
大多数XML应用希望一直能被使用,即使添加和移走数据。试想一下,之前设计的XML Example1,如果一个新版本出现,添加<date> 和 <hour> 元素,移走 <heading>。变成如下XML Example1,老版本的数据将依然能被应用程序使用。
<note> <date>2015-09-01</date> <hour>08:30</hour> <to>Tove</to> <from>Jani</from> <body>Don't forget me this weekend!</body> </note>
1.1.2 XML把事情简单化
XML能使数据分享、数据传输、平台变更、可利用数据简单化。大多数系统包含的数据格式是冲突的,改变两个冲突系统间的数据,对于开发者而言是一个很费时的工作。大量的数据别转化,互斥的数据经常被丢失。XML用纯文本格式存储数据,这种格式给软硬件之间的数据存储、数据传输以及数据的分享提供了平台。
用XML,数据能被各种读的设备利用,例如人、电脑、声音设备、新的事物等、
1.1.3 怎么使用XML
XML大多数被应用在web开发方面和把描述和数据分离方面。
1. XML把数据和描述分离
XML不承担怎么在页面显示的任何职责,相同的XML数据可以在多个描述场景中使用。由于这,使用XML可以把数据和描述完全分离
2. XML经常通过HTML实现
在大多数HTML应用程序中,XML用来存储和传输数据,当用HTML格式显示相同的数据时。
3. XML把数据从HTML中分离出来
当使用HTML来显示数据时,一旦数据库发生变化,作者就不得不去编辑HTML文件。可以使用XML,把数据存储在分离的XML文件中,用几行JavaScrip代码去读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的使用和JavaScrip。
1.1.4 事务数据
在大多数不同的领域,成千上万种XML格式其描述一天天的数据事务:l 股票与证券
l 官方事务
l 医疗数据
l 数学数据
l 科学计量
l 新闻信息
l 天气服务
例如:XML新闻
XML新闻是交换新闻和其他信息的一种策略:用一个标准,这个标准使新闻的生产者和新闻的消费者去生产、接收和把从不同软件、硬件以及程序语言中收集的各种信息信息归档变得更为简单。
XMLNews.xml
<?xml version="1.0" encoding="UTF-8"?> <nitf> <head> <title>ColombiaEarthquake</title> </head> <body> <headline> <hl1>143 Dead in Colombia Earthquake</hl1> </headline> <byline> <bytag>ByJared Kotler, Associated Press Writer</bytag> </byline> <dateline> <location>Bogota,Colombia</location> <date>Monday January 25 1999 7:28 ET</date> </dateline> </body> </nitf>
例如:天气服务
从NOAA(美国国家海洋和大气句)获取的天气服务的XML.
XMLWeatherService.xml
<?xml version="1.0" encoding="UTF-8"?> <current_observation> <credit>NOAA'sNational Weather Service</credit> <credit_URL>http://weather.gov/</credit_URL> <image> <url>http://weather.gov/images/xml_logo.gif</url> <title>NOAA'sNational Weather Service</title> <link>http://weather.gov</link> </image> <location>NewYork/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>AFew 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> <disclaimer_url>http://weather.gov/disclaimer.html</disclaimer_url> <copyright_url>http://weather.gov/disclaimer.html</copyright_url> </current_observation>
1.2 XML树
XML文档是一个树格式是,树结构是从根开始延伸到叶。一个XML文档的例子:如上图描述的books.xml文件:
<?xml version="1.0" encoding="UTF-8"?> <bookstore> <book category="cooking"> <title lang="en">Everyday Italian</title> <author>GiadaDe Laurentiis</author> <year>2005</year> <price>30.00</price> </book> <book category="children"> <title lang="en">Harry Potter</title> <author>JK. Rowling</author> <year>2005</year> <price>29.99</price> </book> <book category="web"> <title lang="en">Learning XML</title> <author>ErikT. Ray</author> <year>2003</year> <price>39.95</price> </book> </bookstore>
相关文章推荐
- 第10、11周项目— 点-圆-圆柱类族的设计(1)
- SpringMvc_@RequestMapping设置Router Url大小写不敏感
- Angularjs基础(十)
- OpenCV学习笔记(27)KAZE 算法原理与源码分析(一)非线性扩散滤波
- 如何查看Linux操作系统版本
- hdu1166 敌兵布阵(树状数组 && 线段树单点更新)
- struts2与hibernate的优缺点
- 第九周-深复制体验
- <html>a
- Web测试要点(功能、性能、可用性、兼容、安全)
- 第九周项目3——人数不定的工资类
- 如何通过aix通过端口号查到进程号
- Linux中的命令 make -f 是什么意思
- UML类图与类的关系详解
- 第九周阅读项目-(2)
- 链串的基本操作
- 110.Balanced Binary Tree从8ms到2ms到1ms
- js实现99乘法表
- linux系统启动时更改MAC地址
- 【代码笔记】iOS-判断是否是模拟机