TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN
KHOA CÔNG NGHỆ THÔNG TIN
BỘ MÔN CÔNG NGHỆ PHẦN MỀM NGUYỄN THÀNH QUY – LÊ HOÀNG NGỌC QUỲNH TÌM HIỂU NGUỒN MỞ GREENSTONE
VÀ ỨNG DỤNG
BỘ MÔN CÔNG NGHỆ PHẦN MỀM
SINH VIÊN THỰC HIỆN
NGUYỄN THÀNH QUY 0112195
LÊ HOÀNG NGỌC QUỲNH 0112471
TÌM HIỂU NGUỒN MỞ GREENSTONE
VÀ ỨNG DỤNG KHOÁ LUẬN CỬ NHÂN TIN HỌC GIÁO VIÊN HƯỚNG DẪN
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
....................................................................................................................................... Thành phố Hồ Chí Minh, ngày
tháng 07 năm 2005
Giáo viên hướng dẫn
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
....................................................................................................................................... Thành phố Hồ Chí Minh, ngày
tháng 07 năm 2005
Giáo viên phản biện iii
LỜI CẢM ƠN
Chúng em xin chân thành cảm ơn Khoa Công nghệ Thông tin, Thư viện Cao
iv
MỞ ĐẦU
Sống trong kỷ nguyên của sự bùng nổ thông tin như hiện nay, một vấn đề
quan trọng đặt ra là làm sao quản lý thông tin hiệu quả, khoa học nhất, để có thể tìm
ra một vài thông tin hữu ích trong hàng ngàn, hàng triệu thông tin nhanh chóng,
chính xác.
Chúng ta đều biết, cách quản lý tài liệu truyền thống chủ yếu trên giấy có
những hạn chế nhất định, không chỉ tốn kém không gian lưu trữ, mà còn chiếm
nhiều thời gian khi muốn tìm kiếm thông tin. Ngoài ra còn khó bảo quả
n trong thời
gian lâu dài dưới những điều kiện xấu, dễ hư hỏng, mất mát. Chưa kể việc khai thác
sản xuất giấy làm ảnh hưởng tới môi trường sinh thái.
Máy tính ra đời, giúp giải quyết rất nhiều vấn đề liên quan đến việc quản lý
thông tin. Hình thức lưu trữ tài liệu dưới dạng điện tử ngày càng thông dụng hơn.
Thử làm một ví dụ nhỏ để so sánh giữ
a hình thức lưu trữ trên giấy với trên máy
tính, ở dạng điện tử. Mỗi hình thức lưu trữ có những ưu khuyết điểm riêng nhưng ở
đây chỉ so sánh về không gian lưu trữ, và thời gian tìm kiếm, truy xuất thông tin, mà
không tính đến những yếu tố khác. Đơn vị dung lượng lưu trữ phổ biến hiện nay là
Gigabyte. Một cuốn sách 200 trang lưu trên đĩa cần khoảng 1 megabyte. Như vậ
y
một gigabyte có thể lưu trữ khoảng một ngàn cuốn sách điện tử. Trong khi đó, để
lưu trữ một ngàn cuốn sách giấy truyền thống cần một kệ sách đầy từ sàn cho đến
trần nhà, chưa kể tiền mặt bằng, tiền in ấn, phát hành! Khi mà yêu cầu thông tin đòi
Chương 5 – Hệ thống Web Greenstone. Đi sâu vào những khái niệm nâng
cao của hệ thống Greenstone, tập trung vào phần xử lý trên web của hệ thống.
Chương 6 – Xây dựng ứng dụng. Xây dựng thư vi
ện số ITDL cho Khoa.
Trong chương này sẽ xác định yêu cầu thực tế, xác định hai mô-đun chính của hệ
thống: ITLib và ITLibWeb.
Chương 7 – ITLib – Mô-đun xử lý offline. Chương này phân tích thiết kế
hệ thống ITLib với chức năng chính là tạo các bộ sưu tập.
Chương 8 – ITLibWeb – Mô-đun xử lý online. Chương này sẽ phân tích,
thiết kế hệ thống ITLibWeb với giao diện web, tạo thư viện số, giúp người dùng sử
d
ụng các bộ sưu tập cũng như các chức năng, nghiệp vụ thư viện khác.
Chương 9 – Đánh giá và hướng phát triển. Chương cuối cùng của đề tài,
tổng hợp lại về Greenstone, đánh giá lại hệ thống thư viện điện tử ITDL và nêu
những hướng phát triển hệ thống trong tương lai.
Ngoài ra, các phần Phụ lục ở cuối Luận văn còn mở rộng các khía c
ạnh liên
quan đến thư viện số, các thành phần cấu thành nên Greenstone (MG, GDBM…) và
các mô-đun hỗ trợ Greenstone. vi
MỤC LỤC
Thư viện số Greenstone................................................................................4
1.2.1.
Giới thiệu ..............................................................................................4
1.2.2.
Tính năng ..............................................................................................5
1.3.
Mục đích của đề tài ......................................................................................6
CHƯƠNG 2.
CÁC KHÁI NIỆM CƠ BẢN ............................................................7
2.1.
Tài liệu..........................................................................................................8
2.2.
Bộ sưu tập.....................................................................................................8
2.3.
Tìm kiếm ......................................................................................................8
Gán thông tin metadata từ một tập tin mô tả ......................................14
2.7.5.
Chia cấu trúc tài liệu nguồn ................................................................16
2.8.
Classifier.....................................................................................................22
2.8.1.
Giới thiệu ............................................................................................22
2.8.2.
Phân loại..............................................................................................23
2.9.
Định dạng cách hiển thị tài liệu..................................................................25
2.9.1.
Giới thiệu ............................................................................................25
2.9.2.
Định dạng danh sách tài liệu...............................................................25
Cấu trúc thư mục của một bộ sưu tập.........................................................38
3.7.
Cấu trúc tài liệu theo định dạng XML........................................................39
vii
3.8.
Tập tin cấu hình bộ sưu tập ........................................................................42
CHƯƠNG 4.
HIỆU CHỈNH GIAO DIỆN GREENSTONE.................................45
4.1.
Giới thiệu....................................................................................................46
4.2.
Ảnh tiêu đề bộ sưu tập................................................................................48
Thêm nút mới......................................................................................54
4.5.3.1.
Tạo một nút mới dựa vào nút đã có.............................................55
4.5.3.2.
Tạo macro mới cho một nút ........................................................55
4.5.4.
Xóa nút duyệt tài liệu..........................................................................56
4.5.5.
Thay đổi nút duyệt tài liệu ..................................................................56
4.6.
Hiển thị văn bản .........................................................................................56
4.6.1.
Hiển thị loại CL list.............................................................................56
4.6.2.
Hiển thị nội dung ................................................................................57
Tổng quan về cơ chế xử lý .........................................................................65
5.3.
Chi tiết về cơ chế xử lý...............................................................................67
5.4.
Mã nguồn....................................................................................................69
5.4.1.
Các lớp và hàm cơ bản........................................................................70
5.4.2.
Collection server .................................................................................70
5.4.3.
Receptionist.........................................................................................72
PHẦN 2. XÂY DỰNG ỨNG DỤNG.......................................................................75
CHƯƠNG 6.
XÂY DỰNG ỨNG DỤNG.............................................................76
6.1.
6.3.3.1.
Xây dựng bộ sưu tập Luận văn....................................................79
6.3.3.2.
Xây dựng bộ sưu tập Sách...........................................................79
6.3.3.3.
Xây dựng bộ sưu tập Tổng quát ..................................................79
viii
6.3.4.
Tra cứu tài liệu ....................................................................................79
CHƯƠNG 7.
ITLIBWEB......................................................................................80
Phạm vi........................................................................................82
7.1.3.2.
Tài liệu tham khảo.......................................................................82
7.1.3.3.
Chức năng....................................................................................82
7.1.3.4.
Tính khả dụng..............................................................................82
7.1.3.5.
Tính ổn định.................................................................................83
7.1.3.6.
Sự hỗ trợ ......................................................................................83
7.1.3.7.
Tính bảo mật:...............................................................................83
7.1.3.8.
Các ràng buộc thiết kế .................................................................83
Lược đồ tuần tự............................................................................90
7.2.1.2.
Lược đồ cộng tác .........................................................................92
7.2.1.3.
VOPC...........................................................................................93
7.2.2.
Use case “Nhap luan van” (Nhập luận văn) .......................................94
7.2.2.1.
Lược đồ tuần tự............................................................................94
7.2.2.2.
Lược đồ cộng tác .........................................................................97
7.2.2.3.
VOPC...........................................................................................99
7.2.3.
Use case “Tra cuu” (Tra cứu) ...........................................................100
Thiết kế.....................................................................................................105
7.3.1.
Lược đồ lớp tổng quát của hệ thống .................................................105
7.3.2.
Chi tiết một số lớp chính...................................................................107
7.3.2.1.
Lớp đối tượng dùng chung ........................................................107
7.3.2.2.
Lớp boundary.............................................................................107
7.3.2.3.
Lớp control ................................................................................108
Mô hình cài đặt .................................................................................114
7.4.2.1.
Mô hình......................................................................................114
7.4.2.2.
Diễn giải ....................................................................................114
CHƯƠNG 8.
ITLib..............................................................................................115
8.1.
Xác định yêu cầu ......................................................................................116
8.1.1.
Giới thiệu ..........................................................................................116
8.1.2.
Bảng chú giải ....................................................................................116
8.1.2.1.
Bộ sưu tập..................................................................................116
Tính khả dụng............................................................................117
8.1.3.5.
Tính ổn định...............................................................................117
8.1.3.6.
Hiệu suất....................................................................................118
8.1.3.7.
Sự hỗ trợ ....................................................................................118
8.1.3.8.
Tính bảo mật..............................................................................118
8.1.3.9.
Các ràng buộc thiết kế ...............................................................118
8.1.4.
Mô hình Use Case.............................................................................118
8.1.4.1.
Lược đồ chính của mô hình Use case........................................118
VOPC.........................................................................................128
8.2.2.
Use case “QL BST Luan van” ..........................................................129
8.2.2.1.
Lược đồ tuần tự..........................................................................129
8.2.2.2.
Lược đồ cộng tác .......................................................................131
8.2.2.3.
VOPC.........................................................................................135
8.3.
Thiết kế.....................................................................................................136
8.3.1.
Sơ đồ lớp đối tượng của hệ thống.....................................................137
8.3.2.
Chi tiết một số lớp đối tượng ............................................................138
8.3.3.2.
Danh sách các bảng dữ liệu .......................................................142
8.3.4.
Thiết kế giao diện..............................................................................142
8.3.4.1.
Màn hình Chuẩn hoá Tài liệu ....................................................143
8.3.4.2.
Màn hình thu thập dữ liệu (cho tất cả các bộ sưu tập) ..............143
8.3.4.3.
Màn hình quản lý thông tin bộ sưu tập (cho tất cả các bộ sưu tập)
144
8.3.4.4.
Màn hình tiến hành xây dựng bộ sưu tập (cho tất cả các bộ sưu
tập) 144
8.3.4.5.
Màn hình quản lý thông tin Luận văn .......................................145
CHƯƠNG 9.
ĐÁNH GIÁ VÀ HƯỚNG PHÁT TRIỂN ....................................150
9.1.
Đánh giá ...................................................................................................150
9.2.
Hướng phát triển.......................................................................................150
PHỤ LỤC A. GIỚI THIỆU VỀ SEARCH ENGINE .............................................151
PHỤ LỤC B. CÁC THƯ VIỆN SỐ Ở VIỆT NAM ...............................................154
PHỤ LỤC C - CÁC THÀNH PHẦN HỖ TRỢ GREENSTONE ..........................156
TÀI LIỆU THAM KHẢO.......................................................................................167
xi
Hình 3.2 – Cấu trúc thư mục của Greenstone...........................................................37
Hình 3.3 – Minh họa cấu trúc phân cấp của tài liệu..................................................41
Hình 3.4 - Tìm kiếm tài liệu theo chỉ mục document và section..............................42
Hình 4.1 - Các phần trong giao diện web của Greenstone........................................48
Hình 4.2 – Các nút duyệt tài liệu...............................................................................49
Hình 4.3 – Hiển thị danh sách các tài liệu ................................................................57
Hình 4.4 – Hiển thị nội dung tài liệu.........................................................................58
Hình 4.5 - Hiệu chỉnh giao diện trang chủ................................................................59
Hình 5.1 - Cơ chế xử lý.............................................................................................65
Hình 5.2 - Collection server và receptionist liên lạc qua nghi thức null protocol....66
Hình 5.3 - Bộ sưu tập Project Gutenberg..................................................................67
Hình 5.4 - Cơ chế xử lý dùng null protocol ..............................................................68
Hình 5.5 - Cấu trúc thư mục chứa mã nguồn Greenstone.........................................69
Hình 5.6 - Các đối tượng Filter.................................................................................71
Hình 7.1 – Lược đồ Use case ....................................................................................84
xii
Hình 7.15 - “Nhập luận văn” : VOPC.......................................................................99
Hình 7.16 - “Tra cứu” : dòng sự kiện chính............................................................100
Hình 7.17 - “Tra cứu” : dòng sự kiện khác.............................................................100
Hình 7.18 - “Tra cứu” : dòng sự kiện chính............................................................101
Hình 7.19 - “Tra cứu” : dòng sự kiện khác.............................................................101
Hình 7.20 - “Tra cuu” : VOPC................................................................................102
Hình 7.21 - “Xem luận văn” : dòng sự kiện chính..................................................102
Hình 7.22 - “Xem luận văn” : dòng sự kiện khác...................................................103
Hình 7.23 - “Xem luận văn” : dòng sự kiện chính..................................................103
Hình 7.24 - “Xem luận văn” : dòng sự kiện khác...................................................104
Hình 7.25 - “Xem luận văn” : VOPC......................................................................104
Hình 7.26 - Lược đồ lớp của hệ thống ....................................................................106
Hình 8.1 - Lược đồ Use case..................................................................................118
Hình 8.2 - “Chuẩn hóa tài liệu” : dòng sự kiện chính............................................127
Hình 8.3 - “Chuẩn hóa Tài liệu” : dòng sự kiện chính...........................................128
Hình 8.4 - “Chuẩn hóa Tài liệu” : VOPC ..............................................................128
Hình 8.5 - Luồng phụ “Tạo mới bộ sưu tập” .........................................................129
Hình 8.6 - Luồng phụ “Mở bộ sưu tập”.................................................................130
Hình 8.7 - Luồng phụ “Xoá bộ sưu tập”................................................................131
Hình 8.8 - Luồng phụ “Tạo mới bộ sưu tập” .........................................................132
Hình 8.9 - Luồng phụ “Mở bộ sưu tập”.................................................................133
Hình 8.10 - Luồng phụ “Xoá bộ sưu tập”..............................................................134
Hình 8.11 - Sơ đồ lớp đối tượng của hệ thống.......................................................137
Hình 8.12 - Các lớp boundary................................................................................138
Hình 8.13 - Các lớp control....................................................................................139
Hình 8.14 - Các lớp entity......................................................................................140
Hình 8.15 - Mô hình dữ liệu...................................................................................141xiv
DANH SÁCH BẢNG
Bảng 2.1 – Danh sách các plugin..............................................................................13
Bảng 2.2 - Các thành phần trên trang web................................................................28
Bảng 3.1 - Các thư mục của Greenstone...................................................................38
Bảng 3.2 - Các thư mục của một bộ sưu tập .............................................................38
Bảng 3.3 - Thông tin tập tin cấu hình .......................................................................43
Bảng 4.1 – Danh sách các package ...........................................................................47
Bảng 4.2 - Một số macro chuẩn ................................................................................63
Bảng 5.1- Danh sách các Action...............................................................................73
Bảng 7.1 - Danh sách Actor ......................................................................................85
Bảng 7.2 - Danh sách các Use case...........................................................................85
Bảng 7.3 - Danh sách bảng dữ liệu .........................................................................110
Bảng 8.1 – Danh sách Actor ...................................................................................119
Bảng 8.2 - Danh sách Use case ...............................................................................119
Trong phần này, chúng ta sẽ tìm hiểu thư viện số Greenstone, từ những khái
niệm cơ bản, đến cấu trúc và cơ chế xử lý của hệ thống. Phần này sẽ giải thích tại
sao Greenstone được rất nhiều thư viện trên thế giới lựa chọn như là một giải pháp
xây dựng thư viện số đơn giản, hiệu quả, kinh tế và nhất là khả năng tuỳ bi
ến cao
nhưng vẫn đáp ứng được các tiêu chuẩn quốc tế về nghiệp vụ thư viện.
Tổ chức Phần 1 gồm 5 chương:
; Chương 1 : Tổng quan
; Chương 2 : Các khái niệm cơ bản
; Chương 3 : Xây dựng bộ sưu tập
; Chương 4 : Hiệu chỉnh giao diện của Greenstone
; Chương 5 : Hệ thống web Greenstone
Chương 1 – Tổng quan
Trang 2
Chương 1 – Tổng quan
Trang 3
1.1. Thư viện và thư viện số
1.1.1. Giới thiệu
Thư viện là kho tàng tri thức đã có những đóng góp có ý nghĩa cho sự phát
triển của con người.
Tuy nhiên, khi lượng thông tin vận hành trong xã hội trở nên nhiều hơn, thư
viện truyền thống, với hình thức lưu trữ chủ yếu trên giấy, có còn giữ vị trí độc tôn,
và có còn thích hợp không? Thời đại của Internet, của mạng thông tin toàn cầu,
người ta cần tìm ra một cách quản lý thông tin sao cho hiệu quả. Điều này tập trung
vào hai khía c
ạnh chủ yếu. Thứ nhất, phải tiết kiệm không gian lưu trữ; thứ hai, tốc
độ truy tìm thông tin phải thật nhanh. Giờ đây, người ta trao đổi thông tin không chỉ
qua giấy tờ, mà còn thường xuyên sử dụng đến hình thức tài liệu điện tử: sách điện
tử, báo điện tử, email, phim ảnh, v.v… Hơn thế nữa, người ta muốn, dù ở bất cứ đâu
trên th
ế giới cũng có thể tìm và lấy được thông tin cần thiết. Tất cả những điều đó
đặt ra yêu cầu phải xây dựng một hệ thống có những chức năng của một thư viện
bình thường, nhưng chủ yếu quản lý tài liệu điện tử và có thể truy cập vào ở bất cứ
đâu. Và những cụm từ như “virtual library” (thư viện ảo), “electronic library" (th
ư
viện điện tử), “library without walls” (thư viện không có tường) và gần đây nhất, là
của một hệ thống điện tử với những công nghệ, dịch vụ mới.
Hiện nay trên thế giới có r
ất nhiều hệ thống phần mềm thư viện số như
Project Gutenberg, Ibiblio và Internet Archieve. Tuy nhiên, chúng hầu hết là những
sản phẩm thương mại. Chỉ tính riêng ở Việt Nam đã có ít nhất ba nhà cung cấp hệ
thống phần mềm dạng này
1
. Đó là Công ty trách nhiệm hữu hạn CMC (CMC Co.,
Ltd) với hệ thống iLib; Công ty Tin học Lạc Việt (LAC VIET Computing Corp) với
phần mềm VeBrary; và phần mềm Libol của Công ty Tin học Tinh Vân (TINH
VAN Informatic Technology Co.). Theo các chuyên gia đánh giá, “Các phần mềm
hiện nay đang sử dụng tại các thư viện Việt Nam do các nhà sản xuất Việt Nam
cung cấp đang còn có một số hạn chế về độ tin cậy. Do thời gian dùng thử nghiệm
chưa nhiều, qui mô khai thác chưa lớn nên ch
ưa thể có kết luận một cách rõ ràng
chất lượng của các sản phẩm này” [19]. Do đó, việc sử dụng một hệ thống thư viện
số thoả mãn những tiêu chuẩn quốc tế, tạo mặt bằng chung trong quá trình liên kết
hệ thống các thư viện hiện nay là rất cần thiết.
1.2. Thư viện số Greenstone
1.2.1. Giới thiệu
Các thư viện số làm thay đổi nhanh chóng cách thức thu thập và phổ biến
thông tin ở nhiều quốc gia, nhất là các quốc gia còn kém và đang phát triển. Đứng 1
Xin xem phần thăm dò các sản phẩm phần mềm thư viện ở Việt Nam trong phụ lục B
Hệ thống Greenstone gồm hai phần : Phần xử lý offline, thực hiện việc tạo
dựng các bộ sưu tập, tạo các cấu trúc dữ liệu để tìm kiếm và trình duyệt; và phần xử
lý online, cho phép ng
ười dùng truy xuất, sử dụng các bộ sưu tập.
1.2.2. Tính năng
Sau đây là những điều tóm lược về những đặc trưng nổi bật, và cũng là ưu
thế của Greenstone.
- Truy cập qua trình duyệt web, cả ở chế độ cục bộ (local) và từ xa (remote).
- Chạy được trên nhiều hệ điều hành : Windows, Unix, Macintosh.
- Tìm kiếm toàn văn bản và tìm kiếm theo từng trường riêng biệt. 2
UNESCO (United Nations Educational, Scientific and Cultural Organization) – Tổ chức Giáo dục, Khoa
học và Văn hoá của Liên Hợp Quốc.
3
Human Info NGO, viết tắt của Humanitarian Information for All - Non-Governmental Organization, một
tổ chức phi chính phủ của Bỉ, hoạt động nhân đạo vì quyền tự do và phát triển của con người. Chương 1 – Tổng quan
Trang 6
- Khả năng trình duyệt linh động, đa dạng
- Cấu trúc duyệt tài liệu được xây dựng hoàn toàn tự động.
Chương 2 – Các khái niệm cơ bản
Trang 7 CHƯƠNG 2. CÁC KHÁI NIỆM CƠ BẢN
Tài liệu
Bộ sưu tập
Tìm kiếm
Duyệt tài liệu
Metadata
Biên mục
Plugin
Greenstone cho phép định nghĩa trước các cấu trúc để duyệt tài liệu trong
mỗi bộ sưu tập dựa trên những metadata tìm thấy trong bộ sưu tập đó. Chương 2 – Các khái niệm cơ bản
Trang 9
Ví dụ, bộ sưu tập Greenstone Demo cho phép ta duyệt các tài liệu theo
metadata “đề mục”
Hình 2.1 - Minh hoạ duyệt tài liệu
Với những tài liệu phân cấp theo bảng mục lục, ta có thể duyệt theo chính
mục lục đó, rất tiện lợi, như hình dưới đây