Xây dựng các XQuery khai thác ngân hàng câu hỏi qua web

Một phần của tài liệu Cơ sở dữ liệu XML trong tổ chức quản lý ngân hàng câu hỏi theo tiêu chuẩn QTI (Trang 67)

Với sự hỗ trợ của eXist, ta có thể xây dựng các ứng dụng web bằng ngôn ngữ

XQuery. Ta có thể viết một ứng dụng web đầy đủ các tính năng từ trang đăng nhập tới các truy vấn lấy dữ liệu trong CSDL eXist và hiển thị kết quả ra web như các ứng dụng web quen biết. Theo tài liệu giới thiệu về XQuery chúng ta đã thấy XQuery có thể trả lại tập kết quảở dạng XML, HTML hoặc TEXT.

Trong phần này chúng tôi trình bày một số XQuery thực thi một số truy vấn

điển hình trong quản lý và khai thác ngân hàng câu hỏi trắc nghiệm.

4.3.1. Một vài truy vấn điển hình

Truy vấn 1: Lấy ra tất cả câu hỏi thuộc loại đơn lựa chọn có trong ngân hàng, kết quả trả về là một trang html

Hình 4.2: Truy vấn listItem.xql

Truy vấn listItem.xql sau khi thực thi trả lại kết quả như sau

Truy vấn 2: Truy vấn dưới đây liệt kê tất cả các câu hỏi thuộc Bài 5 và Bài 6 có trong ngân hàng, kết quả trả vềđược thể hiện dưới dạng trang html. Với yêu cầu này ta có thể xây dựng truy vấn XQuery theo hai cách:

- Cách 1: Chọn trực tiếp các trong sưu tập B5 tương ứng với Bài 5 và sưu tập B6 tương ứng với B6

- Cách 2: Chọn các câu hỏi trong ngân hàng tương ứng sưu tập MSExcel với điều kiện assessmentItem[@title='Biểu đồ, đồ thị' and @title='Hoàn thiện trang bảng tính và in ấn']

Truy vấn ItemB5_6.xql dưới đây được thực hiện theo cách 1

Sau khi thực thi truy vấn kết qủa trả về như sau:

Hình 4.5: Trang web hiển thị kết quả thực thi ItemB5_6.xql

4.3.2. Xây dựng truy vấn tựđộng sinh bài thi trắc nghiệm

Trước hết cần phải phân tích yêu cầu đặt ra để phân tách thành các truy vấn con, từ các truy vẫn con đó lại tiếp tục phân tích xem có thể tách thành các truy vấn con nữa hay không. Cụ thểở phần này, để giải quyết yêu cầu đặt ra ở phần 4.1 ta cần phải xây dựng truy vấn đáp ứng các yêu cầu:

- Chọn 10 câu hỏi ngẫu nhiên rải đều các bài: để giải quyết thì ta cần phải xây dựng một hàm để sinh tập ra 10 số ngẫu nhiên phải đảm bảo yêu cầu các số này là số nguyên, đều nhỏ hơn tổng số câu hỏi trong tập câu hỏi lấy ra.

Hình 4.6: Đoạn mã để sinh ra $num số ngẫu nhiên nhỏ hơn $max

- Tối thiểu phải có một câu thuộc nội dung “Công thức và hàm”: ở đây vì câu hỏi được lưu theo từng bài nên ta chọn câu hỏi trực tiếp trong sưu tập tương ứng với bài đó, và ở yêu cầu này không bắt buộc là câu hỏi thuộc loại choice hay selectPoint nên chúng ta có thể dễ dàng đưa ra câu truy vấn như sau:

Hình 4.8: Đoạn mã để lấy ra các câu hỏi thuộc bài “Công thức và hàm”

- Chọn 4 câu tình huống thực hành ở dạng chọn điểm cho trước trên ảnh: giải quyết bằng cách chọn ngẫu nhiên 4 câu hỏi mà thẻassessmentItem có thuộc tính identifier bằng selectPoint

Hình 4.7: Đoạn mã để lấy ra các câu hỏi thuộc dạng selectPoint

Như vậy số câu còn lại đều thuộc loại đơn lựa chọn cần lấy ra là 5 câu, trong 5 câu này đều có thể nằm ở các bài nhưng với điều kiện là chúng không thể

Hình 4.7: Đoạn mã chọn ra các câu hỏi còn lại

4.3.3. Kết quả thử nghiệm

Chúng tôi đã chạy thử truy vấn trong 10 lần và nhận thấy 10 tập câu hỏi lấy ra cơ bản là khác nhau, nhiều nhất là 2/10 câu trùng nhau giữa hai lần thực thi, đa số sự sự trùng lặp này nằm ở phía các câu hỏi thuộc loại selectPoint vì chỉ

có 13 câu hỏi thuộc loại này đưa vào thử nghiệm.

Dưới đây là kết quả của một lần thực thi truy vấn

Hinh 4.9: Kết quả thực thi truy vấn MSExcelQuestion.xql

Ở đây mới giải quyết cho một yêu cầu cụ thể và thấy việc sử dụng eXist trong quản lý ngân hàng câu hỏi là phù hợp, tuy nhiên sử dụng eXist để thay thế

ngay các hệ quản trị CSDL hiện dùng thì cũng cần phải có thêm thời gian để thử (adsbygoogle = window.adsbygoogle || []).push({});

KT LUN

Dữ liệu XML đã trở nên quen thuộc và phổ biến trong nhiều lĩnh vực. Đã có những hệ quản trị CSDL XML là sản phẩm thương mại được thử thách. Việc sử

dụng hệ quản trị CSDL XML để thay thế các CSDL cũ trong những ứng dụng thích hợp đang được quan tâm. Luận văn đã tập trung nghiên cứu về các đặc tính chung của các NXD và áp dụng vào một ứng dụng thực tế là quản lý và khai thác ngân hàng câu hỏi trăc nghiệm trong một hệ thống sát hạch tuân theo chuẩn.

Một số kết quả của luận văn:

- Tìm hiểu các hướng tiếp cận để lưu trữ dữ liệu XML và một loại cơ sở dữ

liệu XML đang thịnh hành là NXD, đặc biệt là các ngôn ngữ truy vấn dữ

liệu XML và cách đánh chỉ số trong NXD để tối ưu các truy vấn; - Tìm hiểu một số nét khái quát vềđặc tả QTI do IMS Global đề xuất;

- Nghiên cứu một NXD mã nguồn mở là eXist và ứng dụng vào việc quản lý ngân hàng câu hỏi theo chuẩn QTI: Đề xuất cách tổ chức ngân hàng câu hỏi trong hệ thống eXist; sử dụng ngôn ngữ truy vấn dữ liệu XML khai thác ngân hàng câu hỏi phát sinh bài thi tựđộng.

Một số hạn chế của luận văn:

- Luận văn dừng lại ở mức tìm hiểu và ứng dụng NXD, chưa có các nghiên cứu sâu hơn như vấn đề cải tiến hiệu năng, tăng tốc độ, v.v...

- Chưa tích hợp eXist với các phân hệ khác theo phần hướng dẫn thực thi trong đặc tả QTI thành một thể thống nhất.

Hướng phát triển của luận văn:

- Tiếp tục tùy biến để tích hợp eXist với các phân hệ khác theo phần hướng dẫn thực thi trong đặc tả QTI thành một thể thống nhất;

- Tiếp tục nghiên cứu sâu hơn về NXD, cách đánh chỉ số trong NXD và ứng dụng trong tối ưu hóa truy vấn .

TÀI LIU THAM KHO

"Tài liệu Tiếng Việt

1. Nguyễn Phương Lan (2001), XML – nền tảng và ứng dụng, NXB Giáo dục, Hà Nội

2. Nguyễn Thị Thắm (2006), Lý thuyết trắc nghiệm và ứng dụng trong trắc nghiệm trực tuyến, Viện Công nghệ Thông tin – Đại học Quốc gia Hà Nội

"Tài liệu Tiếng Anh

3. Alexander Nakhimovsky and Tom Myers, “Professional Java XML Programming”, WROX Press Ltd

4. Athena Vakali • Aristotle University,Greece, Barbara Catania and Anna Maddalena University of Genoa, “XML Data Stores: Emerging Practices

5. B. McLaughlin (2000), “Java and XML”, O’Reilly

6. Chun Zhang, Jeffrey F. Naughton, David J. DeWitt, Qiong Luo, and Guy M. Lohmann (2001), . “On Supporting Containment Queries in Relational Database Management Systems”, In Proceedings of the SIGMOD Conference

7. Divesh Srivastava, Shurug Al-Khalifa, H.V. Jagadish, Nick Koudas, Jignesh M. Patel, and Yuqing Wu (2002). “Structural Joins: A Primitive for Efficient XML Query Pattern Matching”,. In Proceedings of the ICDE Conference

8. Héctor Barbosa León and , Francisco García Peñalvo, . “An Authoring Tool for Adaptative Assessment Items”, Plaza de la Merced s/n Salamanca Spain 37008

9. Khin-Myo Win Wee-Keong Ng Ee-Peng Lim Nanyang Technological University, “A Architectural Framework for Native XML Data Management

Data for Regular Path Expressions”. In VLDB 2001, Proceedings of 27th International Conference on Very Large Databases

11. R. Hoque (2000), “. XML for real programmers”, Morgan Kaufmann 12. Shu-Yao Chien, Vassilis J. Tsotras, Carlo Zaniolo, and Donghui Zhang

(2002), “Efficient Complex Query Support for Multiversion XML Documents”, In Proceedings of the EDBT Conference

13. Ullas Nambiar and Zoé Lacroix Arizona State University Stéphane Bressan, Mong Li Lee, and Yingguang Li National University of Singapore (2002),“Current Approaches to XML Management” (adsbygoogle = window.adsbygoogle || []).push({});

14. W.P. Lee and A.Goh (2004), “Setting and Sharing Web-Based Assessments”, Web Based Education Proceeding (416), pp.270-274

15. Wolfgang Meier, Darmstadt University of Technology, “eXist: An Open Source Native XML Database

16. Yong Kyu Lee, Seong-Joon Yoo, Kyoungro Yoon, and P. Bruce Berra (1996). “Index Structures for Structured Documents”, In Proceedings of the 1st ACM International Conference on Digital Libraries Bethseda, Maryland, USA. ACM Press

"Một sốđịa chỉ Website:

17. http://www.imsglobal.org/

18. http://bugs.sakaiproject.org/jira/browse/SAK-1891 - QTI import of Respondus-generated question – Sakai

19. http://www.rpbourret.com/xml/DTDToDatabase.htm 20. http://www.rpbourret.com/xml/XMLAndDatabases.htm 21. http://exist.sourceforge.net

22. http://www.sqlxml.org

24. http://www.infoworld.com/article/06/01/02/01FEtoyawards_2.html 25. http://exist-db.org/quickstart.html

PH LC

Kết quả xác thực số câu hỏi có trong các sưu tập con

- Số câu hỏi có trong sưu tập con B1

- Số câu hỏi có trong sưu tập con B2

- Số câu hỏi có trong sưu tập con B3

- Số câu hỏi có trong sưu tập con B5

Thank you for evaluating AnyBizSoft PDF Splitter.

A watermark is added at the end of each output PDF file.

To remove the watermark, you need to purchase the software from

Một phần của tài liệu Cơ sở dữ liệu XML trong tổ chức quản lý ngân hàng câu hỏi theo tiêu chuẩn QTI (Trang 67)