Bài giảng Giới thiệu XML

Thiết kế XML

- Tách biệt cú pháp (biểu diễn cấu trúc) và ngữ nghĩa – và

chỉ quan tâm cú pháp.

- Tập thẻ có thể mở rộng – chúng ta có thể tự ñịnh

nghĩa các thẻ riêng, dựa vào thông tin.

Mục ñích: XML là ñịnh dạng chung cho các thông tin có

cấu trúc.

pdf13 trang | Chia sẻ: oanh_nt | Lượt xem: 1516 | Lượt tải: 1download
Nội dung tài liệu Bài giảng Giới thiệu XML, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
1Introduction to XML / Chapter 1 / 1 of 26 Giới thiệu XML Introduction to XML / Chapter 1 / 2 of 26 Tại sao dùng XML? Hạn chế của HTML - ðược dùng ñể trình diễn thông tin dưới dạng trang Web. - Bao gồm một tập cố ñịnh các thẻ ñịnh dạng. - Các thẻ không cho biết ý nghĩa của dữ liệu chứa trong nó. - Không mở rộng thẻ ñược (không thể ñịnh nghĩa thẻ mới) 2Introduction to XML / Chapter 1 / 3 of 26 Sự cần thiết của XML Thiết kế XML - Tách biệt cú pháp (biểu diễn cấu trúc) và ngữ nghĩa – và chỉ quan tâm cú pháp. - Tập thẻ có thểmở rộng – chúng ta có thể tự ñịnh nghĩa các thẻ riêng, dựa vào thông tin. Mục ñích: XML là ñịnh dạng chung cho các thông tin có cấu trúc. A formal specification of XML can be found at: Introduction to XML / Chapter 1 / 4 of 26 XML là gì? • Extensible Markup Language – Ngôn ngữ ñánh dấu có thể mở rộng. • Một tập các luật ñể ñịnh nghĩa và biểu diễn thông tin dưới dạng các tài liệu có cấu trúc • Hội tụ ba công nghệ: • ðánh dấu tài liệu (Document markup) • Trao ñổi dữ liệu (Data interchange) • World wide web 3Introduction to XML / Chapter 1 / 5 of 26 XML là gì? (2) • XML là một siêu ngôn ngữ, không phải là một ngôn ngữ cụ thể. • ðịnh nghĩa các luật ñánh dấu tài liệu • Có khả năng miêu tả trước Document Type Definition (DTD) ñể giới hạn các ñánh dấu ñược phép • Có thể mở rộng cho tất cả các ngôn ngữ tự nhiên. Introduction to XML / Chapter 1 / 6 of 26 XML là gì? (3) • Luật 1: Thông tin ñược trình diễn trong các ñơn vị gọi là tài liệu XML (XML documents). • Luật 2: Một tài liệu XML document chứa một hoặc nhiều phần tử (elements). • Luật 3: Một phần tử có tên, có thể chứa các phần tử khác, và có thể có các thuộc tính • Và nhiều luật khác ... 4Introduction to XML / Chapter 1 / 7 of 26 Ví dụmột tài liệu XML (1) John Doe Introduction to XML 12 June 2001 121232323 XYZ Foo Bar Introduction to XSL 12 June 2001 12323573 ABC Tự ñặt ra các thẻ Các phần tử con (thuộc tính) of “Book” Introduction to XML / Chapter 1 / 8 of 26 Ví dụmột tài liệu XML (2) XM là văn bản có cấu trúc phân cấp - Chúng ta cần một bộ kiểm tra ngữ pháp ñể (grammar) ñể kiểm tra tính ñúng - Một “stylesheet” ñược dùng ñể ñịnh nghĩa cách thể hiện dữ liệu 5Introduction to XML / Chapter 1 / 9 of 26 DTD [Document Type Definition] • ðược sử dụng ñể miêu tả một lớp các tài liệu XML (tương tự như các cấu trúc ngữ pháp ñối với các ngôn ngữ khác), và giới hạn cấu trúc của tài liệu XML. • Một tài liệu XML ñược gọi là hợp lệ nếu nó ñúng DTD. Introduction to XML / Chapter 1 / 10 of 26 DTD [Document Type Definition] (2) Example DTD: 6Introduction to XML / Chapter 1 / 11 of 26 Các vấn ñề với XML DTD Không phải cú pháp XML • Tài liệu XML theo một cú pháp khác • DTD theo một cú pháp khác • => cần 2 trình phân tích. Tập các kiểu cơ sở bị giới hạn • Mong muốn có một tập các kiểu tương thích với tập kiểu trong các CSDL • Một trong các ñiểm yếu của DTD là chỉ sử dụng một kiểu duy nhất – kiểu xâu (PCDATA). Introduction to XML / Chapter 1 / 12 of 26 Các vấn ñề với XML DTD (2) Sử dụng các ràng buộc bị giới hạn. • Chỉ hỗ trợ các ràng buộc như “+” (1 hoặc nhiều), “?” (0 hoặc1), “*” (0 hoặc nhiều), etc. Không cung cấp nhiều ràng buộc như trong các CSDL (enumerations, ranges, string length, etc.) 7Introduction to XML / Chapter 1 / 13 of 26 Lược ñồ XML (XML Schema) • XML Schemas là cải tiến của DTDs: – Mở rộng các kiểu dữ liệu. • Nhiều kiểu dữ liệu cơ bản như trong CSDL: string, boolean, decimal, integer, date, etc. • Có thể tự ñịnh nghĩa kiểu dữ liệu Introduction to XML / Chapter 1 / 14 of 26 XML Schema (2) ðược viết theo cùng cú pháp với tài liệu XML. – Hướng ñối tượng • Có thể dẫn xuất các ñịnh nghĩa – Có thể tạo nhiều ràng buộc trên phạm vi dữ liệu. • Ví dụ: maxlength, precision, enumeration, maxInclusive (upper bound), minInclusive (lower bound), encoding (applies only to binary) 8Introduction to XML / Chapter 1 / 15 of 26 XML Schema <xsd:schema xmlns:xsd=“” targetNamespace="" xmlns=“”> <xsd:element ref="Book" minOccurs="1" maxOccurs="unbounded"/> Prefix “xsd” refers to the XMLSchema namespace “xmlns” refers to the default namespace Khi tham chiếu ñến phần tử khác, dùng “ref” Introduction to XML / Chapter 1 / 16 of 26 XML Schema (2) 9Introduction to XML / Chapter 1 / 17 of 26 Không gian tên - Namespaces A B A? B? Introduction to XML / Chapter 1 / 18 of 26 Namespaces Namespace của một phần tử là phạm vi mà phần tử ñó hợp lệ. 10 Introduction to XML / Chapter 1 / 19 of 26 Namespaces (2) Tại sao chúng ta cần Namespaces ?  Khi kết hợp nhiều tài liệu XML, các phần tử không bị trùng tên – ñụng ñộ tên. Introduction to XML / Chapter 1 / 20 of 26 Namespaces (3) • Namespaces trong XML: Một XML namespace là một tập các tên, ñược xác ñịnh bởi một tham chiếu URI. Các tên trong XML namespaces có thể ở dạng ñầy ñủ dạng prefix: local part. Prefix ñược ánh xạ vào URI ñể chọn một namespace. 11 Introduction to XML / Chapter 1 / 21 of 26 XSL [XML Stylesheet Language] A B C XML1 XML2 Introduction to XML / Chapter 1 / 22 of 26 XSL [XML Stylesheet Language] <table cellpadding="2" cellspacing="0" border="1“ bgcolor="#FFFFD5"> Title Author Date ISBN 12 Introduction to XML / Chapter 1 / 23 of 26 XSL [XML Stylesheet Language] (2) Introduction to XML / Chapter 1 / 24 of 26 Tham chiếu Title Author Date ISBN Introduction to XML John Doe 12 June 2001 121232323 Introduction to XSL Foo Bar 12 June 2001 12323573 13 Introduction to XML / Chapter 1 / 25 of 26 Công cụ/Phần mềm XML Spy Là công cụ biên tập XML tốt nhất hiện nay, cho phép làm việc với các tệp: XML files, DTD’s, XSL files, as well as XSD (XML Schema). Phiên bản dùng thử 30 ngày. XML Notepad Microsoft XML Notepad là một ứng dụng ñơn giản dùng ñể xây dựng và soạn thảo các dữ liệu dựa trên XML. Phần mềm miễn phí.

Các file đính kèm theo tài liệu này:

  • pdfbo_tro_2_xml.pdf