XML
Nội dung tài liệu:
GIỚI THIỆU XML
1.1. XML là gì?
XML viết tắt của chữ eXtensible Markup Language
XML là một bộ qui luật về cách chia một tài liệu ra làm nhiều phần, rồi đánh dấu và ráp các phần khác nhau lại để dễ nhận diện chúng.
XML được chỉ đạo bởi tổ chức W3C
XML là "một cú pháp thông dụng cho việc biểu thị cấu trúc trong dữ liệu".
Dữ liệu có cấu trúc tham chiếu đến dữ liệu được gán nhãn cho nội dung, ý nghĩa, hoặc công dụng.
Ví dụ
Trong một trang Web ta dùng những cặp thẻ để đánh dấu như và
Hello from XML
Well come to XML
Trong trang HTML các cặp thẻ đều được định nghĩa trước và không chứa đựng ý nghĩa gì về dữ kiện mà chúng kẹp bên trong, trừ trường hợp cho TITLE.
có nghĩa hiển thị hàng chữ bên trong theo cỡ chữ lớn nhất, nhưng hàng chữ ấy có thể là bất cứ thứ gì.
XML thì cho phép ta tự do đặt tên các cặp thẻ để dùng khi cần.
XML không có giới hạn về số thẻ và ta không cần phải nhớ tên thẻ.
Ý nghĩa của các thẻ rất linh động và ta có thể sắp xếp các thẻ của XML theo loại cho hợp lý.
Ví dụ
Chúng ta muốn làm một trang XML về sách ta cần những thẻ diễn tả từng quyển sách:
...
1.2. Ngôn ngữ định dạng
Ngôn ngữ định dạng tất cả những gì dùng để mô tả nội dung một tài liệu.
Ngôn ngữ định dạng mà mọi người quen nhất là HTML. HTML là ngôn ngữ cho phép tạo các trang web.
XML và HTML rất giống nhau, cả hai đều dựa trên chuẩn ngôn ngữ định dạng tổng quát SGML (Standard Geeneralized Marup Language).
SGML là ngôn ngữ định dạng tổng quát
SGML làm được rất nhiều thứ, tuy tổng quát nhưng khó học.
SGML ít được dùng.
XML là tập con của SGML nhưng lại dễ dùng, dễ sử dụng ở mức tổng quát.
Ngôn ngữ HTML không đủ để biểu diễn các thông tin cho mục đích riêng.
Ví dụ
chúng ta muốn xây dựng một mô hình xe máy và chúng ta muốn trao đổi những đặc tả về chiếc tàu với các đồng nghiệp?
HTML không hề chứa thẻ định nghĩa với các tên như , ,... hay những thẻ mà muốn mô tả về xe máy.
Chúng ta cần thêm các thẻ để mô tả thông tin về xe máy.
Một file tài liệu XML có phần mở rộng là xml, ví dụ này ta đặt tên file là greeting.xml.
Ví dụ:
Hello from XML
Well come to XML
1.3. Nội dung file XML
Bắt đầu bằng thẻ khai báo chỉ thị xử lý XML
Các chỉ thị XML bắt đầu bằng và kết thúc bằng ?>.
Tiếp theo ta chỉ định:
XML hiện tài liệu sử dụng theo phiên bản 1.0
Mã hóa ký tự theo UTF-8
Ta tạo ra thẻ mới mang tên
Có thể sử dụng bất kỳ tên gì để đặt tên thẻ.
Tên thẻ có thể bao gồm:
Ký tự ghạch chân (_)
Ký tự số, ví dụ 123
Ký tự (a,b,c,…),
Dấu chấm, dấu ghách nối
Nhưng không được có khoảng trắng.
Thẻ luôn bắt đầu bằng < và kết thúc bằng >
Tài liệu XML được hình thành từ các phần tử XML.
Tương tự HTML bạn tạo phần tử XML khởi đầu.
Ví dụ
Tiếp đến là dữ liệu của các phần tử nếu có: như dữ liệu văn bản hay các phần tử XML khác
Cuối cùng là thẻ đóng có tên trùng với thẻ mở. Thẻ đóng phải bắt đầu bằng (ví>).
Cần có thẻ đóng và thẻ mở cho toàn bộ tài liệu, phần tử này gọi là phần tử gốc.
Ví dụ
DOCUMENT được xem là phần tử gốc
...............
Bên trong phần tử gốc ta thêm vào thành phần thẻ khác mang tên .
Thẻ này có chứa dữ liệu sau phần tên thẻ.
Dữ liệu của thẻ là "Hello from XML".
Hello from XML
.
.
Ta thực hiện thêm một thẻ mang tên ,
Tên này do ta tự đặt.
Thẻ này cũng mang theo dữ liệu thể hiện là chuỗi văn bản như sau:
Hello from XML
Well come to XML
1.4. Tài liệu XML hợp khuôn dạng (well-form)
Mặc dù bạn có thể đặt ra bao nhiêu thẻ cũng được, nhưng mỗi trang XML cần phải theo một số qui luật để được xem là Well-Formed.
Nếu một trang XML không Well-Formed thì coi như không sử dụng đuợc, không có chương trình xử lý nào sẽ làm việc với dữ liệu bên trong file đó.
Tài liệu XML cần phải theo các qui luật sau đây
Tài liệu XML phải bắt đầu bằng câu khai báo XML.
Mỗi phần tử phải nằm giữa một cặp thẻ.
Hello from XML
Thẻ không chứa gì ở giữa thì phải kết thúc bằng "/>"
hay
.
Một tài liệu XML phải có một thành phần duy nhất chứa tất cả các thành phần khác, đó gọi là phần tử gốc
Các cặp thẻ không được xen kẻ nhau
John Stanmore25 King Street
Tên thẻ có phân biệt chữ hoa chữ thường
khác với
1.5. Tài liệu XML hợp lệ (valid Document)
Một tài liệu XML được gọi là hợp lệ khi nó là tài liệu được kết hợp với định nghĩa kiểu tư liệu DTD (Document Type Definition) và tuân theo chuẩn DTD.
DTD có thể được chứa trong một file tách biệt hoặc chứa ngay trong chính tài liệu.
DTD sử dụng thẻ .
Ví dụ
]>
.
.
Nội dung file greeting.css:
GREETING{
display: block;
font-SIZE:36pt;
color:#FF000;
text-align:center
}
MESSAGES{
display: block;
font-SIZE:18pt;
color:#00000;
}
DTD chỉ định có hai thẻ , được đặt nằm trong thẻ .
Định nghĩa cho thấy là phần tử gốc.
, là các phần tử mang theo văn bản.
Nội dung tài liệu greeting.xml khi hiển thị trên IE:
1.6. Tài nguyên và trình soạn thảo XML
Tài nguyên:
http://www.xml.com
http://www.w3c.org
http://www.microsoft.com/xml
http://developer.netscape.com/tech/metadata/index.html
http://www.software.ibm.com/xml
http://www.xmlrepository.com
Một số trình soạn thảo XML
Trình soạn thảo XML Notepad của Microsoft. Địa chỉ:
www.microsoft.com/XML/notepad.intro.asp
Trình soạn thảo XML Write.
Đây là phần mềm rất mạnh
Cho phép kiểm tra tính
Kiểm tra tính hợp khuôn dạng (well-formed)
Kiểm tra tính hợp lệ của định nghĩa DTD và lược đồ XML.
Địa chỉ:
www.xmlWriter.net.
1.7. 10 tiêu chí trong XML
XML được dùng để tạo cấu trúc dữ liệu
XML là một hệ thống các luật dùng cho việc thiết kế các định dạng cho văn bản giúp bạn tạo cấu trúc cho dữ liệu.
XML không phải là ngôn ngữ lập trình
XML giúp dễ dàng tạo dữ liệu, đọc dữ liệu và làm cho cấu trúc dữ liệu trở nên rõ ràng, dễ hiểu.
XML có thể mở rộng, có nền tảng hoàn toàn độc lập và hỗ trợ tính quốc tế hoá và nội địa hoá.
XML hỗ trợ hoàn toàn Unicode.
XML có một số điểm giống với HTML
XML có các thẻ và dùng thuộc tính giống HTML
,
name="MyName", width=8
HTML chú ý tới từng thẻ và thuộc tính, phần văn bản giữa các thẻ đó sẽ hiển thị như thế nào
XML sử dụng các thẻ để phân định ranh giới giữa các mẩu dữ liệu, việc đọc và xử lý dữ liệu hoàn toàn là nhiệm vụ của ứng dụng.
Trong HTML thẻ ký hiệu của một đoạn, trong XML tùy thuộc vào văn cảnh có thẻ là giá (PRICE), một người (person),...
XML là một văn bản
Các tài liệu XML là những file văn bản được tạo ra không phải với mục đích để đọc
Trường hợp nếu cần thì vẫn có thể đọc được và trỉnh sửa.
Các tài liệu HTML: nếu viết nội dung không theo qui tắc vẫn hiển thị bình thường.
Các tài liệu XML: nếu viết nội dung không đúng qui tắc sẽ làm cho toàn bộ tài liệu XML đó ngừng hoạt động.
XML là một công nghệ thân thiện:
Trên XML 1.0 là một bộ các module cung cấp các dịch vụ hữu dụng: Xlink, XPointer, CSS, XSL, DOM
XML được sử dụng miễn phí, có platform độc lập và được hỗ trợ rất tốt
XML không cần phải mua bản quyền mới sử dụng được nên bạn có thể tạo cho mình một phần mềm riêng mà không phải trả một khoản chi phí nào hết.
XML không phải lúc nào cũng là giải pháp tốt nhất, nhưng nó luôn xứng đáng để người ta phải xem xét.
...
1.2. Ngôn ngữ định dạng
Ngôn ngữ định dạng tất cả những gì dùng để mô tả nội dung một tài liệu.
Ngôn ngữ định dạng mà mọi người quen nhất là HTML. HTML là ngôn ngữ cho phép tạo các trang web.
XML và HTML rất giống nhau, cả hai đều dựa trên chuẩn ngôn ngữ định dạng tổng quát SGML (Standard Geeneralized Marup Language).
SGML là ngôn ngữ định dạng tổng quát
SGML làm được rất nhiều thứ, tuy tổng quát nhưng khó học.
SGML ít được dùng.
XML là tập con của SGML nhưng lại dễ dùng, dễ sử dụng ở mức tổng quát.
Ngôn ngữ HTML không đủ để biểu diễn các thông tin cho mục đích riêng.
Ví dụ
chúng ta muốn xây dựng một mô hình xe máy và chúng ta muốn trao đổi những đặc tả về chiếc tàu với các đồng nghiệp?
HTML không hề chứa thẻ định nghĩa với các tên như
Chúng ta cần thêm các thẻ để mô tả thông tin về xe máy.
Một file tài liệu XML có phần mở rộng là xml, ví dụ này ta đặt tên file là greeting.xml.
Ví dụ:
1.3. Nội dung file XML
Bắt đầu bằng thẻ khai báo chỉ thị xử lý XML
Các chỉ thị XML bắt đầu bằng và kết thúc bằng ?>.
Tiếp theo ta chỉ định:
XML hiện tài liệu sử dụng theo phiên bản 1.0
Mã hóa ký tự theo UTF-8
Ta tạo ra thẻ mới mang tên
Có thể sử dụng bất kỳ tên gì để đặt tên thẻ.
Tên thẻ có thể bao gồm:
Ký tự ghạch chân (_)
Ký tự số, ví dụ 123
Ký tự (a,b,c,…),
Dấu chấm, dấu ghách nối
Nhưng không được có khoảng trắng.
Thẻ luôn bắt đầu bằng < và kết thúc bằng >
Tài liệu XML được hình thành từ các phần tử XML.
Tương tự HTML bạn tạo phần tử XML khởi đầu.
Ví dụ
Tiếp đến là dữ liệu của các phần tử nếu có: như dữ liệu văn bản hay các phần tử XML khác
Cuối cùng là thẻ đóng có tên trùng với thẻ mở. Thẻ đóng phải bắt đầu bằng (ví>).
Cần có thẻ đóng và thẻ mở cho toàn bộ tài liệu, phần tử này gọi là phần tử gốc.
Ví dụ
DOCUMENT được xem là phần tử gốc
...............
Bên trong phần tử gốc ta thêm vào thành phần thẻ khác mang tên
Thẻ này có chứa dữ liệu sau phần tên thẻ.
Dữ liệu của thẻ là "Hello from XML".
.
.
Ta thực hiện thêm một thẻ mang tên
Tên này do ta tự đặt.
Thẻ này cũng mang theo dữ liệu thể hiện là chuỗi văn bản như sau:
1.4. Tài liệu XML hợp khuôn dạng (well-form)
Mặc dù bạn có thể đặt ra bao nhiêu thẻ cũng được, nhưng mỗi trang XML cần phải theo một số qui luật để được xem là Well-Formed.
Nếu một trang XML không Well-Formed thì coi như không sử dụng đuợc, không có chương trình xử lý nào sẽ làm việc với dữ liệu bên trong file đó.
Tài liệu XML cần phải theo các qui luật sau đây
Tài liệu XML phải bắt đầu bằng câu khai báo XML.
Mỗi phần tử phải nằm giữa một cặp thẻ.
Thẻ không chứa gì ở giữa thì phải kết thúc bằng "/>"
hay
.
Một tài liệu XML phải có một thành phần duy nhất chứa tất cả các thành phần khác, đó gọi là phần tử gốc
Các cặp thẻ không được xen kẻ nhau
Tên thẻ có phân biệt chữ hoa chữ thường
1.5. Tài liệu XML hợp lệ (valid Document)
Một tài liệu XML được gọi là hợp lệ khi nó là tài liệu được kết hợp với định nghĩa kiểu tư liệu DTD (Document Type Definition) và tuân theo chuẩn DTD.
DTD có thể được chứa trong một file tách biệt hoặc chứa ngay trong chính tài liệu.
DTD sử dụng thẻ .
Ví dụ
]>
.
.
Nội dung file greeting.css:
GREETING{
display: block;
font-SIZE:36pt;
color:#FF000;
text-align:center
}
MESSAGES{
display: block;
font-SIZE:18pt;
color:#00000;
}
DTD chỉ định có hai thẻ
Định nghĩa cho thấy
Nội dung tài liệu greeting.xml khi hiển thị trên IE:
1.6. Tài nguyên và trình soạn thảo XML
Tài nguyên:
http://www.xml.com
http://www.w3c.org
http://www.microsoft.com/xml
http://developer.netscape.com/tech/metadata/index.html
http://www.software.ibm.com/xml
http://www.xmlrepository.com
Một số trình soạn thảo XML
Trình soạn thảo XML Notepad của Microsoft. Địa chỉ:
www.microsoft.com/XML/notepad.intro.asp
Trình soạn thảo XML Write.
Đây là phần mềm rất mạnh
Cho phép kiểm tra tính
Kiểm tra tính hợp khuôn dạng (well-formed)
Kiểm tra tính hợp lệ của định nghĩa DTD và lược đồ XML.
Địa chỉ:
www.xmlWriter.net.
1.7. 10 tiêu chí trong XML
XML được dùng để tạo cấu trúc dữ liệu
XML là một hệ thống các luật dùng cho việc thiết kế các định dạng cho văn bản giúp bạn tạo cấu trúc cho dữ liệu.
XML không phải là ngôn ngữ lập trình
XML giúp dễ dàng tạo dữ liệu, đọc dữ liệu và làm cho cấu trúc dữ liệu trở nên rõ ràng, dễ hiểu.
XML có thể mở rộng, có nền tảng hoàn toàn độc lập và hỗ trợ tính quốc tế hoá và nội địa hoá.
XML hỗ trợ hoàn toàn Unicode.
XML có một số điểm giống với HTML
XML có các thẻ và dùng thuộc tính giống HTML
,
name="MyName", width=8
HTML chú ý tới từng thẻ và thuộc tính, phần văn bản giữa các thẻ đó sẽ hiển thị như thế nào
XML sử dụng các thẻ để phân định ranh giới giữa các mẩu dữ liệu, việc đọc và xử lý dữ liệu hoàn toàn là nhiệm vụ của ứng dụng.
Trong HTML thẻ
ký hiệu của một đoạn, trong XML tùy thuộc vào văn cảnh có thẻ là giá (PRICE), một người (person),...
XML là một văn bản
Các tài liệu XML là những file văn bản được tạo ra không phải với mục đích để đọc
Trường hợp nếu cần thì vẫn có thể đọc được và trỉnh sửa.
Các tài liệu HTML: nếu viết nội dung không theo qui tắc vẫn hiển thị bình thường.
Các tài liệu XML: nếu viết nội dung không đúng qui tắc sẽ làm cho toàn bộ tài liệu XML đó ngừng hoạt động.
XML là một công nghệ thân thiện:
Trên XML 1.0 là một bộ các module cung cấp các dịch vụ hữu dụng: Xlink, XPointer, CSS, XSL, DOM
XML được sử dụng miễn phí, có platform độc lập và được hỗ trợ rất tốt
XML không cần phải mua bản quyền mới sử dụng được nên bạn có thể tạo cho mình một phần mềm riêng mà không phải trả một khoản chi phí nào hết.
XML không phải lúc nào cũng là giải pháp tốt nhất, nhưng nó luôn xứng đáng để người ta phải xem xét.