XML có thể được sử dụng như thế nào?
XML được sử dụng trong nhiều khía cạnh của phát triển web.
XML thường được sử dụng để tách dữ liệu khỏi bản trình bày.
XML tách dữ liệu khỏi bản trình bày
XML không mang bất kỳ thông tin nào về cách được hiển thị.
Dữ liệu XML giống nhau có thể được sử dụng trong nhiều trường hợp trình bày khác nhau.
Bởi vì điều này, với XML, có sự tách biệt hoàn toàn giữa dữ liệu và bản trình bày.
XML thường là một bổ sung cho HTML
Trong nhiều ứng dụng HTML, XML được sử dụng để lưu trữ hoặc vận chuyển dữ liệu, trong khi HTML được sử dụng để định dạng và hiển thị cùng một dữ liệu.
XML tách dữ liệu khỏi HTML
Khi hiển thị dữ liệu trong HTML, bạn không cần phải chỉnh sửa tệp HTML khi dữ liệu thay đổi.
Với XML, dữ liệu có thể được lưu trữ trong các tệp XML riêng biệt.
Với một vài dòng mã JavaScript, bạn có thể đọc tệp XML và cập nhật nội dung dữ liệu của bất kỳ trang HTML nào.
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>
Bạn sẽ tìm hiểu thêm rất nhiều về cách sử dụng XML và JavaScript trong phần DOM của hướng dẫn này.
Dữ liệu giao dịch
Hàng nghìn định dạng XML tồn tại, trong nhiều ngành khác nhau, để mô tả các giao dịch dữ liệu hàng ngày:
- Cổ phiếu và cổ phần
- Giao dịch tài chính
- Dữ liệu y tế
- Dữ liệu toán học
- Các phép đo khoa học
- Thông tin tin tức
- Dịch vụ thời tiết
Ví dụ: Tin tức XML
XMLNews là một đặc tả để trao đổi tin tức và thông tin khác.
Việc sử dụng một tiêu chuẩn giúp cả nhà sản xuất tin tức và người tiêu dùng tin tức dễ dàng sản xuất, nhận và lưu trữ bất kỳ loại thông tin tin tức nào trên các phần cứng, phần mềm và ngôn ngữ lập trình khác nhau.
Một tài liệu XMLNews mẫu:
<?xml version="1.0" encoding="UTF-8"?>
<nitf>
<head>
<title>Colombia Earthquake</title>
</head>
<body>
<headline>
<hl1>143 Dead in Colombia Earthquake</hl1>
</headline>
<byline>
<bytag>By Jared Kotler, Associated Press Writer</bytag>
</byline>
<dateline>
<location>Bogota, Colombia</location>
<date>Monday January 25 1999 7:28 ET</date>
</dateline>
</body>
</nitf>
Ví dụ: Dịch vụ thời tiết XML
Một dịch vụ thời tiết quốc gia XML từ NOAA (Cơ quan Quản lý Khí quyển và Đại dương Quốc gia):
<?xml version="1.0" encoding="UTF-8"?>
<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>
<disclaimer_url>http://weather.gov/disclaimer.html</disclaimer_url>
<copyright_url>http://weather.gov/disclaimer.html</copyright_url>
</current_observation>