-->

Tổng quan về XML

XML viết tắt của eXtensible Markup Language, dùng để trao đổi và lưu trữ dữ liệu. Khác với HTML được dùng để hiển thị dữ liệu.

SGML model
Mô hình của SGML
 XML và HTML đều được phát triển lên từ SGML, là ngôn ngữ miêu tả đánh dấu chuẩn. Tuy nhiên XML và HTML được dùng vào các mục đich khác nhau theo nhu cầu phát triển của Internet.
Trước khi tìm hiểu về chúng các bạn nên tìm hiểu về CSS và Javascrip trước. Như chúng ta đã biết, XML cũng là ngôn ngữ đánh dấu giống HTML, tuy nhiên nó được thiết kế với mục đích chính là quan tâm đến việc trao đổi dữ liệu giữa các ứng dụng cũng như là dùng để lưu trữ dữ liệu cho các ứng dụng. Khi sử dụng XML các bạn phải định nghĩa các thẻ và quy tắc các thành phần của file XML.
XML không thể làm làm cả 2 việc hiển thị và nội dung. Như các bạn đã biết, công nghệ thông tin hiện đại chia làm hai phần, phân công nghệ chuyên hiển thị dữ liệu theo các cách khác nhau và phần chuyên xây dựng nội dung. Và như thế khi phát triển hệ thống thông tin, sẽ có hai luồng là phần phát triển nội dung và phần phát triển hình thức (các bạn tự map với hệ thống thực nhé).
 Một file XML dùng để lưu trữ thông tin ghi chú rằng Jani gửi đến Tove nhác nhở rằng đừng quên vào cuối tuần.

<?xml version="1.0"?>
<note>
    <to>Tove</to>
    <from>Jani</from>
    <heading>Reminder</heading>
    <body>Don't forget me this weekend!</body>
</note>
 Ta thấy rằng, xml cũng là một file tài liệu, file văn bản, chỉ có điều là văn bản được đánh dấu mà thôi. Đến đây, các bạn sẽ đặt câu hỏi, XML dùng để làm gì?
XML thường được dùng để phát triển Web, lưu trữ cũng như chia sẻ dữ liệu. 
XML có thể được dùng để tách dữ liệu từ một tài liệu HTML. Khi bạn muốn hiển thị trang html động thì cần phải tạo ra một file HTML cho mỗi lần hiển thị. Song, nếu bạn sử dụng XML, hãy lưu trữ các dữ liệu đó trong một file XML. Muốn làm được điều tương tự với việc hiển thị trên, bạn cần phải trình bày bố cục trang HTML với CSS. Dữ liệu theo từng tình huống sẽ được đưa ra từ file XML mà không cần phải thay đổi hay sử dụng một trang HTML khác.
XML sẽ đơn giản hóa việc chia sẻ dữ liệu. Các hệ thống trên thế giới có các kiểu định dạng dữ liệu khác nhau và khi dữ liệu của hệ thống này muốn chia sẻ cho hệ thống khác thì cần phải định dạng lại dữ liệu theo khuôn dạng của hệ thống đó. Với XML, file dữ liệu có thể tương thích với tất cả các hệ thống và do đó việc phát triển cũng như cung cấp các phần mềm hay phần cứng sẽ độc lập với cách thức tổ chức lưu trữ dữ liệu. Hay nói cách khác, dữ liệu được tạo ra có thể được sử dụng bởi các hệ thống với các nền tảng khác nhau.


Có thể tìm hiểu thêm ở W3c tại đây