Công nghệ XML và ứng dụng
Chương 1 : Mở ñầu
1. Các ví dụmở ñầu
2. Tài liệu XML
3. Công nghệXML
4. Giới thiệu vềDOM
Chương 2 : ðặc tảcấu trúc và nội dung tài liệu XML
1. Các khái niệm
2. ðặc tảcấu trúc tài liệu XML với DTD
3. ðặc tảcấu trúc tài liệu XML với Xml-Schema
Chương 3 : Truy xuất tài liệu XML với DOM
1. Giới thiệu chung vềDOM
2. Các thao tác cơbản
3. Ngôn ngữXPath
4. DOM và các công nghệkhác
Chương 4 : Biến ñổi tài liệu XML với XSLT
1. Giới thiệu chung vềXSLT
2. Hệthống các thẻcơbản
xuất danh sách dạng lưới trên trang Web từ một danh sách các nút của tập tin Xml trong một ứng dụng Web Ví dụ : Xuất danh sách các mặt hàng : tên , ðơn giá Xuất danh sách các nhân viên : Họ tên , Ngày sinh , Giới tính Xuất danh sách các môn học : tên môn , Số tiết LT, Số tiết thực hành .... Hướng giải quyết : Sử dụng thẻ table , tr, td của ngôn ngữ Html .... .... Thẻ xử lý kết xuất giá trị tại cột thứ 1 Thẻ xử lý kết xuất giá trị tại cột thứ 12 ..... Ví dụ : Chương trình Xslt sau sẽ xuất bảng ñơn giá thuê phòng từ tập tin Bang_don_gia.xml Bảng ñơn giá thuê phòng Loại phòng ðơn giá 2. XML --- > XML Mục tiêu : Trình bày một số kỹ thuật cơ bản cho phép tạo tài liệu Xml mới dựa trên một tài liệu Xml ñã có - Trích rút thông tin - Tái cấu trúc * Tạo nút và thuộc tính Vấn ñề : Cần tạo thẻ mới X cùng với các thuộc tính trong tập tin xml kết xuất Hướng giải quyết : Cách 1 : Tạo lập trực tiếp thẻ mới X trong chương trình Xslt ( tương tự như sao5n thảo tập tin XML Cách 2 : Sử dụng các thẻ xử lý xsl:element , xsl:attribute Thẻ xsl:element Ý nghĩa : Cho phép tạo thẻ mới trong tập tin Xml kết xuất Cú pháp : Các thẻ xử lý tạo thuộc tính ( nếu có ) Các thẻ khác Thẻ xsl:attribute Ý nghĩa : Cho phép tạo thuộc tính của một thẻ trong tập tin Xml kết xuất Cú pháp : Thẻ xử lý kết xuất giá trị của thuộc tính Các thẻ khác Vi dụ : Chương trình Xslt sau ñây biến ñổi tập tin Phieu_thu.xml với tập tin Xml kết xuất có các nút con tương ứng các thuộc tính <PHIEU_THUKhach_hang="Trần văn Long" Ngay_thu="11/2/2007" So_tien="40000" > Chương trình Xslt <PHIEU_THUNgay_thu="{$Ngay_thu}" So_tien="{$So_tien}"> * Sao chép nút Vấn ñề : Cần tạo thẻ kết xuất trong tập tin xml kết xuất có cùng tên và các thuộc tính với thẻ trong tập tin nguồn Hướng giải quyết : Cách 1 : Sử dụng các thẻ xử lý xsl:element , xsl:attribute Cách 2 : Sử dụng các thẻ xử lý xsl:copy , xsl:attribute Thẻ xsl:copy Ý nghĩa : Cho phép sao chép thẻ từ tập tin xml nguồn ( với nút ngữ cảnh tương ứng thẻ ) sang tập tin xml kết xuất Cú pháp : Các thẻ xử lý tạo thuộc tính ( nếu có ) Các thẻ khác Kết hợp với xsl:attribute ñể sao chép thẻ - thuộc tính Ví dụ 1: Chương trình sau trích danh sách các khối của tập tin truong.xml Vi dụ 2 : Chương trình Xslt sau cho phép biến ñổi tập tin Xml bất kỳ theo qui tắc : Tất cả thuộc tính sẽ biến thành thẻ con * Sao chép nút - thuộc tính - nút con Vấn ñề : Cần sao chép toàn bộ thẻ X , tất cả thuộc tính của X, tất các thẻ con mọi cấp của X trong tập tin xml nguồn vào tập tin Xml kết xuất Hướng giải quyết : Cách 1 : Sử dụng các thẻ xử lý xsl:copy , xsl:attribute Cách 2 : Sử dụng thẻ xử lý xsl:copy-of Thẻ xsl:copy-of Ý nghĩa : Cho phép sao chép toàn bộ thẻ X , tất cả thuộc tính của X, tất các thẻ con mọi cấp của X trong tập tin xml nguồn vào tập tin Xml kết xuất Cú pháp : Vi dụ : Cho tập tin xml Bang_phan_cong.xml ðoạn chương trình sau cho phép tái cấu trúc tập tin Bang_phan_cong.xml với thẻ MON chuyễn thành thuộc tính Bo_mon của thẻ GIAO_VIEN * Sắp thứ tự các nút Vấn ñề : Cần sắp thứ tự danh sách các thẻ X của tập tin xml kết xuất Hướng giải quyết : Sử dụng thẻ xử lý xsl:sort kết hợp với xsl:apply-templates Thẻ xsl:sort Ý nghĩa : Cho phép sắp thứ tự danh sách các thẻ X của tập tin xml kết xuất Cú pháp : Sắp tăng Sắp giảm Kết hợp với xsl:apply-templates ñể tiến hành sắp thứ tự các kết quả sau khi thực hiện so khớp các hàm/mẩu ...... Ví dụ : Với tập tin Xml Ket_qua_Olympic.xml ðoạn chương trình XSL sau sắp xếp các quốc gia giảm dần theo thứ tự ưu tiên - Ứu tiên 1 : Số huy chương vàng - Ứu tiên 2 : Số huy chương bạc - Ưu tiên 3 : Số huy chương ñồng --> IV. Bài tập 1. XML --- > HTML * Tích 2 phân số Yêu cầu : Viết chương trình XSLT cho phép tạo kết xuất từ dữ liệu nguồn - Dữ liệu nguồn : Tập tin xml biểu diễn thông tin về 2 phân số - Kết xuất : Trang Web thể hiện kết quả nhân 2 phân số Ví dụ : vời phân số 4/7, 5/11 Kết xuất sẽ là Kết quả tính tích 2 phân số 1/7 và 5/11 4/7*5/11=20/77 * Phương trình ñường thẳng Yêu cầu : Viết chương trình XSLT cho phép tạo kết xuất từ dữ liệu nguồn - Dữ liệu nguồn : Tập tin xml biểu diễn thông tin về các hệ số của phương trình ñường thẳng trong mặt phẳng - Kết xuất : Trang Web thể hiện kết quả là phương trình ñường thẳng Ví dụ : Vời giá trị các hệ số 2,3,4 Kết xuất sẽ là : Phương trình ñường thẳng 2x + 3y + 4=0 Vời giá trị các hệ số 7,-3 Kết xuất sẽ là : Phương trình ñường thẳng 7x - 3y =0 * Phương trình ñường tròn Yêu cầu : Viết chương trình XSLT cho phép tạo kết xuất từ dữ liệu nguồn - Dữ liệu nguồn : Tập tin xml biểu diễn thông tin về tọa ñộ tâm và bán kính của một ñường tròn - Kết xuất : Trang Web thể hiện kết quả là phương trình ñường tròn Ví dụ : Vời giá trị các tọa ñộ tâm 4,5 và bán kính 3 Kết xuất sẽ là : Phương trình ñường tròn (x-4)2 + (y-5) 2 = 9 Vời giá trị các tọa ñộ tâm -2,3 và bán kính 7 Kết xuất sẽ là : Phương trình ñường tròn (x + 2 )2 + (y-3) 2 = 49 * ðề trắc nghiệm Yêu cầu : Viết chương trình XSLT cho phép tạo kết xuất từ dữ liệu nguồn - Dữ liệu nguồn : Tập tin xml biểu diễn thông tin về ñề trắc nghiệm - Kết xuất : Trang Web thể hiện ñề trắc nghiệm * Hồ sơ học sinh Yêu cầu : Viết chương trình XSLT cho phép tạo kết xuất từ dữ liệu nguồn - Dữ liệu nguồn : Tập tin xml biểu diễn thông tin về hồ sơ học sinh bao gồm : Họ và tên , giới tính, ngày sinh , ñịa chỉ - Kết xuất : a) Trang Web thể hiện hồ sơ học sinh dạng xem b) Trang Web thể hiện hồ sơ học sinh dạng nhập liệu ( cập nhật) * Bảng xếp hạng Olympic Yêu cầu : Viết chương trình XSLT cho phép tạo kết xuất từ dữ liệu nguồn - Dữ liệu nguồn : Tập tin xml biểu diễn thông tin kết quả thi ñấu Olympic các quốc gia - Kết xuất : a) Trang Web thể hiện bảng kết quả thi ñấu b) Trang Web cho phép cập nhật số huy chương vàng, bạc, ñồng 2. XML - XML * Hồ sơ nhân viên Yêu cầu : Viết chương trình XSLT cho phép tạo kết xuất từ dữ liệu nguồn - Dữ liệu nguồn : Tập tin xml biểu diễn thông tin về hồ sơ nhân viên với + Thông tin bao gồm : Họ và tên, Giới tính , Ngày sinh, ðịa chỉ , ðơn vị + Tất cả các thông tin ñều biểu diễn dưới dạng thẻ con - Kết xuất : Tập tin Xml a) Tất cả các thông tin ñều biểu diễn dạng thuộc tính b) Tất cả các thông ngoại trừ ñơn vị ñều biểu diễn dạng thuộc tính * Trường - khối - lớp Yêu cầu : Viết chương trình XSLT cho phép tạo kết xuất từ dữ liệu nguồn - Dữ liệu nguồn : Tập tin xml biểu diễn thông tin tổ chức trường , các khối của trường, các lớp của khối - Kết xuất : a) Tập tin Xml chỉ bao gồm các lớp có sỉ số trên 30 b) Tập tin Xml chỉ bao gồm các khối có hơn 5 lớp * Bảng phân công giáo viên Yêu cầu : Viết chương trình XSLT cho phép tạo kết xuất từ dữ liệu nguồn - Dữ liệu nguồn : Tập tin xml biểu diễn thông tin bảng phân công các giáo viên của một trường - Kết xuất : a) Tập tin Xml chỉ bao gồm danh sách các bộ môn cùng với số lượng các giáo viên b) Tập tin Xml chỉ bao gồm danh sách các giáo viên ñược phân công dạy trên 2 lớp * Cây số nguyên Yêu cầu : Viết chương trình XSLT cho phép tạo kết xuất từ dữ liệu nguồn - Dữ liệu nguồn : Tập tin xml biểu diễn thông tin cây các số nguyên - Kết xuất : a) Tập tin Xml chỉ bao gồm danh sách các nút lá b) Tập tin Xml chỉ bao gồm danh sách các nút có giá trị từ 1 ñến 10 c) Tập tin Xml là tập tin nguồn sau khi bỏ ñi các nút lá d) Tập tin Xml là tập tin nguồn sau khi bỏ ñi tất cả các nút con cấp 1 ( con của gốc ) e) Tập tin Xml là tập tin nguồn sau khi sắp thứ tự tăng các nút cùng cha ðồ án Mục tiêu : Giúp sinh viên - Có cơ hội ôn tập, rèn luyện các kỹ thuật liên quan XML - Có cơ hội tìm hiểu và sử dụng tốt ngôn ngữ lập trình - Rút các kinh nghiệm khi xây dựng ứng dụng thực tế ðiểm số : ðồ án là tùy chọn, sinh viên không bắt buộc phải ñăng ký. Với các sinh viên ñã ñăng ký ñiểm số của ñồ án sẽ ñược cộng vào ñiểm thi cuối môn === > ðiểm thi cuối môn sẽ là 10 + n với -2<=n <=2 ðăng ký và không nộp bài n =-2 === > Cần suy nhỉ trước khi ñăng ký Yêu cầu chung : Viết một chương trình ứng dụng với các chức năng ñược yêu cầu Kết quả nộp : 1. Báo cáo viết về hồ sơ thiết kế ( tập tin Word ) 2. Chương trình nguồn 3 . Chương trình ñã biên dịch cùng với các dữ liệu thử nghiệm Thời hạn : - Hạn chót ñăng ký : Ngày 1/10/2007. Sinh viên ñăng ký ñồ án nào sẽ chọn mục thảo luận và cho ý kiến về việc ñăng ký - Hạn chót nộp kết quả : Sẽ ñược thông báo sau ( dự kiến trong tuần lễ thi ) Lứu ý : - 1 sinh viên trên 1 ñồ án - Có thể sẽ có vấn ñáp trực tiếp với giáo viên khi nộp ñồ án nhằm xác ñịnh chính xác người thực hiện 1. Dò mìn Các yêu cầu chức năng : 1. ðánh cờ ( chức năng chính tương ứng việc xử lý việc chọn vị trí của người dùng ) 2. Ghi bàn cờ vào tập tin 3. ðọc bàn cờ ñã ghi 2. Bán vé tàu hỏa Các yêu cầu chức năng : 1. Tính tiền bán vé 2. Quản lý ( thêm,xóa,sửa ) các ga 3. Cập nhật bảng ñơn giá 3. ðánh cơ caro Các yêu cầu chức năng : 1. ðánh cờ ( chức năng chính tương ứng việc xử lý việc ñi cờ của người dùng ) 2. Ghi bàn cờ vào tập tin 3. ðọc bàn cờ ñã ghi 4. ðánh cơ tướng Các yêu cầu chức năng : 1. ðánh cờ ( chức năng chính tương ứng việc xử lý việc ñi cờ của người dùng ) 2. Ghi bàn cờ vào tập tin 3. ðọc bàn cờ ñã ghi 5. Trò chơi ô chử Các yêu cầu chức năng : 1. ðọc và ñoán ô chử ñả ñược lưu trữ trên 1 tập tin 2. Soạn thảo và ghi ô chử vào tập tin 6. Trò chơi Sudoku Các yêu cầu chức năng : 1. ðọc và giải ma trận Sudoku ñả ñược lưu trữ trên 1 tập tin 2. Soạn thảo ma trận Sudoku và ghi vào tập tin 7. Rồng vàng Các yêu cầu chức năng : 1. Sắp xếp các từ ( vòng 1 của trò chơi ) 2. Trả lời các câu ñố ( vòng 2 ) 2. Soạn thảo câu ñố ( vòng 1 , 2 ) The End
File đính kèm:
- Công nghệ XML và ứng dụng.pdf