Luận văn được trình bay gom ba chương: Chương 1: “Tổng quan về XML và cơ sở đữ liệu quan hệ” — Trình bày tổng quan về cấu trúc một tài liệu XML, định nghĩa kiểu tư liệu DTD, lược đồ, mô
Trang 1MAI VĂN LINH
XÂY DỰNG HỆ THÓNG ĐĂNG KÝ HỌC TÍN CHÍ
DỰA VÀO TÍCH HỢP CƠ SỞ DỮ LIỆU QUAN HỆ VÀ XML
Chuyên ngành: Khoa học Máy tính
Mã số chuyên ngành: 60.48.01.01
TÓM TẮT LUẬN VĂN THẠC SĨ
HÀ NỌI- 2015
Trang 2Luận văn được hoàn thành tại:
Người hướng dẫn khoa học: PGS.TS Đoàn Văn Ban
018000 11117 .
i80 :022017=
Luận văn sẽ được bảo vệ trước Hội đông châm luận văn thạc sĩ tại
Học viện Công nghệ Bưu chính Viễn thông
Vào lúc: giờ
Có thê tìm hiệu luận văn tại:
- Thư viện của Học viện Công nghệ Bưu chính Viễn thông
Trang 31 Lý do chọn dé tài
- XML (eXtensible Markup Language) là ngôn ngữ đánh
dau có khả năng mô tả nhiều loại dữ liệu khác nhau XML không bi
giới hạn và định nghĩa sẵn như HTML; XML cho phép người dùng
tự định nghĩa ra các thành phần riêng và mở rộng tuỳ ý
- _ Nhận thấy tính thiết thực của van đề này và được sự gợi ý
của giảng viên hướng dẫn, em đã chọn đề tài “Xây dựng hệ thống
đăng ký học tín chỉ dựa vào tích hợp cơ sở dữ liệu quan hệ vàXML” làm đề tài cho luận văn tốt nghiệp của mình
2 Tổng quan về van đề nghiên cứu
- - Ngày nay, khối lượng dit liệu phát triển theo cấp số nhântrong tất cả các lĩnh vực từ các dữ liệu cá nhân cho các dữ liệu doanh
nghiệp va dữ liệu toản cầu Vì vậy, việc hiểu toàn bộ dữ liệu và cautrúc tô chức chúng đang trở nên rất quan trong [14]
3 Mục đích nghiên cứu
Luận văn tập trung tìm hêu về XML và mô hình DOM,phương pháp sử dụng mô hình DOM để chuyển một cơ sở dir liệu
quan hệ sang tài liệu XML và ngược lại.
4 Doi tượng và phạm vi nghiên cứu
Đề tài tập trung tìm hiểu một số vấn đề sau:
- Tim hiểu về công nghệ XML
- Tim hiểu về cơ sở đữ liệu quan hệ
- Cách chuyên đổi một tài liệu XML sang một co sở dữ
liệu.
Trang 4- Cách chuyền một cơ sở dữ liệu quan hệ sang một tài liệu
XML.
5 Phuong pháp nghiên cứu
- Phương pháp thu thập dữ liệu, lựa chọn nội dung phù hợp
từ tài liệu tham khảo và bài báo khoa học.
- Phương pháp phân tích, xác định trong tâm và xây dựng
cơ sở lý luận về vấn đề nghiên cứu, trên cơ sở đó thực nghiệm giải
quyết van dé
- Khai thác ngôn ngữ lập trình C# dé viết chương trình
Demo.
Luận văn được trình bay gom ba chương:
Chương 1: “Tổng quan về XML và cơ sở đữ liệu quan hệ” —
Trình bày tổng quan về cấu trúc một tài liệu XML, định nghĩa kiểu
tư liệu DTD, lược đồ, mô hình đối tượng tài liệu DOM, phân tích tàiliệu XML theo mô hình DOM và các khái niệm cơ sở về cơ sở dit
liệu (CSDL) quan hệ.
Chương 2: “Tích hợp các hệ thống cơ sở dữ liệu và XML” —
Giới thiệu phương pháp luận chuyển một tài liệu XML sang một
CSDL quan hệ và ngược lại Đưa ra thuật toán tích hợp các hệ thống
cơ sở dữ liệu quan hệ và XML.
Chương 3: “Cài đặt thử nghiệm” — Trình bày việc cài đặt
thuật toán bằng ngôn ngữ lập trình C# trong môi trường ASP.NET,
trên cơ sở xây dựng ứng dụng trang web “Đăng ký học tín chỉ” của trường Đại học Lâm nghiệp Việt Nam
Trang 5Kết luận — Tóm tắt các nội dung chính, các kết quả đạt được
và hướng nghiên cứu tiép theo của luận văn.
Trang 6CHUONG 1 - GIỚI THIỆU VE XML VÀ CƠ SỞ DU LIEU
QUAN HỆ
1.1 Tong quan về XML
l1.II Giới thiệu công nghệ XML
XML (viết tắt từ tiếng Anh eXtensible Markup Language,
"Ngôn ngữ Đánh dấu Mở rộng") [1] là ngôn ngữ đánh dấu với mụcđích chung do W3C đề nghị, để tạo ra các ngôn ngữ đánh dấu khác
1.12 Cau trúc của tài liệu XML
1.1.2.1 Tài liệu XML
Một tài liệu XML well-formed chưa chắc là một tài liệu hợp
lệ Một tài liệu XML được xem là hợp lệ nếu nó đảm bảo những quytắc đặc tả trong tài liệu Document Type Definition (DTD) hay giản
dé (schema)
1.1.2.2 Cấu trúc của tài liệu XML
Mô tả câu trúc tài liêu
Phần nội dung
Hình 1.1 Cấu trúc tài liệu XML
113 Các thành phan cơ bản trong tài liệu XML
1.14 Cấu trúc tài liệu XML hợp khuôn dạng
1.15 Dinh nghĩa kiểu tư liệu DTD (Document Type Definition)
Trang 7Định nghĩa kiểu tư liệu DTD cần theo cú pháp quy định của
tổ chức XML W3C Sử dung thẻ khai báo <!DOCTYPE> dé bắt đầu
định nghĩa cho các phần tử XML Mẫu khai báo như sau:
<!DOCTYPE rootname [DTD]>
Trong đó: DTD là định nghĩa cho các phan tử trong tài liệu
Mỗi phần tử được định nghĩa theo cú pháp:
<!ELEMENT NAME CONTENT_ MODEL>
1.1.6 Lược đồ XML (XML schema)
XML Schema là một tài liệu XML được viết duéi dạng thức
thuần văn bản với phần mở rộng xsd Tài liệu này mở đầu bằng khai
báo chuẩn XML, tiếp theo dùng tiếp đầu ngữ xsd:
1.17 Bảng định kiểu CSS (Cascading Style Sheet)
CSS là mô hình định nghĩa kiểu định dạng dùng cho việchién thị tài liệu Ta có thé dung CSS dé hiển thi tài liệu XML tương
tự các trang HTML CSS cho phép tách rời định dạng với nội dung
dir liệu.
118 Mô hình DOM (Document Object Model)
Để xử lý tài liệu XML, W3C định nghĩa tài liệu theo môhình hướng đối tượng DOM (Document Object Model) [3], [5] Theo
mô hình này tai liệu XML được tổ chức theo cau trúc hình cây bao
gồm các nút đối tượng, nội dung của mỗi nút (note), trên cây có thé
chứa phần tử (element), dữ liệu (text), thuộc tính (attribute), va
các nút con khác.
Trang 81.1.9 Phân tích tài liệu XML theo mô hình DOM
W3C định nghĩa tài liệu theo mô hình DOM Về cơ bản
DOM là giao diện trình ứng dụng API (Application Progam
Interface) không phụ thuộc vào ngôn ngữ và chương trình, cho phép
các chương trình và các kịch bản truy cập và cập nhật tự động nộidung, cau trúc và kiểu của các tài liệu XML cũng như HTML
1.2 Cơ sở dữ liệu quan hệ
12.1 Cấu trúc cơ sở dữ liệu quan hệ
Một cơ sở dữ liệu quan hệ là một tập của một hoặc nhiều
quan hệ, trong đó mỗi quan hệ là một bảng hai chiều bao gồm các cột
và các hàng (gọi là bảng dữ liệu hay quan hệ) Bảng dữ liệu chính là
hình thức thé hiện cụ thé của kiểu thực thé khi chúng ta xây dựng cơ
sở dt liệu, bang dữ liệu được sử dụng dé lưu đữ liệu về các thực thé
trong lớp thực thé đó [6]
1.3 Rang buộc toàn vẹn trên một cơ sở dữ liệu quan hệ
13.1 Dinh nghĩa
Ràng buộc toàn vẹn là một điều kiện bất biến không được vi
phạm trong một cơ sở dữ liệu.
13.2 Cac yếu tổ của ràng buộc toàn ven
Ràng buộc toàn vẹn dữ liệu được biểu diễn thông qua các
phụ thuộc hàm và cụ thể là dựa trên ràng buộc khóa
13.3 Chuẩn hóa một cơ sở dữ liệu quan hệ
Chuẩn hóa một cơ sở dữ liệu quan hệ là rất cần thiết trongthực tê vì nhờ bước chuân hóa này mà chúng ta có thê loại bỏ tôi đa
Trang 9sự dư thừa dé liệu — một trong những nguyên nhân dẫn đến sựkhông toàn vẹn di liệu [6].
Chuẩn hóa một CSDL có nghĩa là chúng ta sẽ đưa các lược
đồ quan hệ về một trong các dạng chuẩn: INF, 2NF, 3NF, BCNE
14 Kết luận
Chương | đã trình bày những kiến thức cơ bản về cau trúcmột tài liệu XML cũng như các kiến thức giúp chúng ta nhận biếtđược thé nao là một tài liệu XML hợp lệ, hợp khuôn dạng, mô hình
DOM và cách phân tích tài liệu XML theo mô hình DOM cùng các
trình phân ngữ trong XML như: kiểu tư liệu DTD, lược đồ XML,không gian tên, bảng định kiểu CSS Ngoài những kiến thức cơ bản
về XML, trong chương | cũng trình bày những kiến thức cơ bản về
cơ sở dir liệu quan hệ, các khái niệm, cau trúc, các ràng buộc toanvẹn trên CSDL quan hệ.
Trang 10CHƯƠNG 2 - TÍCH HỢP CƠ SỞ DỮ LIỆU QUAN HỆ VÀ
XML
Các hệ thong cơ sở dữ liệu quan hệ ngày càng đóng góp vai
trò quan trọng trong các hoạt động của các tổ chức, doanh nghiệp
hay cá nhân Các hệ thống cơ sở đữ liệu quan hệ có thể được sửdung với những ứng dụng được cai đặt riêng lẻ trong máy tinh ca
nhân hay có thể là một cơ sở đữ liệu tập trung trên mạng LAN hoặc
một cơ sở dit liệu phán tan trên mạng điện rộng và được sử dung bởirất nhiều doi tượng khác nhau
2.1 Phương pháp luận
Tích hợp các hệ thống cơ sở đữ liệu quan hệ và XML nghiêncứu về cách chuyên đổi một tài liệu cơ sở dữ liệu quan hệ thành mộttài liệu XML và ngược lại, chuyển một tài liệu XML về một cơ sở dữliệu quan hệ Dé giải quyết van dé này chúng ta phải tìm hiểu các van
dé sau:
2.1.1 Đối sánh nội dung của một CSDL quan hệ và một tài liệu
XML
Mối quan hệ giữa nội dung một cơ sở dữ liệu quan hệ và một
tài liệu XML được thể hiện qua các mức so sánh về: mô hình đữ liệu,lược đồ và các mức Tại mức mô hình dit liệu, nội dung dé liệu và
nội dung quan hệ có sự khác nhau đáng ké do những mục đích khác
nhau của CSDL quan hệ va XML.
Trang 112.1.2 Cau trúc và kiểu cơ chế của một tài liệu XML và một lược
đô CSDL quan hệ
Những cơ chế cơ bản được sử dụng dé định rõ cấu trúc của
những tài liệu XML và lược đồ quan hệ là những kiểu phần tử vànhững thuộc tính đối với XML giống như những quan hệ và những
thuộc tính đối với CSDL quan hệ Về kiểu phan tư, nó hữu dung choviệc mô tả hai mảng phạm trù: Đầu tiên, nó mô tả kiểu phần tử có
bao gồm một miền nguyên tử hay không Thứ hai, biểu thị kiểu phần
tử có một miền hợp hay không Những kết quả này phân biệt trong
bốn loại kiểu phần tử khác nhau
2.1.3 Tên duy nhất
2.1.4 Các giá trị rỗng và các gid trị mặc định
2.1.5 Quan hệ
2.1.6 Thứ tự
2.2 Chuyển một tài liệu XML sang một cơ sở dữ liệu quan hệ
Dé chuyển một tài liệu XML sang một CSDL quan hệ trên
cơ sở thỏa mãn một số ràng buộc nhất định, chúng ta sử dụng mô
hình đối tượng tài liệu DOM Thông qua các phương thức xử lý các
đối tượng (node) trong tài liệu XML mà mô hình cung cấp, ta truy
nhập đến từng node trong tài liệu cũng như nội dung và thuộc tínhcủa các node.
2.3 Chuyển một CSDL quan hệ thành một tài liệu XML
Chuyên một CSDL quan hệ sang một tài liệu XML thì chúng
ta phải xây dựng CSDL đó dựa theo cấu trúc của một tải liệu XML.Việc này hoàn toàn có thê làm được thông qua việc khử chuân hóa
Trang 12(phi chuẩn) bằng cách chuyền đổi các quan hệ đã được chuẩn hóa ở
mức cao hơn thành những dạng chuẩn hóa ở mức thấp hơn nhằm
tăng tốc độ truy nhập, lưu trữ trong CSDL Sau khi đã phi chuẩn cácCSDL, các CSDL được kết nối lại và được ánh xạ vào trong một
DOM chính sau đó được chuyên thành một tài liệu XML
2.3.1 Phi chuẩn các lược đồ quan hệ
Trên thực tế, các CSDL thường tồn tại đưới dang các CSDL
đã được chuẩn hóa nhằm giải quyết các dị thường trong lưu trữ, cập
nhật, bao trì CSDL Do vậy, dé CSDL đó phù hợp với cầu trúc của
một tài liệu XML thì CSDL đó phải được phi chuẩn hóa — chuyển
đổi các quan hệ đã được chuẩn hóa thành những quan hệ chuẩn hóa ở
mức thấp hon với những mục đích xử lý dữ liệu một cách hiệu quảnhất
2.3.2 Kết nối các CSDL đã phi chuẩn
Với các CSDL đã được tạo trong một hệ quan trị CSDL (cuthé như MS Access hay SQL Server) Sau khi tiến hành phi chuẩn
các CSDL này, ta thực hiện tạo kết nối tới các bảng CSDL đã tạo
đồng thời thiết lập các kết nối giữa các bảng CSDL đã tạo, đảm bảo
sao cho các ràng buộc dit liệu vẫn được bảo toàn khi kết nối Dé tao
kết nối tới các bảng CSDL quan hệ, ta sử dụng cầu nối ODBC trongWindows Với cầu nối này, các CSDL đã tạo sẽ được kết nối tới hệ
thống Khi đó, ta có thé truy xuất dit liệu của các tệp CSDL quan hệ
đã két nôi.
Trang 13Kêt hợp thành cây theo DOM
Hình 2.21 Các bước ánh xạ một CSDL quan hệ thành một tài
liệu XML
Trang 142.4 Thuật toán tích hợp hệ thống các cơ sở dữ liệu và tài liệu
XML
Căn cứ vào phương pháp luận tích hợp các hệ thống cơ sở dit
liệu quan hệ và XML, thuật toán tích hợp các hệ thống cơ sở đữ liệuquan hệ được xây dựng tông quát như sau:
trong C SDL
/
2.4.1 Đọc tài liệu XML dưới dang sơ dé hình cây
Thuật toán đọc tài liệu XML dưới dạng sơ đồ hình cây
Tài liệu XML được đọc thông qua hình thức đọc một file dữ liệu
và được xây dựng theo dạng mô hình DOM thông qua viỆc:
o_ Truy cập và lay phan tử gốc của tài liệu
o Lấy danh sách tat cả các phan tử con của phan tử gốc
o Mỗi phân tử con tìm được sẽ được gán một chỉ sô đặc trưng
Trang 15o Xây dựng và lưu trữ đường dẫn tương ứng tới mỗi phan tử
con trong tai liệuo_ Lấy tên các phần tử con và các giá trị thuộc tính của nóo_ Chuyên đổi thông tin về đường dẫn, nội dung của các phan tử
sang dạng chuỗi dé in ra màn hình dưới dạng một cây tài liệu
giống như trong Windows
2.4.2 Hiển thị tài liệu XML dưới dạng bảng
Thuật toán hiển thị tài liệu XML dưới dạng bảng
o Duyệt tất cả các nút của cây theo mô hình DOM bắt dau từ
nút gốc theo kỹ thuật đệ quy
o Xây dựng một hàm dé kiểm tra và xử ly nút của cây tài liệu
DOM Đối với mỗi nút hiện hành mà có nút con thì hàm đệquy tìm sâu xuống các nút bên dưới và hình thành một DOM
tương ứng cho nút.
o Với mô hình DOM thu được, thực hiện một ánh xạ các phần
tử, các thuộc tính với giá tri tương ứng thành các quan hệ,
thuộc tính va giá tri trong ứng của bang CSDL quan hệ.
2.4.3 Chuyển một CSDL quan hệ sang một tài liệu XML
Thuật toán chuyển một CSDL quan hệ sang một tài liệu XML
o Xây dựng lớp kết nối với JDBC - ODBC dé kết nối đữ liệu
được xây dựng trong môi trường Access hay SQL Server.
Trang 16o_ Tạo các kết nỗi trên các CSDL quan hệ cần chuyên đổi thành
tài liệu XML thông qua các truy vấn SQL
o Chuyên đổi dữ liệu đã kết nối sang tài liệu XML thông qua
các nguyên tắc ánh xạ đã trình bày
2.5 Cài đặt thuật toán
> Đọc tài liệu XML dưới dạng sơ đồ hình cây:
Một tài liệu XML được đọc vào chương trình được hiển thịdưới dạng một cau trúc hình cây
// Tao mot tai lieu XML theo mo hình DOM da co san du lieu XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(Server.MapPath("SinhVien.xml"));
// Khoi tao dieu khien Tree View
Tree View1.Nodes.Clear();
TreeView1.Nodes.Add(new TreeNode(xmlDoc.DocumentElement.Name));
TreeNode tNode = new TreeNode();
tNode = Tree View1.Nodes[0];
// Hien thi len TreeView theo mo hình DOM
Trang 17> Chuyển doi một tài liệu XML thành một CSDL quan hệ
Một tài liệu XML được tạo lập theo đúng cầu trúc yêu cầu sẽđược chuyển đôi và hién thị dưới dạng một bảng CSDL quan hệ
XmlDocument xmlDocument = new XmlDocument();
xmlDocument.Load (fileName);
XmlNodeList xmlNodeList = xmlDocument.GetElementsB yTagName(nodeName);
Table table = new Table();
foreach (XmINode xmlNode in xmlNodeList)
{
Trang 18TableRow tableRow = new TableRow();
TableCell tableCell = new TableCellQ;
> Chuyén một CSDL quan hệ thành một tài liệu XML
Đề chuyên một CSDL quan hệ được tạo lập từ môi trường
MS Access hay SQL Server thành một tài liệu XML ta thực hiện như
Trang 19MonHocInHocKy.ThoiKhoaBieu, MonHoc.GhiChu FROM
MonHocInNganh INNER JOIN MonHoc ON MonHocInNganh.MonHocID
= MonHoc.MonHocID INNER JOIN MonHocInHocKy ON
MonHoc.MonHocID = MonHocInHocKy.MonHocID INNER JOIN
DangKyHoc ON MonHoc.MonHocID = DangKyHoc.MonHocID";
DataSet dataSet = sqlServerProvider.GetDataSet();
dataSet.WriteXml(fileName);
}
catch (Exception )
{
Literal2.Text = "File khong tao dc";
void ShowXmlData(string fileName)
Trang 20}
2.6 Đánh giá kết quả
Kết quả mà thuật toán đạt được có tính thực tiễn cao, với khả
năng tích họp các hệ thống CSDL quan hệ vào tài liệu XML và
ngược lại, chuyên một tải liệu XML thành một CSDL quan hệ đượcxây dựng dựa trên việc kết nối CSDL cùng với một SỐ quy tắc ánh xạ
được xem là một phương pháp mach lạc, dé hiểu ma vẫn đảm bảo
tính toàn vẹn dữ liệu.
2.7 Kếtluận
Trong chương 2 đã trình bay những mối liên hệ về nội dungcủa một CSDL quan hệ với nội dung cua một tai liệu XML, đồngthời đã đưa ra phương pháp luận để chuyên một CSDL quan hệ thànhmột tải liệu XML và ngược lại Bằng việc sử dụng các câu lệnh truy
van XML và dựa trên các quy tắc ánh xa đơn giản, dé hiểu và chính
xác đã trình bày trong chương này, chúng ta đã có cơ sở để đưa racác cài đặt cụ thé cho thuật toán tích hợp sẽ được trình bày trong
chương tiếp theo
Thuật toán tích hợp các hệ thống CSDL và XML đã trìnhbày trong luận văn được thực hiện trên các CSDL quan hệ tạo lập
trong môi trường SQL Server được thực hiện cho kết quả tốt.