Tài liệu giảng dạy môn Chuyên đề Công nghệ XML và Ứng dụng
lượt xem 7
download
Tài liệu giảng dạy môn Chuyên đề Công nghệ XML và Ứng dụng cung cấp cho người học những kiến thức như: Tổng quan về XML; tạo tài liệu XML hợp khuôn dạng; định nghĩa kiểu tài liệu; định dạng tài liệu XML với CSS và XSL; lược đồ XML; dom và xử lý XML với javascript. Mời các bạn cùng tham khảo!
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Tài liệu giảng dạy môn Chuyên đề Công nghệ XML và Ứng dụng
- MỤC LỤC Chương 1: TỔNG QUAN VỀ XML ......................................................................... 5 1.1 Giới thiệu tổng quan về ngôn ngữ định dạng XML ............................................... 5 1.2 Ngôn ngữ định dạng .............................................................................................. 6 1.3 Tài liệu XML hợp khuôn dạng .............................................................................. 9 1.4 Tài liệu XML hợp lệ ............................................................................................ 9 1.5 Bộ phân tích XML .............................................................................................. 10 1.6 Bộ kiểm tra XML ................................................................................................ 11 1.7 Trình soạn thảo XML .......................................................................................... 12 1.8 Một số ứng dụng của XML ................................................................................. 12 Chương 2: TẠO TÀI LIỆU XML HỢP KHUÔN DẠNG ...................................... 14 2.1 Xây dựng tài liệu hợp khuôn dạng ...................................................................... 14 2.2 Định dạng và dữ liệu kiểu ký tự .......................................................................... 16 2.3 Phần khởi đầu của tài liệu XML .......................................................................... 16 2.4 Các khai báo và câu chú thích trong tài liệu XML ............................................... 17 2.5 Không gian tên ................................................................................................... 17 2.6 Thẻ và các phần tử .............................................................................................. 18 2.6.1 Thẻ và phần tử ................................................................................................. 18 2.6.2 Tên thẻ ............................................................................................................. 18 2.6.3 Phần tử rỗng ..................................................................................................... 18 2.7 Phần tử gốc ......................................................................................................... 19 2.8 Thuộc tính ........................................................................................................... 19 2.8.1 Tên thuộc tính .................................................................................................. 19 2.8.2 Trị gán cho thuộc tính ...................................................................................... 19 2.8.3 Thuộc tính xml:lang ......................................................................................... 20 2.9 Một số quy tắc xây dựng cấu trúc tài liệu hợp khuôn dạng .................................. 20 2.10 Phân đoạn CDATA ........................................................................................... 20 2.11 Không gian tên của XML .................................................................................. 21 2.11.1 Tạo không gian tên ......................................................................................... 21 2.11.2 Không gian tên cục bộ .................................................................................... 21 Tài liệu giảng dạy môn: Chuyên đề Công nghệ XML và Ứng dụng 1
- Chương 3: ĐỊNH NGHĨA KIỂU TÀI LIỆU – DTD .............................................. 23 3.1 Định nghĩa kiểu tài liệu ....................................................................................... 23 3.2. Định nghĩa một tài liệu DTD .............................................................................. 24 3.2.1 Phần tử .................................................................................... 24 3.2.1.1 Định nghĩa DTD tham chiếu nội .................................................................... 24 3.2.1.2 Định nghĩa DTD tham chiếu ngoại ................................................................ 25 3.2.2 Phần tử .................................................................................... 27 3.2.3 Phần tử ...................................................................................... 28 3.4 Thực thể .............................................................................................................. 33 3.4.1 Thực thể là gì? .................................................................................................. 33 3.4.1.1 Thực thể tổng quát ........................................................................................ 33 3.4.1.2 Thực thể tham số ........................................................................................... 35 Chương 4: ĐỊNH DẠNG TÀI LIỆU XML VỚI CSS VÀ XSL ............................. 38 4.1 Định dạng tài liệu bằng CSS ............................................................................... 38 4.1.1 Tạo và chèn các định nghĩa kiểu CSS ............................................................... 38 4.1.1.1 Định nghĩa và khai báo CSS ngoại ................................................................ 39 4.1.1.2 Định nghĩa và sử dụng CSS nội ..................................................................... 39 4.1.1.3 Khai báo kiểu CSS trực tiếp .......................................................................... 39 4.1.1.4 Nhóm các định nghĩa kiểu vào một lớp ......................................................... 40 4.1.2 CSS và XML .................................................................................................... 40 4.2 XSL là gì? ........................................................................................................... 41 4.2.1 Quy tắc chung .................................................................................................. 42 4.2.2 Một số phần tử thường dùng của XSL ............................................................... 42 4.2.2.1 Phần tử value-of ........................................................................................... 42 4.2.2.2 Phần tử attribute ............................................................................................ 44 4.2.2.3 Phần tử attribute-set ...................................................................................... 44 4.2.2.4 Phần tử element ............................................................................................. 44 4.2.2.5 Phần tử apply-templates ................................................................................ 46 4.2.2.6 Phần tử call-template .................................................................................... 47 4.2.2.7 Phần tử for-each ............................................................................................ 47 4.2.2.8 Phần tử if ...................................................................................................... 48 Tài liệu giảng dạy môn: Chuyên đề Công nghệ XML và Ứng dụng 2
- 4.2.2.9 Phần tử điều khiển choose ............................................................................. 49 4.2.2.10 Phần tử variable .......................................................................................... 50 4.2.2.11 Phần tử param ............................................................................................. 50 4.2.2.12 Phần tử include ............................................................................................ 52 4.2.2.13 Phần tử import ............................................................................................. 52 Chương 5: LƯỢC ĐỒ XML ................................................................................... 54 5.1 Tại sao chúng ta nên dùng XML Schema? ........................................................... 54 5.2 Các thành phần trong một XML Schema ............................................................ 54 5.2.1 Thành phần schema .......................................................................................... 55 5.2.2 Tham chiếu đến schema từ trang XML ............................................................ 56 5.3 Quá trình kiểm tra tính hợp lệ của một trang XML ............................................. 56 5.4 Lược đồ và không gian tên .................................................................................. 57 5.5 Xây dựng lược đồ từ nhiều thành phần ................................................................ 57 5.6 Khai báo phần tử trong XML Schema ................................................................. 58 5.7 Các kiểu phần tử .................................................................................................. 58 5.7.1 Định nghĩa một phần tử giản đơn ..................................................................... 58 5.7.2 Các kiểu dữ liệu thông dụng .............................................................................. 59 5.7.3 Ví dụ ................................................................................................................. 59 5.8 Giá trị mặc định và cố định ................................................................................. 59 5.9 Khai báo thuộc tính và các ràng buộc .................................................................. 60 5.9.1 Định nghĩa thuộc tính trong XSD ...................................................................... 60 5.9.2 Khai báo loại thuộc tính ................................................................................... 60 5.9.3 Ràng buộc nội dung ......................................................................................... 60 5.9.4 Ràng buộc giá trị .............................................................................................. 60 5.9.5 Ràng buộc về ký tự dấu cách ............................................................................ 62 5.9.6 Ràng buộc về độ dài ......................................................................................... 63 5.9.7 Định nghĩa phần tử phức hợp ........................................................................... 63 5.9.7.1 Định nghĩa một phần tử phức hợp trong XSD ............................................... 64 5.9.7.2 Định nghĩa phần tử rỗng ................................................................................ 64 5.9.7.3 Định nghĩa phần tử chỉ chứa phần tử con ...................................................... 65 5.10 Ví dụ về XML, XSD VÀ XSL ........................................................................... 65 Tài liệu giảng dạy môn: Chuyên đề Công nghệ XML và Ứng dụng 3
- Chương 6: DOM VÀ XỬ LÝ XML VỚI JAVASCRIPT ....................................... 69 6.1 Mô hình DOM .................................................................................................... 69 6.2 Nạp tài liệu XML cần xử lý bằng JavaScript ....................................................... 70 6.3 Phần tử nạp dữ liệu ............................................................................................. 77 6.4 Truy xuất các nút dữ liệu dựa vào tên .................................................................. 80 6.5 Truy xuất giá trị của thuộc tính .......................................................................... 82 6.6 Phân tích trực tiếp toàn bộ dữ liệu XML ............................................................. 84 6.7 Phân tích nội dung và kiểu dữ liệu của nút ........................................................... 87 BÀI TẬP THỰC HÀNH.......................................................................................... 91 TÀI LIỆU THAM KHẢO ..................................................................................... 104 Tài liệu giảng dạy môn: Chuyên đề Công nghệ XML và Ứng dụng 4
- Chương 1 TỔNG QUAN VỀ XML Mục tiêu học tập: Sau khi học xong chương này người học sẽ: - Có cái nhìn tổng quan về ngôn ngữ XML. - Hiểu được thế nào là tài liệu XML hợp lệ hay hợp khuôn dạng. - Biết cách kiểm tra tính hợp lệ của XML. Tóm tắt chương Để tìm hiểu chi tiết về XML như thế nào, trước tiên, chúng ta nên có cái nhìn tổng quát về XML. Chương này giới thiệu một cách tổng quát nhất về XML cũng như những ứng dụng cơ bản của nó. 1.1 Giới thiệu tổng quan về ngôn ngữ định dạng XML Hiện nay XML (eXtensible Markup Language) chiếm vị trí rất quan trọng trong việc chuyển tải, trao đổi dữ liệu và liên lạc giữa các ứng dụng. Điều này càng được khẳng định khi các hệ điều hành từ WindowsXP trở đi và các hệ điều hành khác bên trong nó chứa rất nhiều tập tin XML. Hơn nữa khi bộ .Net ra đời càng làm cho XML trở nên thịnh hành và ngày càng được ứng dụng rộng rãi. Sử dụng kỹ thuật XML không chỉ có tập đoàn Microsoft mà ngay cả Sun, IBM, Oracles điều hỗ trợ XML sử dụng nó trong các hệ điều hành và các ứng dụng. XML là ngôn ngữ xây dựng cấu trúc tài liệu văn bản, dựa theo chuẩn SGML (Standard Generalized Markup Language: siêu ngôn ngữ có khả năng sinh ngôn ngữ khác). SGML được phát triển cho việc định cấu trúc và nội dung tài liệu điện tử, do tổ chức ISO (International Organization for Standards) chuẩn hóa năm 1986. SGML do IBM đưa ra, song không thể không kể đến những đóng góp của các công ty khác. XML được W3C (World Wide Web Consortium - tổ chức độc lập định ra tiêu chuẩn cho trình duyệt Web, máy chủ và ngôn ngữ) phát triển, nhưng đặc tả XML lại do Netscape, Microsoft và các thành viên của dự án Text Encoding Initiative (TEI) xây dựng. Tổ chức W3C XML Special Interest Group có đại diện từ hơn 100 công ty cùng nhiều chuyên gia được mời khác. Lý do ra đời của XML vì SGML rất rắc rối khó sử dụng và HTML có nhiều giới hạn nên năm 1996 tổ chức W3C thiết kế XML. XML version 1.0 được định nghĩa trong hồ sơ February 1998 W3C Recommendation. Điểm quan trọng của kỹ thuật XML là nó không thuộc riêng về một công ty Tài liệu giảng dạy môn: Chuyên đề Công nghệ XML và Ứng dụng 5
- nào, nó là một sản phẩm mà trí tuệ của nó thuộc về cả thế giới, là một tiêu chuẩn được mọi người công nhận vì được soạn ra bởi W3C (World Wide Web Consortium). Bản thân của XML rất đơn giản, nhưng các công cụ chuẩn được định ra để làm việc với XML như Document Object Model - DOM, XPath, XSL,... thì lại rất hữu hiệu, và chính các chuẩn này được phát triển không ngừng. XML cũng giống như HTML đều là ngôn ngữ đánh dấu, nhưng điều cần nói ở đây là sự ra đời của XML nhằm để khắc phục một số mặt hạn chế của HTML. HTML và XML đều sử dụng các thẻ nhưng các thẻ của HTML là một bộ dữ liệu được xây dựng và định nghĩa trước, nghĩa là người lập trình phải tuân thủ theo các thẻ đã định nghĩa của HTML, hiện HTML có khoản hơn 400 thẻ, để nhớ hết 400 thẻ này cũng không có gì khó khăn đối với người lập trình web chuyên nghiệp nhưng thật khó đối với những người không chuyên. Hơn nữa, các thẻ của HTML không nói lên được mô tả dữ liệu trong đó. Nhưng đối với XML thì hoàn toàn khác bởi vì tag trong XML là do người lập trình tự định nghĩa và mỗi thẻ là một mô tả dữ liệu mà người lập trình muốn truyền đạt. 1.2 Ngôn ngữ định dạng Ngôn ngữ định dạng (Markup Language ) là tất cả những gì dùng để mô tả nội dung một tài liệu, đó là cách mà nội dung của tài liệu được diễn dịch. Tuy nhiên, ngôn ngữ định dạng chúng ta thường sử dụng trước đây là HTML. Ví dụ: Tạo tập tin document.html Hello HTML Hello From HTML Well come to the wild and woolly word of HTML Kết quả của tập tin document.html hiển thị trên trình duyệt: Tài liệu giảng dạy môn: Chuyên đề Công nghệ XML và Ứng dụng 6
- HTML và XML có mối quan hệ rất gần với nhau. Cả hai đều dựa trên chuẩn ngôn ngữ định dạng tổng quát SGML. Câu hỏi đặt ra là: XML sẽ được sử dụng và nó hiển thị trên trình duyệt như thế nào? Sau đây chúng ta sẽ chuyển nội dung tập tin document.html sang thành tập tin document.xml như sau: Hello From XML Well come to the wild and woolly word of HTML Kết quả hiển thị trên trình duyệt của tập tin document.xml Tài liệu giảng dạy môn: Chuyên đề Công nghệ XML và Ứng dụng 7
- Hai kết quả hoàn toàn khác nhau. Đối với tập tin document.xml thì chúng sẽ hiển thị đúng với tập tin gốc bởi vì trình duyệt không hiểu được các thẻ do ta tự định nghĩa. Chính vì vậy, để trình duyệt có thể hiểu được các thẻ do ta định nghĩa và hiển thị chúng, ta phải dùng bảng định kiểu (Style Sheet) Có 2 cách chỉ ra bảng định kiểu khi định dạng: - Dùng CSS (Cascade Style Sheet) - Dùng XSL (Extensible Style Language) Ví dụ: Ta dùng bảng định kiểu CSS để hiển thị nội dung tập tin document.xml trên Bước 1:Ta thêm đoạn code (in đậm) vào tập tin document.xml trên như sau: Hello From XML Well come to the wild and woolly word of HTML Bước 2:Tạo tiếp tập tin document.css: GREETING { display:block; font-size:18pt; color:#FF0000; text-align:center; } MASSAGE {display:block; font-size:18pt; color:#000000;} Bây giờ, kết quả khi chạy tập tin document.xml trên trình duyệt sẽ có hình dạng sau và không còn hiển thị nội dung tập tin gốc nữa. Tài liệu giảng dạy môn: Chuyên đề Công nghệ XML và Ứng dụng 8
- 1.3 Tài liệu XML hợp khuôn dạng Tài liệu XML được gọi là hợp khuôn dạng (Well-formed) thì cần phải tuân theo cú pháp thiết lập cho XML bởi tổ chức W3C. Các quy tắc này được nêu trong đặc tả XML 1.0 (những quy định các luật về thẻ, phần tử, thuộc tính, giá trị,…). Nói cách khác, tài liệu XML hợp khuôn dạng phải là tài liệu XML có cấu trúc đúng. Để hợp khuôn dạng, tài liệu XML phải tuân theo các luật sau: - Có một phần tử gốc duy nhất, chứa tất cả phần tử khác. - Mỗi thẻ mở phải có một thẻ đóng giống như nó. Ví dụ: Thẻ sai ; Hay ; - Mỗi phần tử con nằm trọn trong phần tử cha của nó. - Giá trị thuộc tính trong XML phải được đặt giữa một cặp ngoặc kép hay một cặp ngoặc đơn. - Các khai báo phải được đặt tại dòng đầu tiên của tài liệu. - Chỉ có một thành phần gốc (root). Ví dụ: Tài liệu hợp khuôn dạng Hello From XML Well come to the wild and woolly word of HTML 1.4 Tài liệu XML hợp lệ Tài liệu XML được gọi là hợp lệ (Valid) khi nó là tài liệu được kết hợp với định nghĩa kiểu dữ liệu (DTD – Document Type Definition) và tuân theo các chuẩn của DTD. Hầu hết các trình duyệt kiểm tra tính hợp khuôn dạng trước. Tiếp theo một vài trình duyệt có thể kiểm tra thêm tính hợp lệ của tài liệu XML. Các định nghĩa DTD nhằm xác định cú pháp đúng đắn cho tài liệu. DTD có thể được chứa trong một tập tin riêng biệt hoặc chứa ngay trong chính tài liệu, DTD sử Tài liệu giảng dạy môn: Chuyên đề Công nghệ XML và Ứng dụng 9
- dụng phần tử hay thẻ < !DOCTYPE>. Ví dụ: ]> Hello From XML Well come to the wild and woolly word of HTML Như vậy, DTD chỉ định rằng chúng ta có hai thẻ và được đặt nằm trong thẻ . Định nghĩa DTD cũng cho thấy là phần tử gốc, phần tử và được định nghĩa là các thẻ có thể mang theo dữ liệu văn bản. 1.5 Bộ phân tích XML Là các gói phần mềm được sử dụng chung như một phần kèm theo của ứng dụng. XML for Java (XML4J) – phân tích tài liệu XML được phát triển bởi IBM AlphaWorks - Đây là thư viện nổi tiếng và được dùng rộng rãi trong hầu hết các ví dụ của W3C. Microsoft XML Parser – trình phân tích sử dụng trình duyệt Internet Explorer cài đặt thông qua kiến trúc COM của hệ điều hành Windows. Nếu chúng ta sử dụng IE từ version 5.0 trở lên ta đã có sẵn trình phân tích này hoặc dùng Java Standard Extenstion for XML – Đây là gói thư viện dành cho Java được xây dựng bởi SUN. Gói này dùng chung với các ứng dụng của Java. Python XML Parser – Trình phân tích tài liệu XML dựa vào ngôn ngữ Python cho hệ điều hành Linux và Unix. Gói này được dùng chung với các ứng dụng của Java. Các trình phân tích thường tách dữ liệu XML ra thành từng mẫu nhỏ khiến Tài liệu giảng dạy môn: Chuyên đề Công nghệ XML và Ứng dụng 10
- chúng có thể truy xuất được bởi mã lệnh chương trình. Một vài trình phân tích kiêm luôn cả chức năng kiểm tra khuôn dạng hoặc tính hợp lệ của tài liệu XML. 1.6 Bộ kiểm tra XML Làm thế nào biết được tài liệu XML của chúng ta đúng khuôn dạng và hợp lệ? Một trong các cách để biết là dùng bộ kiểm tra XML (XML Validator). Các bộ kiểm tra tính hợp lệ của XML là những gói phần mềm cho phép kiểm tra một số chuẩn trên XML đồng thời đưa ra lời nhận xét. Ví dụ: Kiểm tra nội dung tập tin greeting.xml bằng DOMWriter Hello From XML Well come to the wild and woolly word of HTML Kiểm tra bằng Java với DOMWriter, nếu tài liệu XML hợp lệ thì DOMWriter chỉ hiển thị nội dung của tập tin XML. Nếu phát hiện lỗi, DOMWriter sẽ chỉ rõ vị trí của thẻ gây lỗi. Vì vậy, tập tin greeting.xml của chúng ta sẽ gặp lỗi không hợp lệ do các thẻ DTD chưa được định nghĩa và nhận các dòng thông báo sau: >java dom.DOMWriter greeting.xml greeting.xml [Error] greeting.xml : 2:11: Element type “DOCUMENT” must be declared [Error] greeting.xml : 3:35: Element type “GREETING” must be declared Error] greeting.xml : 6:14: Element type “MESSAGE” must be declared Tài liệu giảng dạy môn: Chuyên đề Công nghệ XML và Ứng dụng 11
- Hello From XML Well come to the wild and woolly word of HTML Tuy nhiên, các bộ kiểm tra Validator thường phân làm hai loại. Loại ứng dụng cài đặt như một chương trình thông thường và một loại kiểm tra trực tiếp trên Web. XML Writer: Đây là chương trình soạn thảo và kiểm tra tính hợp lệ của tài liệu XML. 1.7 Trình soạn thảo XML Chúng ta có thể dùng các trình soạn thảo đơn giản để tạo tập tin XML như: - Notepad hay Wordpad của Windows - Vi hay Emacs của Linux hay Unix - Mặc định của XML là dùng Unicode Ngoài ra chúng ta có thể dùng trình soạn thảo chuyên nghiệp hơn để tạo tập tin XML như: - XML Notepad của Microsoft - XML Writer, có thể kiểm tra tính hợp khuôn dạng, tính hợp lệ - XML Spy hay eNotepad, tương tự như XML Writer 1.8 Một số ứng dụng của XML XML có thể tạo ra các tập ngôn ngữ con khác (ngôn ngữ định dạng dựa trên XML hay XML-base Language). Ứng dụng của XML mang ý nghĩa cho biết một tập các thẻ hay tập con XML hoạt động riêng trong một lĩnh vực nào đó. - MathML (Math Markup Language) - là ứng dụng của XML trong lĩnh vực toán học; MathML sử dụng XML để định dạng các biểu thức và các ký hiệu toán học. - CML (Chemical Markup Language)– ngôn ngữ định dạng hóa học; CML có thể mô tả và hiển thị nội dung của cấu trúc một phân tử hóa học. - CDF (Channel Definition Format) – khuôn dạng định nghĩa kênh; kênh phân phối nội dung Web; Các kênh phân phối sẽ chủ động gửi nội dung thông tin đến người dùng. - SMIL (Synchronized Multimedia Intergration Language) – ngôn ngữ tích hợp multimedia đồng bộ; là giải pháp khắc phục vấn đề xử lý các tập tin multimedia trong trình duyệt. - XHTML (Extension Hyper Text Markup Language) – mở rộng và định nghĩa Tài liệu giảng dạy môn: Chuyên đề Công nghệ XML và Ứng dụng 12
- lại ngôn ngữ HTML một cách có trật tự và cấu trúc hơn. - VML (Vector Markup Language) – ngôn ngữ định dạng vector. - WML (Wireless Markup Language) – ngôn ngữ định dạng mạng không dây… Kết chương Chương này, chúng ta nghiên cứu qua cú pháp cơ bản và cách định nghĩa các thành phần XML. Chúng ta, cần nắm vững các khái niệm đã đề cập, nó là nền tảng để chúng ta tìm hiểu các nội dung khác. Hợp khuôn dạng là yêu cầu tối thiểu đầu tiên mà tài liệu XML của chúng ta phải tuân thủ. Ngoài ra tài liệu XML còn yêu cầu một điều kiện nữa đó là tính hợp lệ khi định nghĩa kiểu tư liệu DTD cho các phần tử trong tài liệu. Đây là nội dung chúng ta sẽ được nghiên cứu ở các chương tiếp theo. Câu hỏi củng cố: 1. Ngôn ngữ định dạng là gì ? 2. Hãy cho biết thế nào là tài liệu XML hợp lệ hay hợp khuôn dạng? 3. Làm thế nào để kiểm tra tính hợp lệ của XML? 4. Hãy cho biết những ứng dụng cơ bản của XML? Tài liệu giảng dạy môn: Chuyên đề Công nghệ XML và Ứng dụng 13
- Chương 2 TẠO TÀI LIỆU XML HỢP KHUÔN DẠNG Mục tiêu học tập: Sau khi học xong chương này người học sẽ: - Hiểu được cú pháp của XML; Các phần tử XML; Các thuộc tính của XML. - Biết được thế nào là tài liệu XML hợp lệ, tài liệu XML hợp khuôn dạng. - Vận dụng các kiến thức trên để tạo tài liệu XML hợp khuôn dạng. Tóm tắt chương Khi xây dựng tài liệu XML chúng ta cần phải biết được các quy tắc cũng như cú pháp để định nghĩa các thành phần của tài liệu XML. Các tài liệu XML chỉ được xem là đúng đắn khi nó hợp khuôn dạng (well – form) – Các trình diễn dịch XML thường yêu cầu rất nghiêm ngặt về kiểm tra lỗi cú pháp. Trong chương này, chúng ta sẽ nghiên cứu về tính chất hợp khuôn dạng của tài liệu đồng thời tìm hiểu toàn bộ cú pháp XML, đây là bước nền tảng khởi đầu quan trọng nhất khi tìm hiểu về ngôn ngữ XML. 2.1 Xây dựng tài liệu hợp khuôn dạng Ở chương trước, chúng ta đã biết được thế nào là tài liệu hợp khuôn dạng, hợp lệ. Vì vậy, khi tạo tài liệu XML chúng ta cần tuân theo cách đặt thẻ theo một trật tự để trình duyệt có thể phân tích được bởi các bộ phận phân tích (parser). Các phần tử của tài liệu XML được gọi là thực thể (enties). Thực thể có thể là văn bản (text) hoặc dữ liệu nhị phân (binary) nhưng không được cả hai. Thực thể chỉ là cách nói chung để diễn đạt đơn vị lưu trữ dữ liệu trong XML. Nó sẽ không được gọi là tài liệu XML nếu các thẻ trong thực thể không được sắp đặt theo một trật tự và hợp khuôn dạng. Ví dụ tạo một tài liệu order.xml hợp khuôn dạng: - Đầu tiên ta cần chỉ định dấu hiệu nhận dạng thông tin về nội dung tài liệu - Nếu đây là tài liệu chứa toàn bộ thực thể duy nhất không tham chiếu đến các thực thể khác ta có thể chỉ cho bộ phân tích biết dữ liệu XML thể hiện là không phụ thuộc bằng chỉ thị bổ sung sau: Tài liệu giảng dạy môn: Chuyên đề Công nghệ XML và Ứng dụng 14
- Kế tiếp chúng ta cần phải có một phần tử hay thẻ gốc (root) cho tài liệu. Ở đây chúng ta gọi thẻ này là . . . Phần tử gốc trong tài liệu XML có thể chứa các thẻ hay các phần tử khác. . . . . . . Đối với mỗi chúng ta có thể thêm các thông tin như và … … … … Tài liệu giảng dạy môn: Chuyên đề Công nghệ XML và Ứng dụng 15
- Tóm lại, để hình thành nên một tài liệu XML thường chúng ta phải tuân theo cú pháp là: tạo chỉ thị xử lý XML, xây dựng phần tử hoặc thẻ gốc, tạo các phần tử con lồng trong phần tử gốc. Các phần tử thẻ bên trong thẻ gốc có thể chứa các thẻ con khác lồng sâu vào nhau nhiều cấp. 2.2 Định dạng và dữ liệu kiểu ký tự Định dạng tài liệu giúp chúng ta tạo nên một cấu trúc. Định dạng bao gồm thẻ bắt đầu, thẻ kết thúc, các phần tử thẻ rỗng, các tham chiếu thực thể, tham chiếu ký tự, lời chú thích, phân đoạn CDATA. Tất cả các dữ liệu còn lại trong tài liệu XML không phải là định dạng đều được xem là dữ liệu ký tự (text). 2.3 Phần khởi đầu của tài liệu XML Phần này được viết từ những dòng đầu tiên của tài liệu XML. Phần mở đầu chứa các khai báo phiên bản sử dụng của XML, lời chú thích, chỉ thị xử lý, khoảng trắng và khai báo kiểu tư liệu DTD. Ví dụ: ]> … … Tài liệu giảng dạy môn: Chuyên đề Công nghệ XML và Ứng dụng 16
- 2.4 Các khai báo và câu chú thích trong tài liệu XML Một tài liệu XML nên bắt đầu bằng một khai báo, cho biết tài liệu được viết theo định dạng và đặc tả XML. Khai báo XML phải được đặt ở dòng đầu tiên của tài liệu. Đây chính là chỉ thị xử lý, chỉ thị xử lý được đặt trong cặp thẻ . Trong phần tử khai báo chúng ta có thể sử dụng 3 kiểu khai báo thuộc tính: - Khai báo phiên bản (version): Khai báo này cho biết phiên bản đặc tả XML mà tài liệu đang sử dụng. - Khai báo mã hóa (encoding): Bộ mã mà chúng ta sử dụng trong tài liệu XML. Mặc định là UTF-8 hoặc có thể Unicode, UCS-2 hoặc UCS-4… thuộc tính này là tùy chọn. - Khai báo thực thể độc lập (standalone): Đặt thuộc tính này là “yes” nếu tài liệu không tham chiếu đến các thực thể khác bên ngoài (external entity); nếu không đặt thuộc tính này mặc định là “no”. Thuộc tính này cũng là tùy chọn. Để tập tin XML trở nên dễ hiểu và dễ chỉnh sửa sau này thì các dòng chú thích là không thể thiếu, các dòng chú thích đuợc đặt trong cặp thẻ . Chú thích không được đặt trước các khai báo. 2.5 Không gian tên (NameSpace) Không gian tên XML (NameSpace) cho phép chúng ta tự do định nghĩa các thẻ, nó cho chúng ta dùng cùng một tên nhưng lại nói đến nhiều loại dữ liệu khác nhau trong cùng một tài liệu XML. Ví dụ: 2001-01-01 Mr. Graeme Malcolm Treasure Island Robert Louis Stevenson Tài liệu giảng dạy môn: Chuyên đề Công nghệ XML và Ứng dụng 17
- Ta thấy trong ví dụ trên có phần tử nói đến hai loại dữ liệu khác nhau, một nói về tên tác giả, một nói về tiêu đề sách, điều này làm cho ta dễ nhầm lẫn giữa hai loại dữ liệu. Hơn thế nữa nếu tài liệu của chúng ta được sử dụng chỉ cho một mục đích riêng thì không có vấn đề gì. Nhưng khi tài liệu của chúng ta kết hợp với một tài liệu khác thì tài liệu kết hợp này sẽ có vấn đề vì chúng ta không chắc chắn rằng tài liệu khác mà chúng ta muốn kết hợp không có sử dụng thẻ trùng với thẻ của chúng ta định nghĩa hay không. Ví dụ khi chúng ta tích hợp tài liệu XML của chúng ta với ứng dụng khác như VML hay MathML mà chẳng may giữa các tài liệu này có cùng định nghĩa thẻ NAME chẳng hạn. Lúc này trình phân tích sẽ không biết nên hiểu thẻ NAME trong tài liệu của chúng ta hay của VML hay của MathML. Vì vậy, chúng ta cần phải khai báo không gian tên để khắc phục điều này. 2.6 Thẻ và các phần tử 2.6.1 Thẻ và phần tử Cấu trúc tài liệu XML dựa trên các thành phần định dạng. Những thành phần này bao gồm các phần tử (element). Mỗi phần tử thường bao gồm một cặp thẻ, thẻ bắt đầu và thẻ kết thúc (hay còn gọi là thẻ mở và thẻ đóng), ngoại trừ phần tử rỗng được định nghĩa bằng một thẻ. - Thẻ mở: bắt đầu bằng ký tự “”. Ví dụ: - Thẻ đóng: bắt đầu bằng ký tự “”. Ví dụ: 2.6.2 Tên thẻ (Tag Name) Tên thẻ có thể bắt đầu bằng ký tự, dấu gạch (_), dấu hai chấm (:), các ký tự kế tiếp có thể là ký tự, ký số, dấu gạch, gạch nối, dấu chấm, dấu hai chấm nhưng không được sử dụng khoảng trắng. Lưu ý: - Bộ phân tích và diễn dịch XML phân biệt chữ hoa chữ thường. - Mặc dù XML cho phép dùng dấu hai chấm trong tên thẻ nhưng nên tránh dùng. 2.6.3 Phần tử rỗng Thông thường một phần tử bao gồm một thẻ mở và một thẻ đóng. Giữa thẻ mở và thẻ đóng có thể chứa dữ liệu ký tự hoặc các cặp thẻ khác. Tuy nhiên, phần tử cũng có thể chỉ chứa duy nhất một thẻ - thẻ rỗng. Các thẻ chỉ đứng một mình tượng trưng cho phần tử rỗng và có dấu đóng thẻ là “/>” thay cho “>”. Tài liệu giảng dạy môn: Chuyên đề Công nghệ XML và Ứng dụng 18
- Ví dụ: 2.7 Phần tử gốc Tất cả các tài liệu XML được gọi là hợp khuôn dạng nếu chứa duy nhất một phần tử gốc (Root Element). Phần tử gốc được xem là phần tử quan trọng trong cấu trúc XML. Khi phân tích nội dung tài liệu XML ta phải bắt đầu từ phần tử gốc, sau đó tiếp tục lần ra các phần tử khác. Chúng ta có thể đặt tên bất kỳ cho phần tử gốc. Ví dụ: Phần tử ở trên là phần tử gốc. 2.8 Thuộc tính Thuộc tính (Attribute) được kết hợp theo cặp name=value. Thuộc tính cho phép chúng ta xác định thêm thông tin và ý nghĩa của thẻ. Thuộc tính được đặt bên trong thẻ mở và thẻ rỗng. Để gán giá trị cho thuộc tính, thường dùng dấu (=) . Ví dụ: Khi đó bộ xử lý và phân tích XML sẽ đọc và lấy giá trị của thuộc tính. Chúng ta có thể sử dụng giá trị trả về của thuộc tính thẻ để phục vụ cho chương trình ứng dụng. 2.8.1 Tên thuộc tính Tên của thuộc tính cần tuân thủ theo quy tắc đặt tên thẻ. Ví dụ: 2.8.2 Trị gán cho thuộc tính Bởi vì phần định dạng luôn là văn bản (text) nên thuộc tính cũng mang giá trị text ngay cả khi gán một trị số cho thuộc tính nó cũng được biểu diễn ở dạng text. Như Tài liệu giảng dạy môn: Chuyên đề Công nghệ XML và Ứng dụng 19
- vậy, khi chúng ta muốn dùng chuỗi số để tính toán ta cần sử dụng các hàm chuyên dụng của ngôn ngữ lập trình để chuyển đổi chuỗi thành số. Giá trị của thuộc tính trong cặp dấu nháy kép (“”), trường hợp chuỗi cần truyền bao gồm cả dấu nháy kép thì ta có thể dùng dấu nháy đơn („ ‟) thay thế. Tuy nhiên, nếu chuỗi cần truyền cần luôn cả dấu nháy kép và dấu nháy đơn thì ta có thể dùng thực thể định nghĩa của XML là &apos thay cho dấu nháy đơn và " thay cho dấu nháy kép. 2.8.3 Thuộc tính xml:lang Thuộc tính này thường được các bộ máy tìm kiếm thông tin (search engine) sử dụng như là dấu hiệu nhận dạng về ngôn ngữ của dữ liệu. Giá trị gán cho thuộc tính này thường là mã quốc gia theo chuẩn ISO 639 gồm hai ký tự viết tắt. Ví dụ: Hello 2.9 Một số quy tắc xây dựng cấu trúc tài liệu hợp khuôn dạng - Các khai báo XML cần được đặt ở dòng đầu tiên của tài liệu. - Tài liệu XML chỉ có một phần tử gốc, các phần tử khác nếu có phải là con của phần tử gốc. - Mọi phần tử XML khác rỗng phải bao gồm đầy đủ thẻ mở và thẻ đóng. - Đóng phần tử rỗng với chuỗi đóng là “/>”. - Mọi phần tử khác phần tử gốc đều phải nằm giữa cặp thẻ gốc. - Các phần tử lồng nhau phải có thẻ đóng và thẻ mở hợp vị trí. - Tên thuộc tính phải là duy nhất. - Chỉ sử dụng 5 tham chiếu thực thể được định nghĩa trước trong XML như: & ký tự & < ký tự < > ký tự > &apos ký tự „ " ký tự “ - Bọc giá trị thuộc tính bằng cặp dấu nháy (“ ”). - Chỉ nên sử dụng ký tự “
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Nhập môn cơ sở dữ liệu phân tán part 1
60 p | 423 | 177
-
Bài giảng Nhập môn Tin học - GV. Nguyễn Thị Thảo
53 p | 354 | 59
-
Kế hoạch giảng dạy môn Lập trình C
5 p | 259 | 56
-
Tài liệu giảng dạy môn kỹ thuật máy tính "Phần mềm Epidata"
104 p | 298 | 48
-
Bài giảng nhập môn cơ sở dữ liệu - Nguyễn Duy Nhất
26 p | 300 | 44
-
Tài liệu Kỹ thuật lập trình nâng cao - TS.Dương Xuân Thành
207 p | 193 | 40
-
Cách hướng dẫn thực hành tuần 2 - Nhập môn lập trình - Chủ đề DEBUG trên VC++ 6.0
8 p | 95 | 14
-
Bài giảng Nhập môn Công nghệ phần mềm: Chương 5 - ĐH Bách khoa TP HCM
14 p | 120 | 12
-
Nhập môn ngôn ngữ lập trình C part 1
25 p | 108 | 9
-
Tài liệu giảng dạy Tiếng Anh chuyên ngành Thiết kế đồ họa (Ngành/Nghề: Thiết kế đồ họa – Trình độ Cao đẳng) - Trường CĐ Kinh tế - Kỹ thuật Vinatex TP. HCM
77 p | 19 | 7
-
Tài liệu giảng dạy tiếng Anh chuyên ngành Công nghệ thông tin (Ngành/nghề: Công nghệ thông tin - Trình độ: Cao đẳng/Trung cấp) - Trường CĐ Kinh tế - Kỹ thuật Vinatex TP HCM (2019)
53 p | 71 | 6
-
Tài liệu giảng dạy Tiếng Anh chuyên ngành Công nghệ may (Ngành Công nghệ may – Trình độ Cao đẳng) - Trường CĐ Kinh tế - Kỹ thuật Vinatex TP. HCM (2021)
37 p | 20 | 5
-
Bài giảng Nhập môn điện toán: Chương 4 - ĐH Bách khoa TP.HCM
21 p | 71 | 5
-
Bài giảng Nhập môn lập trình - Bài 1: Các khái niệm cơ bản về lập trình
21 p | 127 | 4
-
Tài liệu giảng dạy Tiếng Anh chuyên ngành Thiết kế đồ họa (English for Graphic Design) - Trường CĐ Công nghệ TP.HCM
66 p | 6 | 4
-
Bài giảng Nhập môn lập trình - Bài 10: Quản lý bộ nhớ
28 p | 85 | 3
-
Bài giảng Nhập môn Tin học: Chương 1 - Nguyễn Đức Cương
8 p | 85 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn