CHƯƠNG I: TỔNG QUAN VỀ NHIỆM VỤ CỦA ĐỒ ÁN 3
I. Đặt vấn đề. 3
II. Nội dung đồ án 3
CHƯƠNG II : TỔNG QUAN VỀ E-LEARNING 5
I.Tổng quan về e-Learning. 5
1. Phương pháp giảng dạy truyền thống 5
2. Ưu điểm của phương pháp giảng dạy có ứng dụng khoa học và công nghệ 5
3. Định nghĩa e-Learning. 7
4. Phân biệt e-Learning với một số khái niệm khác 8
5. Kết hợp e-Learning với cách học truyền thống 9
6. Cấu trúc của một chương trình đào tạo e-Learning. 9
7. Các kiểu trao đổi thông tin trong e-Learning 11
8. Phạm vi ứng dụng của e-Learning 12
8.1. e-Learning trong công sở 12
8.2. e-Learning trong giáo dục đại học 14
9. Các giải pháp e-Learning 17
9.1 Các giải pháp thông tin đơn giản 17
9.2 Các giải pháp thông tin trong công sở 17
9.3.Các giải pháp thông tin trong giáo dục đại học 18
9.4 Các bản trình bày và truyền thông phân luồng 18
9.5.Các hoạt động e-Learning trực tiếp 19
9.6 Học tập qua email 20
9.7 Cộng tác trong học tập 22
10. e-Learning là một giải pháp học tập không quan tâm đến phạm vi khoảng cách 22
II. Chuẩn. 23
1. Chuẩn là gì? 23
2. Các tổ chức đưa ra chuẩn. 25
3. Các chuẩn e-Learning hiện có 28
4. Tại sao chuẩn quan trọng 29
5. Tìm hiểu về chuẩn SCORM 2004 30
5.1 Mở đầu 30
5.2 Tổng quan 31
5.3 Điểm qua các thành phần chính trong SCORM 2004 31
5.4 Tìm hiểu XML 32
5.5 Content Aggregation Model 38
5.6 Môi trường thực thi (Run-Time Environment) 40
5.7 Sequencing & Navigation 43
CHƯƠNG III. GIỚI THIỆU NGÔN NGỮ ASP.NET 44
CHƯƠNG IV. XÂY DỰNG ỨNG DỤNG LMS 47
I. Mở đầu 47
1.LMS là gì? 47
2 . Phương pháp chung xây dựng một phần mềm quản lý đào tạo LMS có ứng dụng Multimedia. 48
II. Phân tích và thiết kế 50
1. Mô tả về hệ thống 50
2. Phân tích hệ thống: 52
2.1 Sơ đồ phân cấp chức năng. 52
2.2 Sơ đồ luồng dữ liệu. 60
2.3 Mô hình dữ liệu thực thể ERD(Entity Relationship Diagram) 71
3. Thiết kế hệ thống 74
3.1 Thiết kế dữ liệu 74
3.2 Các qui tắc cài đặt 79
III. Cài đặt chương trình 80
IV. Khái quát về chương trình : 81
CHƯƠNG V. ĐÁNH GIÁ KẾT LUẬN 94
VÀ HƯỚNG PHÁT TRIỂN 94
95 trang |
Chia sẻ: huong.duong | Lượt xem: 1980 | Lượt tải: 3
Bạn đang xem trước 20 trang tài liệu Đề tài Tìm hiểu về E-Learning xây dựng hệ thống LMS (Learning Management System), để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
m được tiếng nói chung, hợp tác với nhau được cả về mặt kĩ thuật và mặt phương pháp. LMS có thể dùng được nội dung phát triển bởi nhiều công cụ khác nhau và nhiều ví dụ khác nữa.
Trong một buổi trình bày tại TechLearn, Wayne Hodgins đã khẳng định rằng chuẩn e-Learning có thể giúp chúng ta giải quyết được những vấn đề sau: khả năng truy cập được, tính khả chuyển, tính thích ứng, tính sử dụng lại, tính bền vững, tính giảm chi phí.
Sự khác nhau giữa một chuẩn và một đặc tả :
Một lỗi thường gặp là nhầm lẫn giữa thuật ngữ "chuẩn" (standard) với "đặc tả" (specification). IEEE giải thích sự khác biệt như sau:
Đặc tả được phát triển bởi các uỷ ban không được công nhận bởi thế giới. Một vài ví dụ về các uỷ ban nổi tiếng như: IEFT (Internet Engineering Task Force), W3C (World Wide Web Consortium), OMG (Object Management Group).
Chuẩn là một đặc tả được phát triển và công nhận bởi các uỷ ban chuẩn được công nhận trên thế giới. Các tổ chức mà thực hiện công việc kiểu như thế này được gọi là Standards Development Organization (SDO). Ví dụ về các uỷ ban này là: IEEE, ISO, IEC, ITU, ANSI, BSI, CSA, JIS, DIN, và CEN.
Có thể tóm tắt sự khác biệt như bảng dưới đây:
Đặc tả
Chuẩn
Tiến triển nhanh
Tiến triển chậm
Mang tính thử nghiệm
Là kết luận cuối cùng
Quy mô rộng
Quy mô hẹp
Tham khảo ý kiến của ít người
Tham khảo ý kiến của nhiều người
Bạn cần hiểu sự khác biệt này để có thể nhận thức được sự khó khăn của toàn bộ quá trình chuẩn hoá. Để thiết lập một chuẩn từ ban đầu bạn sẽ mất 10 năm. Tuy nhiên trong lĩnh vực e-Learning chúng ta cần các điều lệ nếu không chúng ta sẽ không thể hợp tác với nhau. Vào thời điểm hiện tại, chúng ta đang cố gắng thiết lập các đặc tả. Sau này, chúng sẽ trở thành các chuẩn. Quá trình hình thành một chuẩn sẽ được trình bày kỹ hơn ở các phần sau.
2. Các tổ chức đưa ra chuẩn.
Có rất nhiều người và tổ chức liên quan tới các nhóm tham gia quá trình chuẩn hoá. Có nhiều người tích cực còn tham gia nhiều nhóm. Thường thì các tổ chức là phi lợi nhuận. Đa số những người tham gia các nhóm làm việc đều là tự nguyện. Dưới đây sẽ xem xét các nhóm quan trọng nhất.
Một trong các uỷ ban chuẩn quan trọng nhất là IEEE Learning Technology Standards Committee (IEEE LTSC - Uỷ ban chuẩn công nghệ học tập). Uỷ ban này bao gồm hơn 20 nhóm làm việc về các phần quan trọng của e-Learning như learning object metadata, student profiles, course sequencing, computer managed instruction, competency definitions, localization, và content packaging. Nhiệm vụ của các nhóm này là phát triển các chuẩn về kĩ thuật, các hướng dẫn khi triển khai thực tế, các chỉ dẫn cho nội dung, công cụ, công nghệ, và các phương pháp thiết sao cho kích thích sự phát triển, triển khai, bảo trì và khả chuyển trên máy tính về các hệ thống và các thành phần phục vụ cho mục đích giáo dục và đào tạo
Gần đây , IEEE LTSC đề xướng việc đưa các công việc chuẩn hoá của uỷ ban lên thành các chuẩn ISO (International Standards Organization - Tổ chức chuẩn hoá quốc tế) bằng cách thiết lập ISO Joint Technical Committee 1 (JTC1) Sub Committee 36 (SC36) về công nghệ học tập (Learning Technology). SC36 sẽ phát triển các chuẩn quốc tế trong các lĩnh vực học tập, giáo dục, và đào tạo (Learning, Education, and Training). ISO là một liên đoàn của các uỷ ban chuẩn của 130 quốc gia trên thế giới, mỗi nước đóng góp một uỷ ban. Nhiệm vụ của ISO là xúc tiến việc phát triển quá trình chuẩn hoá và các hoạt động liên quan trên thế giới với mục đích hỗ trợ việc trao đổi hàng hoá và dịch vụ, và phát triển hợp tác trên toàn cầu về tri thức, khoa học, công nghệ, và kinh tế.
Advanced Distributed Learning (ADL) Initiative là một đề xướng của chính phủ liên bang Mỹ. Những chỉ dẫn đưa ra bởi ADL cung cấp một nền tảng cho bộ quốc phòng Mỹ (Department of Defense) sử dụng các công nghệ học tập để xây dựng, vận hành môi trường học tập của tương lai. Những công việc mà ADL đã làm là sự ra đời của SCORM (Sharable Content Object Reference Model) cung cấp một trong các ví dụ tốt nhất về việc ứng dụng và tích hợp các chuẩn học tập.
SCORM là:
Một mô hình tham khảo định nghĩa mô hình nội dung học tập dựa trên môi trường web.
Một tập các đặc tả kĩ thuật thiết kế để đáp ứng các yêu cầu cao của bộ quốc phòng Mỹ.
Một quá trình kết hợp, hài hoà lợi ích và quan điểm của các nhóm khác nhau.
Một chiếc cầu nối từ các công nghệ, đặc tả mới ra đời tới các sản phẩm thương mại.
IMS (Instructional Management System) Global Learning Consortium phát triển và xúc tiến các đặc tả mở (không phải chuẩn) để hỗ trợ các hoạt động học tập phân tán trên mạng như định vị và sử dụng nội dung giáo dục, theo dõi quá trình học tập, thông báo kết quả học tập, và trao đổi các thông tin về học viên giữa các hệ thống quản lý.
IMS có hai mục tiêu chính:
Xác định các đặc tả kĩ thuật phục vụ cho việc khả chuyển giữa các ứng dụng và các dịch vụ trong học tập phân tán.
Hỗ trợ việc đưa các đặc tả của IMS vào các sản phẩm và các dịch vụ trên toàn thế giới. IMS xúc tiến việc thực thi các đặc tả sao cho các môi trường học tập phân tán và nội dung từ nhiều nguồn khác nhau có thể hiểu nhau.
Bản thân SCORM đưa nhiều nhiều đặc tả của IMS vào bên trong mô hình.
AICC (Aviation Industry CBT Committee) phát triển các chỉ dẫn cho ngành công nghiệp hàng không trong việc phát triển, phân phối, và đánh giá việc đào tạo dựa trên máy tính (CBT - Computer-Based Training) và các công nghệ liên quan tới đào tạo.
Các mục tiêu của AICC:
Giúp đỡ những người làm việc trong ngành hàng không phát triển các chỉ dẫn xúc tiến việc thực thi đào tạo dựa trên máy tính hiệu quả và kinh tế.
Phát triển các chỉ dẫn đảm bảo tính khả chuyển.
Đưa ra một diễn đàn mở thảo luận về đào tạo dựa trên máy tính và các công nghệ đào tạo khác.
Mặc dù các đặc tả của tổ chức nhằm phục vụ cho ngành hàng không, chúng đã có ảnh hưởng đến toàn bộ cộng đồng e-Learning trên toàn thế giới. Chính vì vậy, một số lớn các tổ chức và các công ty đã sử dụng các chỉ dẫn của AICC trong các đặc tả và sản phẩm của mình.
Dự án PROMETEUS (tài trợ bởi liên minh châu Âu) áp dụng các chuẩn học tập của IEEE LTSC ở châu Âu. Tất nhiên không chỉ có việc áp dụng các chuẩn của IEEE LTSC một cách máy móc, rất nhiều nhóm Special Interest Groups (SIGs) của PROMETEUS làm việc để làm sao áp dụng các chuẩn này phù hợp với văn hoá và hoàn cảnh cụ thể của châu Âu.
Mối quan hệ giữa các tổ chức :
Tất cả các dự án, các uỷ ban, và các nhóm làm việc đều có quan hệ với nhau. Thường thì, các chuyên gia trong lĩnh vực e-Learning chiếm vai trò quan trọng ở hơn một uỷ ban. Các uỷ ban cũng trao đổi thông tin với nhau thường xuyên. Sự quan hệ giữa các tổ chức được mô tả như hình dưới đây:
Hình trên mô tả mối quan hệ giữa các tổ chức liên quan đến quá trình thiết lập chuẩn
e-Learning
Con đường chuẩn hoá
Thường thì sẽ mất một khoảng thời gian dài để các chuẩn được chứng nhận bởi ISO. Các chuẩn được chứng nhận bởi ISO được chấp nhận trên toàn thế giới. Đôi khi một chuẩn phải mất 10 năm để được ISO chứng nhận. Một vài tổ chức như ADL hoặc AICC có những cách giải quyết rất thực tế. Chẳng hạn, ADL thường tổ chức các hội nghị được gọi là Plugfest và trong các hội nghị này tất cả các nội dung, LMS, và LCMS tuân theo SCORM được đem ra để gắn kết với nhau để thử xem có phải các nội dung học tập có thể sử dụng được trong nhiều hệ thống quản lý (LMS/LCMS) khác nhau như SCORM quy định.
Quá trình để một chuẩn được ISO công nhận
3. Các chuẩn e-Learning hiện có
Tổng quan
Trước tiên, chúng ta xem các loại chuẩn chính và chúng hỗ trợ tính khả chuyển như thế nào trong một hệ thống học tập. Chúng ta nhìn nhận trên quan điểm của hai phía, phía học viên và phía kia là người sản xuất cua học.
Các loại chuẩn chính
Người sản xuất cua học tạo ra các module đơn lẻ hay các đối tượng học tập sau đó sẽ tích hợp lại thành một cua thống nhất.
Các chuẩn cho phép ghép các cua tạo bởi các công cụ khác nhau bởi các nhà sản xuất khác nhau thành các gói nội dung (packages) được gọi là các chuẩn đóng gói (packaging standards). Các chuẩn này cho phép hệ thống quản lý nhập và sử dụng được các các cua học khác nhau.
Nhóm chuẩn thứ hai cho phép các hệ thống quản lý đào tạo hiển thị từng bài học đơn lẻ. Hơn nữa, có thể theo dõi được kết quả kiểm tra của học viên, quá trình học tập của học viên. Những chuẩn như thế được gọi là chuẩn trao đổi thông tin (communication standards), chúng quy định đối tượng học tập và hệ thống quản lý trao đổi thông tin với nhau như thế nào.
Nhóm chuẩn thứ ba quy định cách mà các nhà sản xuất nội dung có thể mô tả các cua học và các module của mình để các hệ thống quản lý có thể tìm kiếm và phân loại được khi cần thiết. Chúng được gọi là các chuẩn metadata (metadata standards).
Nhóm chuẩn thứ tư nói đến chất lượng của các module và các cua học. Chúng được gọi là chuẩn chất lượng (quality standards), kiểm soát toàn bộ quá trình thiết kế cua học cũng như khả năng hỗ trợ của cua học với những người tàn tật.
Các loại chuẩn trên cùng nhau đóng góp tạo ra các giải pháp e-Learning có chi phí thấp, hiệu quả, và mang lại sự thoải mái cho mọi người tham gia e-Learning.
4. Tại sao chuẩn quan trọng
- Thứ nhất, vì thị trường e-Learning chưa ổn định. Vào thời điểm hiện tại tình hình phát triển của e-Learning trên thế giới chưa ổn định. Rất nhiều yếu tố ảnh hưởng đến chất lượng của các sản phẩm e-Learning. Khi vào website của các công ty bạn thường thấy biểu ngữ "chúng tôi cung cấp các giải pháp e-Learning tốt nhất". Điều ngạc nhiên là ngay cả các công ty "tốt nhất" như vậy cũng phá sản. Vậy làm sao chúng ta đảm bảo tính an toàn của các quyết định đầu tư, chắc chắn rằng lựa chọn khi mua một LMS/LCMS hoặc nội dung đắt tiền sẽ không bị lãng phí khi người bán phá sản. Bằng chứng rõ ràng là trong nhiều năm qua nhiều nhà bán các sản phẩm e-Learning nổi tiếng đã ngừng hoạt động. Do đó chúng ta phải tìm kiếm một giải pháp cho vấn đề này, đó là chuẩn e-Learning.
- Thứ 2, đó là cách để giữ vị trí của bạn.Nếu bạn chịu trách nhiệm về:
Mua các nội dung e-Learning.
Phát triển nội dung e-Learning.
Chọn lựa hay mua một LMS/LCMS.
Chọn lựa công cụ soạn bài điện tử cho đội phát triển nội dung.
Phát triển LMS/LCMS.
thì chuẩn e-Learning rất quan trọng với bạn. Mặc dù nó chưa ổn định và định hình rõ ràng vào thời điểm này nhưng nó là những gì bạn có thể trông cậy vào. Bạn phải ý thức về các chuẩn và nội dung bạn phát triển hay mua phải tuân theo các chuẩn quan trọng nhất. Ngay cả một LMS/LCMS cũng phải tuân theo. Nếu bạn thực hiện được chuyện đó, bạn có thể thay đổi môi trường quản lý (LMS/LCMS) mà vẫn sử dụng được nội dung đã có. Nếu bạn là một người bán các sản phẩm e-Learning thì bạn cũng phải biết tầm quan trọng của chuẩn vì khách hàng của bạn muốn các sản phẩm tuân theo chuẩn.
Tại sao chuẩn thật sự quan trọng? Phần này đi vào giải thích chi tiết hơn các lí do phải có chuẩn. Em đưa ra các lí do sau dựa vào phát biểu của Wayne Hodgins tại TechLearn:
Tính truy cập được (Accessibility): nếu chúng ta sử dụng các hệ thống và nội dung tuân theo chuẩn thì rất dễ sử dụng nội dung ở mọi nơi bằng cách sử dụng trình duyệt (browser). Ngay cả các chuẩn không liên quan đến e-Learning như HTTP cũng giúp cho việc truy cập thông tin dễ dàng hơn nhiều.
Tính khả chuyển (Interoperability): không những chúng ta có khả năng truy cập nội dung từ mọi nơi mà thậm chí không phụ thuộc vào các công cụ chúng ta dùng tại nơi đó. Do đó, chúng ta có thể sử dụng các LMS khác nhau để truy cập vào cùng nội dung. Và ngược lại, với một LMS có thể sử dụng nhiều nội dung tạo bởi các công cụ khác nhau.
Tính thích ứng (Adaptability): các chuẩn cũng giúp việc đưa ra các nội dung học tập phù hợp với từng cá nhân. Một ví dụ là meta-data. Nếu chúng ta sử dụng meta-data giống nhau để mô tả nội dung thì có thể xác định chính xác những gì một học viên cần. Một LMS/LCMS hiểu meta-data sẽ có khả năng hiểu và sử dụng các thông tin có trong meta-data, từ đó phân phối nội dung phù hợp với yêu cầu của từng học viên.
Khả năng sử dụng lại (Re-usability): chỉ với việc sử dụng chuẩn chúng ta mới có thể sử dụng lại nội dung chúng ta phát triển hoặc mua.
Tính bền vững (Durability): bạn vẫn sử dụng được nội dung ngay cả khi công nghệ thay đổi. Hơn nữa, với nội dung tuân theo chuẩn bạn không phải thiết kế lại hoặc làm lại.
Tính giảm chi phí (Affordability): với các lí do ở trên rõ ràng là nếu người bán nội dung và hệ thống quản lý tuân theo chuẩn, hiệu quả học tập sẽ tăng rõ rệt, thời gian và chi phí sẽ giảm. Do đó ROI (Return On Investment) sẽ tốt hơn nhiều.
5. Tìm hiểu về chuẩn SCORM 2004
5.1 Mở đầu
Phần trên chúng ta đã hiểu SCORM là gì. Trong phần này tìm hiểu chi tiết hơn về SCORM 2004 thông qua các chi tiết kĩ thuật cụ thể. Đầu tiên chúng ta sẽ xem SCORM 2004 có khác biệt gì so với các thành phần trước, bao gồm các thành phần chính nào. Một trong các file quan trọng của SCORM là imsmanifest.xml. Nó mô tả các thành phần chính của SCORM 2004 dựa trên XML. Do đó, chúng ta sẽ tìm hiểu XML để có thể hiểu được các chi tiết kĩ thuật cụ thể của từng phần. Tiếp theo, chúng ta đi chi tiết vào từng phần của SCORM 2004. Với hơn 800 trang mô tả SCORM 2004, trong phạm vi đồ án em không có hy vọng trình bày lại toàn bộ mà chỉ đưa ra các điểm chính.
5.2 Tổng quan
Hình trên mô tả quá trình phát triển của chuẩn SCORM
Như trên ta đã đề cập phiên bản mới SCORM 2004, công bố vào 30/1/2004. Trong phiên bản này, tiếp tục chỉnh sửa và bổ sung thêm các phần CAM, RTE. SCORM tiếp tục xây dựng dựa trên các đặc tả của nhiều tổ chức khác nhau để xây dựng lên một mô hình đảm bảo tính khả chuyển, tính truy cập và sử dụng lại của nội dung học tập dựa trên web.
SCORM 2004 có khá nhiều thay đổi so với các phiên bản trước. Dưới đây, ta liệt kê các đặc tả chính và chuẩn chính được dùng trong SCORM 2004:
IEEE Data Model For Content Object Communication.
IEEE ECMAScript Application Programming Interface for Content to Runtime Services Communication.
IEEE Learning Object Metadata (LOM).
IEEE Extensible Markup Language (XML) Schema Binding for Learning Object Metadata Data Model.
IMS Content Packing.
IMS Simple Sequencing.
5.3 Điểm qua các thành phần chính trong SCORM 2004
Trong phiên bản này, các thành phần chính của SCORM được chia thành các cuốn sách riêng biệt. Mỗi một đặc tả mới đưa vào sẽ coi như là một cuốn sách mới được đưa vào thư viện của SCORM. Ngoài cuốn sách đầu tiên giới thiệu tổng quan về SCORM, các cuốn sách còn lại đều là các mô tả kĩ thuật. Chúng bao gồm: “Content Aggregation Model (CAM)”, “Run-time Environment (RTE)”, và “Sequencing and Navigation (SN)”.
Trong mỗi cuốn sách bao gồm các đặc tả kĩ thuật của các tổ chức khác nhau như IMS, AICC, ARIADNE, và IEEE LTSC. Hình vẽ dưới đây chỉ ra mỗi cuốn sách bao gồm các đặc tả nào.
Hình này mô tả cuốn sách CAM bao gồm Meta-data (IEEE LOM 1484.12), Content Structure (AICC), Content Packaging (IMS), và Sequecing Information (IMS). Cuốn sách RTE bao gồm IEEE API 1484.11.2 và IEEE Data Model 1484.11.1. Cuốn sách Sequencing & Navigation (IMS Simple Sequencing 1.0).Nội dung từng cuốn sách sẽ được điểm qua ngay dưới đây.
Cuốn sách CAM mô tả việc đóng gói các nội dung học tập như thế nào để có thể trao đổi thông tin được trong nhiều hệ thống khác nhau, mô tả các chúng như thế nào để có thể phát hiện, tìm kiếm, và cuối cùng định nghĩa các luật xác định thứ tự nội dung học tập. Nó cũng định nghĩa các trách nhiệm và các yêu cầu trong việc xây dựng tổng hợp nội dung.
Cuốn sách RTE mô tả các yêu cầu đối với hệ thống quản lý đào tạo (Learning Management System - LMS) trong việc quản lý môi trường hoạt động (chẳng hạn như quá trình tìm kiếm và hiển thị nội dung, việc giao tiếp giữa LMS và các thành phần mô hình dữ liệu chuẩn về các thông tin của học viên).
Cuốn sách SN mô tả nội dung tuân theo SCORM được định thứ tự như thế nào thông qua các sự kiện duyệt kích hoạt từ phía học viên hay phía hệ thống. Việc rẽ nhánh của nội dung được mô tả bởi một tập các đơn vị giảng dạy được xác định trước, thường là vào lúc thiết kế theo chủ định của người phát triển nội dung.
5.4 Tìm hiểu XML
Trong phần này chúng ta chỉ trình bày các vấn đề sau:
XML là gì?
Tại sao XML lại quan trọng đối với web?
Các thành phần có thể có trong một file XML.
Các yêu cầu đặt ra về tính đúng đắn về mặt cấu trúc (well-formedness) và cú pháp (validation).
Mục đích chính là để người đọc có kiến thức cơ bản ban đầu về XML để có thể hiểu được các mô tả kĩ thuật của các cuốn sách CAM, RTE, và S&N.
5.4.1 Các hạn chế của HTML
Lúc thiết kế HTML, các nhà phát triển chỉ dự kiến dùng nó như là ngôn ngữ phục vụ cho việc trình bày thông tin như là các trang web. Chính vì lí do trên, HTML có những hạn chế khi dùng để trao đổi thông tin:
HTML chứa một tập các tag đánh dấu (markup) cố định không thể mở rộng khi có yêu cầu.
Các tag không có liên quan về mặt ý nghĩa với dữ liệu trong tag.
Yêu cầu về cú pháp các tag không chặt nên rất khó cho việc phân tích, xử lý dữ liệu.
Chúng ta cần một ngôn ngữ khác phục vụ tốt hơn cho việc trao đổi dữ liệu bao gồm các công việc như tạo, phân tích, và xử lý dữ liệu. Do đó XML (Extensible Markup Language) đã ra đời. Qua nhiều năm ứng dụng, XML chứng tỏ thật sự sức mạnh của nó trong việc trao đổi dữ liệu trong môi trường web. Rất nhiều công nghệ mới, mạnh hiện nay đều dựa trên XML. Đối với SCORM, các mô tả kĩ thuật chủ yếu dựa trên XML. Điều này cũng dễ hiểu vì để đảm bảo nội dung được hiểu nhất quán như nhau trong các môi trường khác nhau, cũng như khả năng sử dụng lại thì việc dùng XML để mô tả nội dung là hoàn toàn hợp lý.
5.4.2 XML là gì?
XML có thể coi là một ngôn ngữ (hoặc siêu ngôn ngữ) khắc phục những hạn chế của HTML trong việc trao đổi dữ liệu. XML là sự tổng hợp của 3 công nghệ: đánh dấu văn bản, trao đổi dữ liệu, và WWW. XML là một siêu ngôn ngữ không phải là ngôn ngữ cụ thể.
Nó xác định các luật đánh dấu văn bản như thế nào. Nó không định nghĩa các tag dùng trong đánh dấu văn bản.
Nó cung cấp khả năng để quy định một Document Type Definition (DTD) để rằng buộc việc đánh dấu cho phép trong một lớp tài liệu mà thôi.
Nó hỗ trợ Unicode hoàn toàn, tức là hỗ trợ tất cả các ngôn ngữ trên thế giới.
XML có nhiều luật khác nhau mà một một file XML phải tuân theo. Dưới đây, chúng ta minh họa 3 luật quan trọng nhất.
Luật 1: Thông tin được biểu diễn thông qua các đơn vị gọi các tài liệu XML.
Luật 2: Một tài liệu XML chứa một hay nhiều hơn các thành phần.
Luật 3: Một thành phần có tên, nó được xác định trong tài liệu thông qua việc đánh dấu tường minh, nó có thể chứa các thành phần khác và có các thuộc tính đi kèm.
5.4.3 Ví dụ
1:
2:
3:
4:
5:
6: Nguyễn Thanh Thuỷ
7: Lập trình hướng đối tượng C++
8: 1/1/2000
9:
10:
11:
12: Nguyễn Kim Anh
13: Cơ sở dữ liệu II
14: 1/1/2002
15:
16:
Như ta nhìn thấy, các tag hoàn toàn do người dùng tự định ra, khác biệt so với HTML là phải dùng các tag định nghĩa trước. Hơn nữa các tag tuân theo yêu cầu chặt chẽ là có tag mở thì phải có tag đóng. Trong các tag có thể có các thuộc tính đi kèm.
5.4.4 DTD
DTD thực chất là một phần của đặc tả XML, hơn là một thực thể riêng lẻ. Mặt khác, nó là tùy chọn vì bạn có thể viết một tài liệu mà không cần có nó. Mục đích chính của nó là mô tả một lớp các tài liệu XML (tương tự như ngữ pháp cho các ngôn ngữ khác), và do đó áp đặt các ràng buộc tới cấu trúc của các tài liệu XML. Một tài liệu được coi là đúng đắn nếu nó tuân theo một DTD có trước. Dưới đây ta xét một ví dụ cụ thể.
Ví dụ:
1:
2:
3:
4:
5:
6:
Dòng 1 chỉ ra rằng phần tử gốc là BookStore. Trong phần tử BookStore có thể không chứa hoặc chứa nhiều phần tử Book. Dòng 2 chỉ ra nếu phần tử Book được đưa vào trong văn bản XML thì phần tử này có thể bao gồm các phần tử cấp nhỏ hơn ở trong nó:
Title: xuất hiện 1 và chỉ 1 lần.
Author: Xuất hiện một lần hoặc nhiều lần.
Date: Xuất hiện 1 và chỉ 1 lần.
Dòng 3 nói rằng phần tử Book bắt buộc phải có thuộc tính ID (thông qua dấu hiệu là #REQUIRED). Dòng 4 nói rằng phần tử Title chứa dữ liệu kiểu kí tự. Tương tự với các dòng 5 và 6.
Tuy nhiên, DTD cũng bộc lộ những hạn chế của nó.
Không mô tả bằng ngôn ngữ XML: Chúng ta viết tài liệu XML sử dụng một cú pháp và viết DTD bằng một cú pháp khác. Chính điều này gây khó khăn cho các chương trình phân tích.
Hạn chế về kiểu dữ liệu cơ bản: thường để đảm bảo có thể lấy được các dữ liệu từ cơ sở dữ liệu thường yêu cầu XML phải cung cấp đầy đủ các kiểu dữ liệu cơ bản trong cơ sở dữ liệu.Một trong các điểm yếu của DTD đó là chỉ hỗ trợ kiểu dữ liệu chuỗi kí tự (PCDATA).
Các điều kiện rằng buộc trong DTD cũng không mạnh: Chỉ hỗ trợ những kiểu rằng buộc như “+” ( 1 hoặc nhiều hơn), “?” (0 hoặc 1), “*” (0 hoặc nhiều hơn). Không cung cấp khả năng tạo các ràng buộc tìm thấy trong cơ sở dữ liệu (liệt kê, miền, chiều dài chuỗi).
Và XML Shema đã ra đời thay thế cho DTD. Một điểm cũng cần lưu ý rằng đa số các đặc tả của SCORM đều dùng XML Shema. Chúng ta giải thích XML Schema là gì ngay ở phần dưới đây.
5.4.5 XML Schema
Phần này nhằm giới thiệu XML Shema là gì và có kèm theo một ví dụ giải thích. XML Shema đã khắc phục được các hạn chế của DTD. Thứ nhất, các kiểu dữ liệu của nó nhiều hơn hẳn. Nó hỗ trợ nhiều kiểu dữ liệu cơ bản tìm thấy trong cơ sở dữ liệu như string, boolean, decimal, integer, date. Ngoài ra, cũng có thể tạo kiểu dữ liệu riêng nếu muốn (complexType). Thứ hai, nó được viết theo đúng cú pháp của một tài liệu XML. Thứ ba, nó hỗ trợ kiểu viết theo kiểu hướng đối tượng. Chúng ta có thể đưa ra các định nghĩa kiểu mới dựa trên các kiểu cũ. Cuối cùng, điều kiện ràng buộc dữ liệu mạnh hơn như maxlength, precision, enumeration, maxInclusive (cận trên), minInclusive (cận dưới).
Ví dụ 1 :
1:
2: <xsd:schema xmlns:xsd=""
3: targetNamespace=""
4: xmlns="">
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17 :
18 :
19 :
20:
21:
22:
23:
24:
Dòng đầu tiên không có gì đáng chú ý, đó chỉ là giới thiệu về version của xml (prolog). Dòng 2 đáng chú ý có phần tử schema như là phần tử gốc của các XML Schema ( ). Tiếp theo đó là xmlns:xsd = Đó là các thành phần và kiểu dữ liệu được sử dụng để xây dựng schema như: schema, element, complexType, sequence, string quy định từ Dòng 3 là targetNamespace = quy định các thành phần định nghĩa bởi schema này như BookStore, Book, Title, Author, Date. Dòng 4 là xmlns = tức là tên namespace mặc định là trùng với targetNamespace. Dòng 5 khai báo phần tử BookStore. Thẻ đóng tương ứng với nó là dòng 11. Dòng 6 khai báo kiểu của nó. Ở đây, chúng ta không quy định nó là kiểu cụ thể nào nên chỉ để nó là . Thẻ đóng của nó nằm ở dòng 10. Dòng 7 chỉ ra rằng có các phần tử khác nằm trong phần tử BookStore. Thẻ đóng tương ứng với nó nằm ở dòng 9. Dòng 8 chỉ ra BookStore chứa phần tử con là Book... Tất cả các phần tử đều không có phần tử con trong nó. Tức chúng là các phần tử cơ bản và chúng có các kiểu cơ bản đều là kiểu chuỗi (string). Ta liệt kê các kiểu dữ liệu cơ bản thông qua bảng dưới đây:
Kiểu dữ liệu cơ bản
Ví dụ
string
“Hello world”
boolean
(true/false,0/1)
decimal
“7.08”
float
“12.56E3, 12, 12560, 0, -0, INF, -INF, NAN”
double
“12.56E3, 12, 12560, 0, -0, INF, -INF, NAN”
duration
“P1Y2M3DT10H30M12.3S”
dateTime
Định dạng: CCYY-MM-DDThh:mm:ss
time
Định dạng: hh:mm:ss.sss
date
Định dạng: CCYY-MM-DD
gYearMonth
Định dạng: CCYY-MM
gYear
Định dạng: CCYY
gMonthDay
Định dạng: --MM-DD
gDay
Định dạng: ---DD
gMonth
Định dạng: --MM--
hexBinary
Một chuỗi kí tự dạng hex
base64Binary
Một chuỗi kí tự dạng base 64
anyURI
QName
Tên của Namespace
Ngoài ra chúng ta cũng có thể định nghĩa kiểu dữ liệu của riêng mình từ các kiểu dữ liệu cơ bản được cung cấp. Hãy xem ví dụ sau:
Ví dụ 2 :
1:
2: <xsd:schema xmlns:xsd=""
3: targetNamespace=""
4: xmlns=""
5: elementFormDefault="qualified">
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
Ta thấy ví dụ 2 này hoàn toàn giống ví dụ 1 trước đó về nội dung schema. Điểm khác duy nhất là ví dụ 2 có đưa thêm vào một kiểu cụ thể cho phần tử Book, đó là kiểu BookPublication (dòng 9). Từ dòng 13 đến dòng 19 là định nghĩa tường minh kiểu BookPublication dựa trên các kiểu cơ bản. Vậy một tài liệu XML muốn sử sụng XML Schema thì sử dụng như thế nào? Thông qua ví dụ 3, chúng ta sẽ đưa ra câu trả lời cho câu hỏi này.
Ví dụ 3 :
<BookStore xmlns =""
xmlns:xsi=""
xsi:schemaLocation="
BookStore.xsd">
Lập trình hướng đối tượng
Nguyễn Thanh Thuỷ
4/4/2002
Chúng ta sẽ để ý đến các dòng chữ đậm trong ví dụ 3. Dòng đậm đầu tiên chỉ ra rằng các thành phần dùng trong file XML này có xuất xứ từ namespace Ta xét dòng 3 và 4 trước sau đó quay lại với dòng 2. schemaLocation chỉ ra rằng namespace được định nghĩa trong file BookStore.xsd. Tức là schemaLocation bao giờ cũng chứa một cặp giá trị. Dòng 2 nói rằng thuộc tính schemaLocation chúng ta đang sử dụng được quy định trong namespace của XMLSchema Instance. Các dòng từ 6 đến 10 tuân thủ đúng các luật định nghĩa trong XML-Schema. Cụ thể là bao gồm một phần tử Book. Trong phần tử Book chứa các phần tử con Title, Auth
Các file đính kèm theo tài liệu này:
- DAN066.doc