Thư viện số ngữ nghĩa là sự kết hợp của công nghệ Web ngữ nghĩa và
Web 2.0. Bằng cách tích hợp ngữ nghĩa vào các thư viện số làm cho thư
viện số ngữ nghĩa có nhiều ưu điểm nổi trội so với các thư viện khác,
nó hỗ trợ cơ chế tìm kiếm ngữ nghĩa và chia sẻ các tài nguyên với các
hệ thống khác một cách thuận lợi.
68 trang |
Chia sẻ: lylyngoc | Lượt xem: 2707 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Luận văn Ứng dụng web ngữ nghĩa trong lưu trữ và quản lí các tài liệu số, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
edicate khai báo rdf:Statement rdfs: Resource
rdf:subject Chủ thể của khai báo rdf:Statement rdfs: Resource
Thuộc tính quan trọng nhất được sử dụng trong trường hợp này là rdfs:range
và rdfs:domain
20
Hình 1.4. Không gian miền và giới hạn của thuộc tính RDFS
dùng để chỉ giá trị của một thuộc tính là thể hiện của một lớp. Ví
dụ ta có phát biểu sau:
ex:Person rdf:type rdfs:Class .
ex:author rdf:type rdf:Property .
ex:author rdfs:range ex:Person .
Phát biểu này chỉ rằng ex:Person là một lớp, ex:author là một thuộc tính, và
thuộc tính ex:author có [đối tượng] là thực thể của lớp ex:Person. Tuy nhiên một
thuộc tính có thể có nhiều rdfs:range, chẳng hạn:
ex:hasMother rdfs:range ex:Female .
ex:hasMother rdfs:range ex:Person .
Thuộc tính rdfs:range có thể được sử dụng để chỉ ra giá trị của kiểu chuỗi kí tự
ex:age rdf:type rdf:Property .
ex:age rdfs:range xsd:string.
được sử dụng để chỉ rằng một thuộc tính là thuộc tính của một
lớp nào đó. Ví dụ như ta muốn thuộc tính ex:author là thuộc tính của lớp ex:Book,ta
có phát biểu sau:
ex:Book rdf:type rdfs:Class .
ex:author rdf:type rdf:Property .
ex:author rdfs:domain ex:Book .
Và một thuộc tính cũng có nhiều thuộc tính rdfs:domain khác:
21
exterms:weight rdfs:domain ex:PC.
exterms:weight rdfs:domain ex:MotorVehicle.
Các luật suy diễn trong lược đồ RDF
Có 6 trường hợp suy diễn theo các cấp loại lớp, thuộc tính, lớp con, thuộc tính
con, miền, giới hạn.
Trường hợp 1: Suy diễn về loại của lớp
IF (c2, subClassOf, c1)
AND (x, type, c2)
THEN (x, type, c1)
Ví dụ:
IF (Man, subClassOf, Person)
AND (Nam, type, Man)
THEN (Nam, type, Person)
Trường hợp 2: Suy diễn về thuộc tính của lớp
IF (p2, subPropertyOf, p1)
AND (x, p2, y)
THEN (x, p1, y)
Ví dụ:
IF (author, subPropertyOf, creator)
AND (Nam, author, KhoaLuan)
THEN (Nam, creator, KhoaLuan)
Trường hợp 3: Suy diễn về lớp con của lớp
IF (c2, subClassOf, c1)
AND (c3, subClassOf, c2)
THEN (c3, subClassOf, c1)
Ví dụ:
IF (ClassB, subClassOf, ClassA)
AND (ClassC, subClassOf, ClassB)
22
THEN (ClassC, subClassOf, ClassB)
Trường hợp 4: Suy diễn về thuộc tính con của thuộc tính
IF (p2, subPropertyOf, p1)
AND (p3, subPropertyOf, p2)
THEN (p3, subPropertyOf, p1)
Ví dụ:
IF (parent, subPropertyOf, ancestor)
AND (father, subPropertyOf, parent)
THEN (father, subPropertyOf, ancestor)
Trường hợp 5: Suy diễn trong miền (domain)
IF (p1, domain, c1)
AND (x, p1, y)
THEN (x, type, c1)
Ví dụ:
IF (author, domain, Human)
AND (Nam, author, KhoaLuan)
THEN (Nam, type, Human)
Trường hợp 6: Suy diễn trong dãy giới hạn (range)
IF (p1, range, c1)
AND (x, p1, y)
THEN (y, type, c1)
Ví dụ:
IF (author, range, Document)
AND (Nam, author, KhoaLuan)
THEN (KhoaLuan, type, Document)
1.3.3.2 Ngôn ngữ truy vấn RDF
RDF là một cách để mô tả thông tin về các tài nguyên Web một cách linh
động. Với lượng thông khổng lồ trên Web cần phải có ngôn ngữ truy vấn các tài
liệu RDF một cách nhanh chóng và chính xác. Tổ chức W3C đã phát triển ngôn ngữ
23
truy vấn trong các tài liệu RDF dựa trên cú pháp của ngôn ngữ truy vấn SQL trong
CSDL quan hệ. Trong phần này sẽ giới thiệu sơ lược ngôn ngữ truy vấn RDF thông
dụng là SPARQL. Chi tiết về ngôn ngữ SPARQL xem tại
SPARQL là một ngôn ngữ để truy cập thông tin từ các lược đồ RDF. Nó cung
cấp các tính năng sau:
- Trích thông tin từ các dạng của URI
- Trích thông tin từ các lược con
- Xây dựng đồ thị RDF mới dựa trên thông tin trong đồ thị truy vấn
Một câu truy vấn bao gồm 2 mệnh đề, mệnh đề SELECT và mệnh đề
WHERE. Mệnh đề SELECT định danh các biến mà ứng dụng quan tâm và mệnh đề
WHERE bao gồm các mẫu điều kiện cho các bộ ba.
Ví dụ: PREFIX rdf syntax : SELECT ?x WHERE {?x rdf syntax : type }
Các giá trị được đặt trong dấu ‘’ dùng để chỉ một định danh URI. Các giá trị
được đặt trong dấu (“”) là các giá trị chuỗi kí tự. Biến trong ngôn ngữ truy vấn có
giá trị toàn cục. Biến thường bắt đầu với kí tự ‘?’ hay kí tự ‘$’ để chỉ một biến.
SPARQL cung cấp một cơ chế viết tắt. Tiếp đầu ngữ (prefix) dùng để làm gọn các
URI trong truy vấn.
Kết luận
Trong chương này đã trình bày khái quát về Web ngữ nghĩa, một lĩnh vực
được xem là có tiềm năng cực lớn cho việc giải quyết các vấn đề còn tồn đọng trong
Web hiện tại. Tìm hiểu kiến trúc cơ bản làm nên Web ngữ nghĩa, và các thành phần
nền tảng của nó, đó là URI, XML, Ngôn ngữ bản thể luận, Ngôn ngữ RDF và lược
đồ RDF, v.v....
24
Chương 2. TIẾP CẬN WEB NGỮ NGHĨA TRONG
LƯU TRỮ VÀ QUẢN LÍ TÀI LIỆU SỐ
Một trong những cách lưu trữ và quản lí các tài liệu số là các thư viện số. Thư
viện số là thư viện mà ở đó các bộ sưu tập được lưu trữ dưới dạng số (tương phản
với các định dạng in, vi dạng, hoặc các phương tiện khác) và có thể truy cập bằng
máy tính. Nội dung số có thể được lưu trữ cục bộ hoặc truy cập từ xa qua mạng máy
tính. Thư viện số là một loại hệ thống truy hồi thông tin - Information Retrieval
System. Đối tượng quản lí chính của một hệ thống phần mềm thư viện số là các tệp
tin tài liệu. Như đã đề cập ở phần trên mọi loại tài nguyên đều có thể miêu tả dưới
dạng các siêu dữ liệu. Việc tìm kiếm ngữ nghĩa dựa trên các siêu dữ liệu rõ ràng là
thuận lợi cho người dùng hơn so với các tìm kiếm theo từ khóa trong một hệ thống
thư viện số với số lượng tài liệu khổng lồ. Trong các hướng tiếp cận tiêu biểu về
ứng dụng Web ngữ nghĩa, thư viện số là ứng dụng tiêu biểu.
2.1 Web ngữ nghĩa và thư viện số
2.1.1 Thư viện số ngữ nghĩa
Đối tượng quản lí chính của thư viện số là các tài liệu số (sách, báo, tạp chí
điện tử, các tài nguyên đa phương tiện, v.v...). Trong thư viện số, số lượng tài liệu
có thể lên tới hàng trăm triệu tài liệu, ngoài chức năng lưu trữ tài liệu, còn phải hỗ
trợ người dùng tra cứu tài nguyên trong một kho dữ liệu khổng lồ với thời gian
nhanh nhất và chính xác nhất.
Các thư viện số truyền thống cho phép người dùng tìm kiếm thông qua cấu
trúc phân mục tài liệu hoặc qua tìm kiếm từ khóa nhờ kĩ thuật lập chỉ mục cho nội
dung trong tài liệu. Cơ chế phân mục trả lại danh sách các tài liệu tương ứng với câu
truy vấn kiểu như: “Liệt kê ra tất cả các tài liệu có tiêu đề bắt đầu bằng chứ A” hoặc
“Liệt kê các tài liệu về Mạng chia sẻ ngang hàng”, còn cơ chế tìm kiếm theo từ
khóa trả lại danh các tài liệu mà nội dung có chứa từ khóa trong câu truy vấn, chẳng
hạn “Các tài liệu có chứa cụm từ [Khoa học máy tính] nhưng không chứa cụm từ
25
[Phần cứng máy tính]”. Tuy nhiên cả hai cơ chế này đều không hỗ trợ đầy đủ cho
các câu truy vấn kiểu như: “liệt kê các tài liệu liên quan đến ngôn ngữ lập trình
hướng đối tướng”. Nếu truy vấn trong hệ thống thư viện tìm kiếm theo từ khóa, thì
hệ thống sẽ trả lại một tập các danh sách có chứa từ khóa trên, nếu kho tài nguyên
có chứa tài liệu “Xây dựng ứng dụng Windows với C#” (C# là một ngôn ngữ lập
trình hướng đối tượng) mà nội dung tài liệu không chứa cụm từ “lập trình hướng đối
tượng” thì hệ thống sẽ không tìm thấy. Hoặc với truy vấn “liệt kê các tài liệu mạng
đồng đẳng” thì máy tính không hiểu được [Mạng ngang hàng] và [Mạng đồng đẳng]
là hai khái niệm tương đương.
Như vậy cơ chế tìm kiếm theo từ khóa và theo kiểu duyệt thư mục không giải
quyết được các câu truy vấn phức tạp và mang tính trừu tượng cao. Để hỗ trợ các
câu truy vấn loại này, một trong các giải pháp là thêm dữ liệu ngữ nghĩa cho hệ
thống thư viện số.
Các thông tin tin ngữ nghĩa được biểu diễn bởi các siêu dữ liệu đi kèm với mỗi
đối tượng tài liệu, cùng với một hay nhiều bản thể luận được cung cấp với ngữ cảnh
ngữ nghĩa tương ứng, sẽ trả lời được (phần nào) các câu truy vấn mang tính trừu
tượng.
Một thư viện số được tích hợp thêm ngữ nghĩa cho các tài nguyên được gọi là
thư viện số ngữ nghĩa. Thư viện số ngữ nghĩa các các đặc điểm chung sau [6]:
- Tích hợp nhiều nguồn thông tin dựa trên các siêu dữ liệu khác nhau (các tài
liệu, hồ sơ người dùng, đánh dấu, phân loại,...)
- Cung cấp khả năng tương tác với các hệ thống khác (không chỉ các thư viện
số với nhau) thông qua các siêu dữ liệu (RDF là một trong những tài nguyên
thông dụng được dùng để trao đổi dữ liệu giữa các thư viện số với các dịch
vụ khác).
- Cung cấp khả năng tìm kiếm theo ngữ nghĩa mạnh mẽ hơn so với các cách
tìm kiếm thông thường và tra cứu tài liệu một cách dễ dàng.
Các thành phần hỗ trợ để xây dựng thư viện số ngữ nghĩa bao gồm: Web ngữ
nghĩa, Thu viện số, và Công nghệ Web 2.0 [6]. Cũng giống như web và web ngữ
nghĩa, thư viện số ngữ nghĩa là sự mở rộng của thư viện số bởi việc mô tả và trình
bày các nguồn tài nguyên theo định dạng mà máy tính có thể hiểu và xử lí được.
26
Thư viện số ngữ nghĩa cũng có thể xem là sự mở rộng của thư viện số, nhờ ứng
dụng của web ngữ nghĩa (hay còn gọi là thư viện số 2.0).
Web ngũ
nghĩa Web 2.0
Thư viện
số
Thư viện số
ngũ nghĩa
Hình 2.1. Các thành phần hỗ trợ thư viện số ngữ nghĩa
2.1.2. Tổ chức tri thức trong thư viện
Hệ thống tổ chức tri thức nhằm mục đích làm rõ cơ cấu tổ chức bên trong của
một hệ thống. Nó biểu diễn các mối quan hệ (ngữ nghĩa) giữa các đối tượng, các
khái niệm trong một hệ thống, nhằm mục đích tổ chức, trao đổi thông tin và quản lí
tri thức một cách hiệu quả.
Trong thư viện số ngữ nghĩa, các tri thức bao gồm [6]:
Lược đồ phân loại và biên mục các tài liệu
Nội dung tiêu đề tài liệu (tên tài liệu)
Các tệp tin xác minh (quan lí phiên bản các tài liệu, các thông tin quan
trọng (từ khóa), tên của tác giả, nơi xuất xứ tài liệu, v.v...)
Tập các từ vựng (chẳng hạn các từ điển)
Các lược đồ (ngữ nghĩa, bản thể luận)
2.1.3. Web ngữ nghĩa trong thư viện số
Ta biết rằng nguyên liệu chính để xây dựng web ngữ nghĩa là các siêu dữ liệu,
trong các thư viện số cũng vậy, các tài liệu cũng phải được biểu diễn bởi các siêu dữ
liệu. Nếu tài liệu là những khối xây dựng căn bản của thư viện số, thì ngôn ngữ
đánh dấu và các siêu dữ liệu là những yếu tố tổ chức. Ngôn ngữ đánh dấu được
dùng để chỉ rõ cấu trúc của tài liệu riêng lẻ và kiểm soát phương thức trình bày cho
27
người sử dụng. Các siêu dữ liệu được dùng để xúc tiến việc truy cập đến những
phần thích hợp của tài liệu qua việc tìm kiếm. Trong các thư viện số có sự khác biệt
quan trọng giữa siêu dữ liệu hiện và siêu dữ liệu ẩn. Siêu dữ liệu hiện được xác định
bởi con người sau khi xem xét cẩn thận và phân tích tài liệu. Siêu dữ liệu ẩn được
trích xuất tự động từ nội dung tài liệu nhờ kĩ thuật khai thác văn bản. Công việc này
thường khó thực hiện chính xác. Khai thác văn bản, được định nghĩa như một tiến
trình phân tích văn bản để trích thông tin hữu ích cho mục đích cụ thể, đó là một đề
tài nghiên cứu nóng bỏng hiện nay.
Một trong những chuẩn siêu dữ liệu thông dụng và nổi tiếng là DublinCore.
Chuẩn Dublin Core là một tập hợp những thành phần siêu dữ liệu được thiết kế đặc
biệt cho việc sử dụng không chuyên. Được dùng chủ yếu cho việc mô tả tài liệu số.
Chuẩn Dublin Core bao gồm 15 yếu tố cơ bản và các yếu mỏ rộng bao gồm:
Nhan đề (Title): Nhan đề của tài liệu
Tác giả (Creator): Tác giả của tài liệu, bao gồm cả tác giả cá nhân và tác giả
tập thể.
Chủ đề (Subject): Chủ đề tài liệu đề cập dùng để phân loại tài liệu. Có thể
thể hiện bằng từ, cụm từ/(Khung chủ đề), hoặc chỉ số phân loại/ (Khung phân
loại).
Tóm tắt (Description): Tóm tắt, mô tả nội dung tài liệu. Có thể bao gồm tóm
tắt, chú thích, mục lục, đoạn văn bản để làm rõ nội dung
Nhà xuất bản (Publisher): Nhà xuất bản, nơi ban hành tài liệu có thể là tên
cá nhân, tên cơ quan, tổ chức, dịch vụ...
Tác giả phụ (Contributor): Tên những người cùng tham gia cộng tác đóng
góp vào nội dung tài liệu, có thể là cá nhân, tổ chức...
Ngày tháng (Date): Ngày, tháng ban hành tài liệu. Có thể dùng chuẩn ISO
8601
Loại (kiểu) (Type): Mô tả bản chất của tài liệu. Dùng các thuật ngữ mô tả
phạm trù kiểu: trang chủ, bài báo, báo cáo, từ điển...
Khổ mẫu (Format): Mô tả sự trình bày vật lý của tài liệu, có thể bao gồm;
vật mang tin, kích cỡ độ dài, kiểu dữ liệu (.doc, .html, .jpg, xls, phần mềm....)
Định danh (Identifier): Các thông tin về định danh tài liệu, các nguồn tham
chiếu đến, hoặc chuỗi ký tự để định vị tài nguyên: URL (Uniform Resource
Locators) (bắt đầu bằng http://), URN (Uniform Resource Name), ISBN
28
(International Standard Book Number), ISSN (International Standard Serial
Number), SICI (Serial Item & Contribution Identifier), ...
Nguồn (Resource): Các thông tin về xuất xứ của tài liệu, tham chiếu đến
nguồn mà tài liệu hiện mô tả được trích ra/tạo ra, nguồn cũng có thể là:
đường dẫn (URL), URN, ISBN, ISSN...
Ngôn ngữ (Language): Các thông tin về ngôn ngữ, mô tả ngôn ngữ chính
của tài liệu
Liên kết (Relation): Mô tả các thông tin liên quan đến tài liệu khác. có thể
dùng đường dẫn (URL), URN, ISBN, ISSN...
Diện bao quát (Coverage): Các thông tin liên quan đến phạm vi, quy mô
hoặc mức độ bao quát của tài liệu. Phạm vi đó có thể là địa điểm, không gian
hoặc thời gian, tọa độ...
Bản quyền (Right): Các thông tin liên quan đến bản quyền của tài liệu
Các yếu tố mở rộng: Thực tế sử dụng Dublin Core cho thấy mỗi yếu tố cơ
bản còn gộp chứa trong nó một vài thành tố phụ nhằm diễn đạt chi tiết hơn
nội dung chính yếu tố đó. Các thành tố phụ được coi là các yếu tố mở rộng
và được thể hiện thông qua những khung mã hóa cụ thể. Ví dụ, khi thể hiện
nội dung của một tài liệu, người ta cung cấp một vài cách tiếp cận khác nhau
như qua ký hiệu phân loại, tiêu đề đề mục, từ khoá, …
Cú pháp chung nhất cho Dublin Core như sau:
content= “giá trị trường”>
Tương tự như đối với các tài liệu truyền thống, mỗi tài liệu số cần có một biểu
ghi thư mục mô tả làm cơ sở cho việc tìm kiếm và quản lý tài liệu đó. Đối với các
hệ thống thư viện số giản đơn biểu ghi thư mục chứa thông tin liên kết trực tiếp tới
địa chỉ tệp tin tài liệu số, người đọc đến thư viện, tìm một biểu ghi thư mục và đưa
cho thủ thư để lấy ra tài liệu cần tham khảo. Trong hệ thống thư viện số, các biểu
ghi thư mục siêu dữ liệu được dùng để trình bày về các siêu dữ liệu tài liệu. Các
biểu ghi thư mục cũng được biểu diễn dưới dạng RDF.
29
Hình 2.2. Biểu diễn cấu trúc tài liệu dưới dạng RDF
Các bản thể luận cũng đóng vai trò quan trong trọng các thư viện số ngữ
nghĩa. Bản thể luận không chỉ làm cho tri thức có thể sử dụng lại dễ dàng hơn, nó
còn là nền tảng của việc tạo ra các chuẩn bởi vì nó làm rõ các khái niệm bên cạnh
một thuật ngữ hoặc một mô hình. Việc tìm kiếm các tài liệu trong thư viện số ngữ
nghĩa là tìm kiếm các tài liệu có ý nghĩa tương tự nhau chứ không chỉ là những từ
ngữ tương tự nhau.
Cho ví dụ, với một biểu ghi thư mục siêu dữ liệu sau:
Nhan đề Lập trình Java cho các thiết bị di động
Tác giả Nguyễn Văn Anh
Chủ đề Ngôn ngữ Java
Tóm tắt
Hướng dẫn viết các ứng
dụng cho các thiết bị di động
sử dụng ngôn ngữ lập trình
Java
Nhà xuất bản Đại học Quốc Gia Hà Nội
Tác giả phụ
...
Với câu truy vấn sau:
30
“Nhà xuất bản=Đại học Quốc Gia Hà nội” AND “Tác giả=Nguyễn Văn Anh”
AND “Chủ đề=Ngôn ngữ lập trình hướng đối tượng”
Nếu được truy vấn trong các hệ thống tìm kiếm theo từ khóa thì sẽ không thấy
được tài liệu [Học các ngôn ngữ lập trình hiện đại qua các dự án]. Ngược lại nếu ta
có tri thức “Java là ngôn ngữ Lập trình hướng đối” được mô hình hóa trong bản thể
luận (quan hệ kế thừa) thì khi truy vấn trong thư viện số ngữ nghĩa sẽ ra được chính
xác tài liệu.
Từ ví dụ nhỏ trên ta thấy rằng, các ứng dụng ngữ nghĩa có thuận lợi rất lớn
cho người dùng không phải là chuyên gia về lĩnh vực cụ thể.
Các tài liệu số chỉ chứa các siêu dữ liệu, phục vụ cho việc quản lí và tìm kiếm
đơn giản. Để trả lời các câu truy vấn phức tạp từ người dùng ta cần phải làm cho
máy tính hiểu và xử lí được các thông tin chứa trong các siêu dữ liệu. Cụ thể hơn, ta
cần phải có biểu diễn được ngữ nghĩa trong các tài liệu.
Tương tự như trong web ngữ nghĩa, các biểu ghi thư mục siêu dữ liệu bản thân
nó đã chứa tri thức về tài liệu (dạng đơn giản, tiềm ẩn), nhưng nó chưa đủ để máy
tính “suy luận” được, chỉ con người mới có thể suy luận được. Các siêu dữ liệu
trong thư viện số mới chỉ là những nguyên liệu ban đầu để xây dựng một thư viện
ngữ nghĩa, do đó ta cần phải bổ sung bản thể luận vào các biểu ghi thư mục siêu dữ
liệu. Các ngôn ngữ bản thể luận trong Web ngữ nghĩa như: lược đồ RDF, Ngôn ngữ
bản thể luận web (OWL) được áp dụng để xây dựng ngữ nghĩa cho các tài liệu số.
Trong thư viện số ngữ nghĩa, ý nghĩa của nội dung tài liệu được thể hiện tốt
hơn, và những liên kết logic được thực hiện giữa những thông tin liên quan với
nhau. Tuy nhiên, việc xây dựng bản thể luận cho một lĩnh vực cụ thể là một công
việc đầy khó khăn và thách thức.
2.2. Kiến trúc của thư viện số ngữ nghĩa
Các đối tượng bắt buộc phải có trong một thư viện ngữ nghĩa là các siêu dữ
liệu và các tài nguyên, và một hệ thống thư viện ngữ nghĩa cần phải cung cấp các
dịch vụ: trao đổi dữ liệu với hệ thống khác, chú giải cho người dùng, các dịch vụ
tìm kiếm.
Kiến trúc của thư viện số ngữ nghĩa cần phải có các thành phần tương ứng để
đảm bao cung cấp các dịch vụ trên một cách thống nhất, hình vẽ dưới đây mô tả
31
một kiến trúc cơ bản của thư viện số ngữ nghĩa (dựa trên hệ thống thư viện số
Alexandria và DELOS) [9].
Hình 2.3. Kiến trúc thư viện số ngữ nghĩa
Đây là một kiểu kiến trúc bao gồm ba tầng chính:
Tầng Dữ liệu trừu tượng : Cung cấp cơ chế để truy cập vào các nguồn
tài nguyên.
Tầng Truy cập và thao tác dữ liệu: Hỗ trợ viện quản lí thư viện, Các
dịch vụ cơ bản, Các dịch vụ truy cập thông tin, Hỗ trợ trao đổi dữ liệu.
Tầng Trình diễn dữ liệu: Cung cấp giao diện hỗ trợ người dùng.
2.3. Bản thể luận cho thư viện số ngữ nghĩa
2.3.1. Bản thể luận biểu ghi thư mục
Với công nghệ web ngữ nghĩa, sự biểu diễn của các chuẩn mô tả biểu ghi thư
mục như các bản thể luận là một sự lựa chọn tất yếu. Các định dạng siêu dữ liệu có
thể được tăng thêm tính ngữ nghĩa khi được biểu diễn bởi các khái niệm trong bản
thể luận, nó cung cấp khả năng sử dụng các khái niệm đã được định nghĩa và có thể
suy diễn dữ liệu tiềm ẩn từ các mô tả thư mục.
Thông thường một thư viện số các sử dụng các chuẩn siêu dữ liệu để tổ chức
các biểu ghi thư mục. Một trong những định dạng biểu ghi thư mục phổ biến là
32
MART21, BibTeX và Dublin Core..., tuy nhiên các chuẩn này được định nghĩa cho
quá trình sử dụng của con người, chỉ có con người mới hiểu được, không định nghĩa
ngữ nghĩa của các siêu dữ liệu để máy tính hiểu được.
Ví dụ Một bản thể luận biểu ghi thư mục của BiBTeX được biểu diễn như hình dưới
đây:
Hình 2.4. Bản thể luận BibTeX
Việc chuyển đổi từ biểu ghi thư mục sang Bản thể luận bao gồm ba bước
chính [8].
- Bước 1: Chuyển các biểu ghi thư mục truyền thống (MART21, Dublin Core,
BibTeX) sang các tệp tin XML.
- Bước 2: Chuyển các tệp tin XML từ bước 1 sang các bộ ba RDF. Các bộ ba
RDF chưa có các thông tin ngữ nghĩa, chúng đơn thuần chỉ biểu diễn các trường và
các giá trị của đối tượng.
Ví dụ: Ta có một bản ghi BibTeX như sau: @Article{LeA:vnucs_1_1:editorial, author = “Lê A”, title =”{Cơ sở dữ liệu động và ứng dụng}”, journal =”Tạp chí khoa học máy tính – Đại học Quốc Gia”, year = ”2011”,
33
volumn =”1”, number =”1”, pages =”6”, months = Tháng 1, note =”path| editorial|”}
Được viết dưới dạng RDF như sau: Lê A Cơ sở dữ liệu động và ứng dụng Tạp chí khoa học máy tính – Đại học Quốc Gia 2011 1 1 6 January \path||
Bước 3: Chuyển các bộ ba RDF sang dạng Bản thể luận. Bước này thực hiện
tương đối phức tạp, yêu cầu cần phải định nghĩa ra các nguyên tắc cụ thể để chuyển
đổi.
2.3.2. Bản thể luận cho cấu trúc nội dung
Các thư viện số hiện đại không chỉ lưu trữ các siêu dữ liệu thư mục, nó còn có
dữ liệu dạng điện tử biểu diễn nội dung của tài liệu. Phụ thuộc vào kiểu của tài liệu
mà cấu trúc bên trong của mỗi tài liệu có thể được mô tả bởi các siêu dữ liệu. Cho
ví dụ, một quyển sách điển tử chứa trong thư viện, nội dung được chia thành nhiều
34
chương, mỗi chương có thể được biểu diễn bởi một tệp tin siêu dữ liệu, và tệp tin
khác mô tả mối quan hệ của từng chương (hình 2.2).
Bởi việc bao hàm khái niệm cấu trúc nội dung trong Bản thể luận và mô tả các
khái niệm này trong các siêu dữ liệu, chúng ta có thể cung cấp một khung nhìn tổng
thể cho việc truy tìm các siêu dữ liệu và nội dung tài liệu.
2.3.3. Cơ bản về sự phân loại
Trong việc xác định ngữ nghĩa cho các tài liệu, cần phải xác định tài nguyên
đó thuộc lớp nào, có những tính chất phân biệt gì. Do đó cần có cơ chế để máy tính
có thể phân loại được các tài nguyên. Vấn đề này liên quan đến lĩnh vực gọi là
Taxonomy (một ngành khoa học về nguyên lí phân loại).
Có hai phương pháp phân loại chính là hình thức và không hình thức. Cách
phân loại không hình thức đòi hỏi không cần độ chính xác cao, chỉ mang tính chất
tương đối, chẳng hạn, nói C++ là một ngôn ngữ lập trình hay là một ngôn ngữ lập
trình hướng đối tượng cũng không ảnh hưởng gì. Phương pháp phân loại hình thức
có hai dạng đó là: Phân loại phân cấp và Phân loại phân nhóm.
i. Phân loại phân cấp
Phân loại phân cấp sử dụng một số cấu trúc phân cấp như danh sách phân cấp
hoặc cây phân cấp. Trong đó, danh sách phân cấp là cách đơn giản nhất và tự nhiên
nhất, một danh sách phân cấp thường được bắt đầu với các thực thể lớn và sau đó
dẫn ra các thực thể nhỏ hơn.
Ví dụ về một danh sách phân cấp
Khoa học tự nhiên
Toán học
Vật Lý
Hóa học
Khoa học xã hội và nhân văn
Văn học
Lịch sử
Địa lý
35
Danh sách phân cấp không thể hiện được một số ràng buộc về ngữ nghĩa khi
phân loại sự vật hiện tượng. Để tăng thêm sự ràng buộc và khắc phục hạn chế trên
của danh sách phân cấp, người ta sử dụng một cấu trúc phân cấp khác được gọi là
cây phân cấp. Trong cấu trúc này, một phân tử chỉ có thể là một dạng của một phần
tử cấp cao hơn có đường nối đến nó.
Hình 2.5. Một dạng cây phân cấp
Tuy nhiên, cây phân cấp và danh sách phân cấp cũng không thể hiện được các
quan hệ phức tạp thường thấy trong phân loại. Ví dụ tài liệu “Các phương pháp
Toán Lí” có thể vừa thuộc lớp Toán học, vừa thuộc lớp “Vật Lý”. Điều này dẫn đến
sự ra đời của một cấu trúc phân loại phức tạp hơn là Bản thể luận Cys, nó tương tự
cây phân cấp nhưng mỗi node có thể có nhiều cha (tương ứng việc một tài liệu có
thể được phân loại vào nhiều nhón khác nhau).
Hình 2.6. Một Bản thể luận Cys
ii. Phân loại phân nhóm
36
Phân loại phân nhóm là phân loại các thực thể thành các mục khác nhau (biên
mục). Tùy theo ngữ cảnh cụ thể mà mỗi phân mục này có thể được gọi là: kiểu, loại,
hạng,... hay lớp mà mỗi tài liệu thuộc về. Ví dụ, các tài liệu có thể được chia thành
các kiểu: Sách, Tạp chí, Bài báo, Luận Văn, Báo cáo,.... Có hai dạng là phân loại
theo cách liệt kê và định nghĩa:
Liệt kê: Là tiến hành liệt kê mỗi phần tử cụ thể vào từng phân mục mà nó
thuộc về. Ví dụ Ngôn ngữ lập trình: {Java, C/C++, php,...}; Hệ quản trị cơ sở
dữ liệu {MySQL, SQL Server, Oracle,.. }.
Định nghĩa: Được thực hiện bằng cách chỉ ra các tính chất của mỗi nhóm,
sau đó, có thể xác định mỗi phần tử đó thỏa mãn các tính chất chung của
phân nhóm đó không. Cách phân loại này mang tính chất chọn lọc, loại bỏ
các phần tử không thỏa mãn tính chất ra khỏi phân nhóm.
2.3.4. Xây dựng Bản thể luận
Có nhiều phương pháp khác nhau để xây dựng một Bản thể luận, nhưng nhìn
chung các phương pháp đều thực hiệ n hai bước cơ bản là: xây dựng cấu trúc lớ p
phân cấp và định nghĩa các thuộc tính cho lớp. Trong thực tế, việc phát triển một
Bản thể luận để mô tả lĩnh vực cần quan tâm là một công việc không đơn giản, phụ
thuộc rất nhiều vào công cụ sử dụng, tính chất, quy mô, sự thường xuyên biến đổi
của miền cũng như các quan hệ phức tạp trong đó. Những khó khăn này đòi hỏi
công việc xây dựng Bản thể luận phải là một quá trình lặp đi lặp lại, mỗi lần lặp cải
thiện, tinh chế và phát triển dần sản phẩm chứ không phải là một quy trình khung
với các công đoạn tách rời nhau. Công việc xây dựng Bản thể luận cũng cần phải
tính đến khả năng mở rộng lĩnh vực quan tâm trong tương lai, khả năng kế thừa các
hệ thống Bản thể luận có sẵn, cũng như tính linh động để Bản thể luận có khả năng
mô tả tốt nhất các quan hệ phức tạp trong thế giới thực.
Một số nguyên tắc cơ bản trong xây dựng Bản thể luận thông qua các bước
sau:
Xác định miền quan tâm và phạm vi của Bản thể luận
Xem xét việc kế thừa các Bản thể luận có sẵn.
Liệt kê các thuật ngữ quan trọng trong Bản thể luận
Xây dựng các lớp và cấu trúc lớp phân cấp
37
Định nghĩa các thuộc tính và quan hệ cho lớp
Định nghĩa các ràng buộc về thuộc tính và quan hệ của lớp
Tạo các thực thể cho lớp
Trong thư viện số ngữ nghĩa Bản thể luận có thể bao gồm các khối sau:
Khối các khái niệm mô tả tri thức về lĩnh vực dưới dạng các chủ đề và phân
nhóm, phân cấp của chúng. Với mỗi nhóm chủ đề, có thể có các thuộc tính mô
tả kèm theo.
Khối các lớp mô tả nhóm các loại tài nguyên được chia sẻ trong hệ thống. Với
mỗi nhóm tài nguyên, các biểu ghi thư mục được lựa chọn sử dụng để mô tả.
Khối các nhóm đối tượng người sử dụng của hệ thống.
2.4. Thư viện số ngữ nghĩa và mạng xã hội
Với sự phát triển mạnh mẽ của công nghệ Web người dùng không chỉ tiếp
nhận thông tin một cách thụ động một chiều, mà còn là nhân tố trực tiếp tham gia
vào quá trình đóng góp tri thức cho cộng động. Mạng xã hội (hay mạng xã hội ảo)
là một trong những dịch vụ kết nối các thành viên với nhau để chia sẻ thông tin với
nhiều mục đích khác nhau mà không phân biệt không gian và thời gian. Trong mạng
xã hội, mọi thành viên đều có thể đưa ra ý kiến của mình về một vấn đề, và chia sẻ
các thông tin cho các thành viên khác.
Với các thư viện truyền thống, không có khả năng cung cấp các dịch vụ khác
ngoài việc cung cấp cho người dùng tài liệu mình cần. Việc tích hợp mạng xã hội
vào các thư viện số làm cho người dùng có nhiều thông tin hơn khí chọn lựa cho
mình một tài liệu thỏa mãn mà không mất thời gian, đồng thời cũng có thể chia sẻ
cho cộng đồng các thông tin hữu ích về các tài nguyên, nhằm thúc đẩy sự liên kết và
phát triển của tổ chức. Chẳng hạn người dùng có thể bình luận, đánh giá về một tài
nguyên để người khác tham khảo trong việc chọn tài liệu, hoặc có thể chia sẻ một
tài liệu hay cho những người bạn của mình. Hơn nữa, người dùng có thể đánh dấu
trong tài liệu (bookmark), để bạn của mình vào xem nhằm tiết kiệm thời gian lục
tìm tài liệu.
Để quản lí được sự liên kết giữa các thành viên trong cộng đồng, một trong
những giải pháp được đề xuất là sử dụng bản thể luận FOAF (The Friend Of A
friend), nhằm biểu diễn cộng đồng người sử dụng. FOAF dựa trên lược đồ RDF
nhằm mô tả hồ sơ cá nhân (trong thư viện số là tập các tài liệu, bookmark, danh
38
sách bạn bè, các thông tin cá nhân khác của người dùng), và mạng xã hội mà người
đó tham gia theo cách ngữ nghĩa. Chi tiết về FOAF có thể xem tại [17].
2.5. Tìm kiếm trong thư viện ngữ nghĩa
Tìm kiếm thông tin là dịch vụ cần phải có trong bất cứ hệ thống thông tin nào,
bởi vì đó là phương thức để truy cập thông tin. Chức năng tìm kiếm sẽ khai thác các
thuộc tính và thể loại thông tin và các mối quan hệ giữa chúng. Sau khi người sử
dụng mô tả loại tài liệu mà mình cần thông qua từ khóa hoặc các mô tả cơ bản về tài
liệu, hệ thống sẽ tự động thực hiện tìm kiếm thông tin trong CSDL tài liệu và trả lại
kết quả cho người dùng.
Hầu hết các hệ thống thư viện đều hỗ trợ việc tìm kiếm các siêu dữ liệu (các
trường trong biểu ghi thư mục). Với sự phát triển của các công nghệ tìm kiếm, kĩ
thuật tìm kiếm dựa trên nội dung tài liệu đã được giới thiệu, tuy nhiên chúng thường
giới hạn trong một phạm vi rất hạn chế của các định dạng tài liệu (html, txt,...).
Trong phạm vi của luận văn này, chỉ đề cập đến việc tìm kiếm ngữ nghĩa trên các
siêu dữ liệu.
2.5.1. Tìm kiếm dựa trên sự phân loại
Cách tìm kiếm này dựa trên sự phân loại tài liệu theo phân loại Bản thể luận
(đề cập 2.3.3). Bằng cách duyệt các mục, các lớp người dùng có thể không cần nhập
thông tin mà vẫn có kết quả.
Ví dụ người dùng muốn tìm các tài liệu trong lĩnh vực Giải tích có thể duyệt
theo thứ tự sau: Lĩnh vực Khoa học Tự nhiên Toán Học Toán học Sơ Cấp
Giải tích.
2.5.2. Tìm kiếm ngữ nghĩa
Cách tìm kiếm phổ biến và thông dụng nhất hiện nay là cách tìm kiếm theo từ
khóa, hệ thống sẽ lọc ra các tài liệu có các thông tin chính xác hoặc gần chính xác
với từ khóa. Trong cách thư viện ngữ nghĩa, các từ khóa sẽ được kết hợp với các
điều kiện ngữ nghĩa như: Tác giả, Ngôn ngữ, Nhà xuất bản, Thể loại,...
Người dùng nhập vào câu truy vấn (bao gồm từ khóa và thông tin ngữ nghĩa),
hệ thống sẽ phân tích câu truy vấn từ ngôn ngữ tự nhiên (quá trình xử lí ngôn ngữ tự
nhiên), chuyển chúng sang dạng ngôn ngữ truy vấn RDF (chẳng hạn SPARQL). Hệ
39
thống sẽ dùng câu truy vấn RDF để tìm các kết quả tương ứng trong kho tài nguyên
. Kết quả trả về được mô tả dưới dạng XML, giao diện hệ thông sẽ phân tích các tệp
tin XML và hiển thị cho người dùng.
Hình 2.7. Quá trình tìm kiếm trong thư viện số ngữ nghĩa
Trong thư viện số ngữ nghĩa, tài nguyên RDF có thể được chia sẻ, vì thế khi
các thư viện được liên kết với nhau, người dùng chỉ cần truy cập vào một thư viện,
nếu tài liệu không có trong CSDL nội tại, hệ thống sẽ tìm trong các thư viện khác.
40
Hình 2.8. Quá trình chia sẻ dữ liệu RDF
Các giao thức sử dụng trong việc chia sẻ dữ liệu có thể sử dụng các giao thức
thông thường mà không cần phải cải tiến thêm như: Dienst, Z39.50, OAI-PMH, các
giao thức P2P (ALVIS, OCKHAM, HyperCuP), v.v...
Kết luận
Trong chương này, đề cập đến một cách tiếp cận mới trong việc xây dựng hệ
thống lưu trữ các tài liệu số đó là thư viện số ngữ nghĩa. Thư viện số ngữ nghĩa là
sự mở rộng của thư viện số và kết hợp với công nghệ Web 2.0 và web ngữ nghĩa.
Thư viện số ngữ nghĩa đã khắc phục những hạn chế của thư viện số hiện tại: quản lí
các tài nguyên một cách hiệu quả hơn, khắc phục những hạn chế của các phương
pháp tìm kiếm thông thường, kết hợp được với các nguồn tài nguyên khác nhau.
Cũng giống như web ngữ nghĩa, Bản thể luận đóng vai trò không thể thiếu
được trong thư viện số ngữ nghĩa. Bản thể luận làm cơ sở cho việc phân loại tri thức
trong thư viện số, hỗ trợ quá trình suy diễn trong tìm kiếm ngữ nghĩa. Xây dựng bản
thể luận cho các biểu ghi thư mục là bước cơ bản trong xây dựng thư viện số ngữ
nghĩa.
41
Chương 3. Xây dựng thư viện số ngữ nghĩa dựa
trên phần mềm JeromeDL
3.1 Giới thiệu phần mềm JeromeDL
JeromeDL là một phần mềm mã nguồn mở về thư viện số ngữ nghĩa (dưới
giấy phép của BSD Open Source) [16], chạy trên nền Web được viết bằng ngôn ngữ
Java. JeromeDL được thiết kế nhằm đáp ứng đầy đủ các nghiệp vụ của thư viện, nó
tương tác với người dùng thông qua giao diện Web, như những thư viện số khác nó
cho phép người dùng tìm kiếm, duyệt tài liệu, xuất bản tài liệu lên web một cách dễ
dàng và hỗ trợ nhiều loại định dạng tài liệu, mỗi tài liệu đều lưu trữ các biểu ghi thư
mục phục vụ cho việc tìm kiếm theo các trường. Ngoài ra, JeromeDL áp dụng công
nghệ Web ngữ nghĩa và Mạng xã hội để cải tiến các chức năng duyệt và tìm kiếm
các tài nguyên trong thư viện.
42
Hình 3.1. Giao diện của JeromeDL
Trong JeromeDL hỗ trợ đầy đủ các siêu dữ liệu biểu ghi thư mục thông dụng
như Dublin Core, BibTeX, MARC21. Tất cả các tài liệu trog JeromeDL đều được
biểu diễn dưới định dạng RDF dùng để truy vấn và trao đổi dữ liệu với các ứng
dụng khác. Với mạng xã hội trong JeromeDL và các dịch vụ ngữ nghĩa, người dùng
có thể đánh dấu lại (bookmarks) các tài liệu, hay các tiêu đề cần quan tâm, đồng
thời mọi thành viên trong các nhóm bạn bè có thể xem bookmarks của nhau, chú
giải và chia sẻ các tri thức cho cộng đồng. Ngoài ra người dùng có thể đánh giá,
bình luận về nội dung của tài liệu, phản hồi lại đánh giá của người khác.
3.2. Kiến trúc và Bản thể luận trong JeromeDL
3.2.1. Kiến trúc của JeromeDL
Tương tự như kiến trúc tổng quát của các thư viện số, JeromeDL cung cấp một
giao diện người dùng và tầng Middleware, cùng với tầng xử lí các danh mục tài liệu
và các tài nguyên. Tầng Middleware làm nhiệm vụ xử lí các truy vấn tìm kiếm,
quản lí tài nguyên và hồ sơ người dùng. Nó cũng cung cấp các giao diện cho công
tác quản trị, và cổng giao tiếp với các hệ thống khác. Kiến trúc của JeromeDL được
mô tả như hình sau [10]:
43
Tì
m
k
iế
m
tà
i n
gu
yê
n
D
uy
ệt
tà
i n
gu
yê
n
H
iể
n
th
ị t
ài
n
gu
yê
n
Q
uả
n
lí
ng
ư
ờ
i d
ùn
g
Q
uả
n
lí
tà
i n
gu
yê
n
Hình 3.2. Kiến trúc của JeromeDL
Trong kiến trúc của JeromeDL đặc biệt nhấn mạnh vào phần ứng dụng Web
ngữ nghĩa dựa trên các siêu dữ liệu. Các phần chính của JeromeDL bao gồm:
Quản lí tài nguyên: Các tài nguyên được miêu tả ngữ nghĩa theo bản thể
luận Jerome (đề cập ở phần sau), cộng với một tập chỉ mục của nội
dung tài nguyên và các miêu tả trong các biểu ghi thư mục MARC21 và
BibTeX. Trong JeromeDL, người dùng bình thường chỉ có thể thêm tài
nguyên vào CSDL thông qua giao diện Web, để thực hiện việc quản trị,
JeromeDL cung cấp riêng một giao diện cho quản trị viên, cho phép
quản li và thêm các siêu dữ liệu (Các biểu ghi thư mục MARC21,
BibTeX, và Bản thể luận) vào cơ sở tri thức, khi một tài liệu được đưa
lên, nó phải được quản tri viên phê duyệt thì mới được xuất bản cho
người dùng.
Tìm kiếm và duyệt tài nguyên: thực hiên truy vấn tài nguyên theo yêu
cầu của người dùng dựa trên các dữ liệu ngữ nghĩa
Quản lí hồ sơ người dùng: Quản lí người sử dụng thư viện, và mối quan
hệ của người dùng với cộng đồng sử dụng thư viện.
44
Quản lí chia sẻ tài nguyên: Cung cấp một cổng giao tiếp với các hệ
thống khác. Cơ sở dữ liệu của JeromeDL không chỉ được truy vấn nội
bộ trong hệ thống mà nó còn cho phép các thư viện và ứng dụng khác
sử dụng.
3.2.2. Bản thể luận trong JeromeDL
Trong JeromeDL có 3 loại Bản thể luận, đó là Bản thể luận về các Biểu ghi
thư mục, Bản thể luận về cấu trúc của các tài liệu, Bản thể luận FOAFRealm (dựa
trên Bản thể luận FOAF, mô tả về mối quan hệ giữa người dùng và sự tương tác của
họ với các tài nguyên).
i. Bản thể luận Biểu ghi thư mục
Mục đích chính của việc xây dựng các Bản thể luận Biểu ghi thư mục là để
chú giải cho các tài nguyên, vì vậy không cần thiết phải mô tả đầy đủ toàn bộ nội
dung của tài liệu. Hiện tại có rất nhiều định dạng cho việc xây dựng các biểu ghi thư
mục (Dublin Core, BibTeX, MARC21), JeromeDL đề xuất một Bản thể luận có thể
bao quát được toàn bộ các định dạng biểu ghi thư mục khác nhau, đó là MarcOnt.
Với MarcOnt ta có thể dễ dàng chuyển đổi qua lại giữa các định dạng, bởi vì nó
được kế thừa từ Dublin Core, BibTeX, MARC21.
hasEditor
Hình 3.3. Bản thể luận MarcOnt
Trong JeromeDL để chuyển đổi từ các định dạng biểu ghi thư mục sang dạng
ngữ nghĩa cũng bao gồm ba bước chính. Cho ví dụ, để chuyển đổi một biểu ghi thư
mục MARC21 sang dạng ngữ nghĩa MartOnt gồm các bước sau: (1) Chuyển các têp
45
tin MARC21 sang định dạng XML, gọi là tệp tin MARC-XML; (2) Chuyển các tệp
tin MARC21-XML về dạng RDF (tệp tin MARC-RDF); (3) Chuyển đồ thị RDF tới
dạng MartOnt. Các lớp, các thuộc tính và các thể hiện cụ thể của MarcOnt được liệt
kê chi tiết như dưới đây.
Bảng 3. Các lớp, thuộc tính, thể hiện của Bản thể luận MarcOnt
Các lớp marcont:AccessMedium, marcont:Article, marcont:Book, marcont:Booklet, marcont:Cluster, marcont:Collection, marcont:Conference, marcont:Coverage, marcont:DemoSession, marcont:Event, marcont:Faculty, marcont:Inbook, marcont:Incollection, marcont:Inproceedings, marcont:Institute, marcont:Journal, marcont:Lab, marcont:LightingTalk, marcont:Manual, marcont:Mastersthesis, marcont:Meeting, marcont:Misc, marcont:Organization, marcont:PhDthesis, marcont:PosterSession, marcont:Presentation, marcont:Proceedings, marcont:PublicationMedium, marcont:Resource, marcont:Review, marcont:ShortTalk, marcont:SocialMedium, marcont:Talk, marcont:Techreport, marcont:Tutorial, marcont:University, marcont:Unpublished, marcont:WebSite, marcont:Workshop
Các thuộc tính marcont:hasAbstract, marcont:hasAddress, marcont:hasAffiliation, marcont:hasAuthor, marcont:hasBeginDate, marcont:hasContents, marcont:hasContributor, marcont:hasCoverage, marcont:hasCreator, marcont:hasDCMIType, marcont:hasDOI, marcont:hasDate, marcont:hasDescription, marcont:hasDomain, marcont:hasEdition, marcont:hasEditor, marcont:hasEndDate, marcont:hasHumanCreator, marcont:hasISBN, marcont:hasISSN, marcont:hasIdentifier, marcont:hasJournal, marcont:hasKeyword, marcont:hasMonth, marcont:hasNote, marcont:hasNumber, marcont:hasOrder, marcont:hasOrganization, marcont:hasOriginalPublicationMedium, marcont:hasPages, marcont:hasPagesFrom, marcont:hasPagesTo, marcont:hasPublisher, marcont:hasRelatedEvent, marcont:hasReview, marcont:hasReviewDate, marcont:hasReviewer, marcont:hasReviewComment, marcont:hasSchool, marcont:hasSeries, marcont:hasSource, marcont:hasSponsor, marcont:hasTitle, marcont:hasTopic, marcont:hasURL, marcont:hasVolume, marcont:hasYear, marcont:howPublished, marcont:isPartOf, marcont:isPeerOf, marcont:presentedAt, marcont:publishedIn
46
Các thể hiện marcont:IElectronic, marcont:IInternational, marcont:IInternet, marcont:ILocal, marcont:INational, marcont:IPrinted
ii. Bản thể luận Cấu trúc nội dung
Không chỉ xây dựng các bản thể luận cho các biểu ghi thư mục, JeromeDL
cũng xây dựng bản thể luận cho cấu trúc nội dung tài liệu. Cấu trúc của nội dung tài
liệu có thể được tổ chức khác nhau tùy theo vào loại tài liệu, ví dụ: một quyển sách
có thể được chia thành các chương, một tài liệu video lại được chia thành các phần,
các tập khác nhau.
Hình 3.4. Bản thể luận cấu trúc nội dung
JeromeDL cố gắng xây dựng Bản thể luận cấu trúc nội dung một cách uyển
chuyển nhất sao cho khi thêm hay bớt một khái niệm không ảnh hưởng đến các dữ
liệu đã tồn tại trước đo. Bản thể luận Cấu trúc nội dung cùng với biểu ghi thư mục
đã cung cấp một cách nhìn tổng thể trong mô tả các tài liệu và hỗ trợ đây đủ cho
việc tìm kiếm.
47
Bảng 4. Các lớp, thuộc tính, thể hiện của Bản thể luận cấu trúc nội dung
Các lớp jeromedl:BinaryResource, jeromedl:Chapter, jeromedl:ComputedResource, jeromedl:Context, jeromedl:DynamicCollection, jeromedl:DynamicCollectionType, jeromedl:ImageResource, jeromedl:InformationObject, jeromedl:MediaPart, jeromedl:MediaResource, jeromedl:Page, jeromedl:Part, jeromedl:Resource, jeromedl:ResourceType, jeromedl:ResourcesAggregationService, jeromedl:SubmissionStatusType
Các thuộc tính jeromedl:actsOn, jeromedl:hasAttachment, jeromedl:hasBookType, jeromedl:hasCollectionOrder, jeromedl:hasCollectionSpecification, jeromedl:hasCollectionType, jeromedl:hasContext, jeromedl:hasCopyrightsOwner, jeromedl:hasCover, jeromedl:hasCurrentVersion, jeromedl:hasDescription, jeromedl:hasFileSize, jeromedl:hasInvocationParam, jeromedl:hasMimeType, jeromedl:hasNumberOfPages, jeromedl:hasPages, jeromedl:hasPart, jeromedl:hasParts, jeromedl:hasPosition, jeromedl:hasPreviousVersion, jeromedl:hasRepresentation, jeromedl:hasSimplerRepresentation, jeromedl:hasSpecification, jeromedl:hasSubmissionStatus, jeromedl:hasUploadDate, jeromedl:hasVersionComment, jeromedl:hasVersionCreator, jeromedl:hasVersionDate, jeromedl:hasVersionNumber, jeromedl:invokesService, jeromedl:isPeerReviewed, jeromedl:isPreprintVersion, jeromedl:isScaledToFit, jeromedl:isSizeWithSubCollections, jeromedl:isUnion, jeromedl:isUploadedBy, jeromedl:isVisible, jeromedl:publishedAt
iii. Bản thể luận FOAFRealm
Để quản lí hồ sơ người dùng, JeromeDL sử dụng bản thể luận FOAFRealm.
FOAFTRealm là sự cải tiến của FOAF với nhiều khái niệm mới cho phù hợp với
mạng xã hội gắn liền với các siêu dữ liệu trong thư viện. Chi tiết về FOAFRealm có
thể xem tại [15]. JeromeDL đã tận dụng lợi thế tối đa của mạng xã hội trong việc hỗ
trợ người dùng. Người dùng có thể tạo ra bookmarks các tài liệu, bình luận gợi ý
cho mọi người các tài liệu thuộc lĩnh vực mà họ quan tâm, và những người bạn của
họ có thể tham chiếu đến.
48
Hình 3.5. Mạng xã hội trong JeromeDL
3.3. Truy vấn trong JeromeDL
Thuật toán tìm kiếm trong JeromeDL bao gồm ba bước chình, được mô tả như
hình 3.6. Trong mỗi bước yêu cầu các siêu dữ liệu khác nhau [7]:
Bước A: Đầu tiên là tìm kiếm qua tập chỉ mục của nội dung tài nguyên
và nội dung chú giải của người
Bước B: Tìm kiếm trên các mô tả biểu ghi thư mục.
Bước C: Bước cuối cùng là tìm kiếm theo ngữ nghĩa với định hướng
người dùng, bước này dựa trên mô tả ngữ nghĩa về tài nguyên và thông
tin về sự phân loại
49
Hình 3.6. Các bước trong truy vấn JeromeDL
Thuật toán tìm kiếm trong JeromeDL được thiết kế nhằm thỏa mãn các mục
tiêu sau [7]:
- Các kết quả trả về của truy vấn có thể không chứa trực tiếp các giá trị trong
câu truy vấn
- Các giá trị trong cấu truy vấn phải được phân giải dưới ngữ cảnh người dùng.
Các mục tiêu trên có thể đặt được bởi việc tổ hợp của kĩ thuật tìm kiếm trên
nội dung văn bản, tìm kiếm trên các biểu ghi thư mục, và tìm kiếm ngữ nghĩa dựa
trên mô tả ngữ nghĩa của tài nguyên. Giai đoạn tìm kiếm ngữ nghĩa được chuẩn bị
bởi các truy vấn RDF, ngoài ra câu truy vấn được công thêm các thông tin về sở
thích của người dùng nhằm loại bỏ các kết quả không cần thiết. Một người dùng có
thể chỉ ra các lĩnh vực mà người đó quan tâm trong hồ sơ của mình, các thông tin
bình luận, chú giải của người dùng trên các tài nguyên của mạng lưới bạn bè cũng
được sử dụng để tim kiếm.
Giả mã của thuật toán tìm kiếm được mô tả chi tiết như dưới đây.
procedure SEMANTIC_SEARCH(QO) : RO
50
// – fulltext search – phase A –
RO.results ←FULLTEXT_QUERY(QO.fulltext);
// – properties search –
for each p ∈ QO.properties do
begin
if p.name == ”keyword” then
for each v ∈ p.values do
values ←GET_SIMPLE_FORM(v);
end for
end if
RO ←FIND_RESOURCES(p);
end for
end procedure SEMANTIC_SEARCH
procedure FIND_RESOURCES(property) : RO
// – phase B –
RO.results ←XMLQ(property, Type.Marc21);
RO.results ←RO.results ∨ XMLQ(property, Type.BibTeX);
// – phase C –
RO.results ←RO.results ∨ RDFQ(property);
if not SizeOf(RO.results)∈ then
RO ←EXPAND_QUERY(property, RO);
end if
end procedure FIND_RESOURCES
Ở đây QO là đối tượng truy vấn với tên các thuộc tính và giá trị của nó làm
tiêu chí tìm kiếm; RO là đối tượng kết quả trả về. Thủ tục FULLTEXT_QUERY
(bước A) tìm kiếm các tài nguyên dựa trên các tập chỉ mục văn bản mang nội dung
51
tài liệu. Trường hợp chỉ mục nội dung không tương thích, hệ thống sẽ tìm kiếm
trong các lời bình luận, chú giải của người dùng. Ở bước C, thủ tục RDFQ thực hiện
truy vấn vào kho chứa RDF. Trường hợp số bản ghi trả về (số lượng tài liệu) nằm
ngoài phạm vi , thủ tục EXPAND_QUERY được gọi. Trường hợp số
bản ghi nhỏ hơn giá trị MIN, hệ thống sẽ tìm kiếm dựa trên các khái niệm tương
đương hoặc cao hơn, chẳng hạn với một từ khóa người dùng đưa vào sẽ tìm kiếm
trong một miền các từ khóa có nghĩa tương tự nhau (ví dụ: P2P ~ Mạng chia sẻ ~
Mạng đồng đẳng). Trường hợp số bản ghi lớn hơn giá trị MAX, hệ thống sẽ loại bỏ
các tài nguyên mà có các khái niệm tương đương, hoặc lấy các kết quả ở mức thấp
hơn trong cây phân loại [7].
JeromeDL cũng cung cấp một cơ sở hạ tầng truyền thông cho các hệ thống
khác truy nhập vào hệ thống. JeromeDL dựa trên giao thức SOAP, sử dụng Web
services để xây dựng một mạng chia sẻ ngang hàng P2P cho phép JeromeDL kết
nối với các dịch vụ khác.
3.4. Sử dụng JeromeDL
JeromeDL chia đối tượng sử dụng thành bốn loại khác nhau:
- Người dùng không đăng kí: Đối tượng loại này không có hồ sơ trong CSDL
của hệ thống. Họ có thể duyệt và tìm kiếm tài liệu, nhưng không thể sử dụng các
chức năng như tạo bookmarks.
- Người dùng đã đăng kí (thành viên): Đối tượng này có một tài khoản trong
CSDL và được quản lí trong bản thể luận FOAFRealm.
- Các nhóm người dùng: Là tập hợp các thành viên trong một nhóm liên kết
nào đó. Các thành viên trong nhóm này có thể xuất bản các tài liệu lên thư viện.
- Quản trị hệ thống: Đây là các thành viên có quyền lực cao nhất trong hệ
thống. Họ có sử dụng tất cả các chức năng trong hệ thống, chẳng hạn phê duyệt các
tài liệu, đánh lại chỉ mục, làm mới CSDL, cấu hình mạng, v.v...
Hệ thống JeromeDL cung cấp cho người dùng các kiểu tìm kiếm sau:
- Tìm kiếm đơn giản dựa trên từ khóa
- Tìm kiếm nâng cao dựa trên các biểu ghi thư mục
52
- Tìm kiếm ngữ nghĩa: người dùng có thể cung cấp trực tiếp câu truy vấn RDF
hoặc sử dụng các mẫu truy vấn có sẵn, chẳng hạn: “Show me all resources written
by a friends of mine” (Liệt kê tất cả các tài liệu được viết bởi bạn tôi)
Hình 3.7. Giao diện chức năng tìm kiếm ngữ nghĩa
Sau khi tìm kiếm kết quả, có thể hiển thị tài liệu bởi việc chọn một kết quả từ
danh sách trả về, sau đó có thể đánh giá, tạo bookmarks.
Để xuất bản tài liệu, người dùng chọn tài liệu cần xuất bản và cung cấp các
thông tin (các siêu dữ liệu) mà JeromeDL đề xuất.
53
Hình 3.8. Giao diện chức năng xuất bản tài liệu
Kết luận
Trong chương này đã giới thiệu về hệ thống thư viện số ngữ nghĩa JeromeDL.
Đây là một hệ thống phần mềm mã nguồn mở cung cấp khá đầy đủ các chức năng
của một thư viện số ngữ nghĩa. JeromeDL xây dựng ba loại bản thể luận: Bản thể
luận về các biểu ghi thư mục MarcOnt, Bản thể luận về cấu trúc nội dung tài liệu,
Bản thể luận FOAFRealm quản lí các thành viên trong mạng xã hội. Dựa trên các
bản thể luận này, cho phép xây dựng nên một công cụ tìm kiếm ngữ nghĩa (bao gồm
cả tìm kiếm theo từ khóa dựa trên chỉ mục).
54
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
Web ngữ nghĩa ra đời đã đánh dấu một bước phát triển mới trong công nghệ
Web, nó tạo ra một cách thức mới trong việc tiếp cận thông tin. Tuy nhiên việc ứng
dụng Web ngữ nghĩa vào cách lĩnh vực cụ thể vẫn đang còn nhiều thách thức, và
cần sự hỗ trợ của những lĩnh vực chuyên ngành khác nhau. Luận văn này đã trình
bày về một ứng dụng điển hình và cụ thể nhất của Web ngữ nghĩa đó là thư viện số
ngữ nghĩa. Tuy chưa bao hàm được hết các vấn đề, song từ những kết quả đặt được
có thể rút ra một số kết luận:
Web ngữ nghĩa cung cấp một cơ chế cho phép máy tính “hiểu” và xử lí
được các thông tin.
Thư viện số ngữ nghĩa là sự kết hợp của công nghệ Web ngữ nghĩa và
Web 2.0. Bằng cách tích hợp ngữ nghĩa vào các thư viện số làm cho thư
viện số ngữ nghĩa có nhiều ưu điểm nổi trội so với các thư viện khác,
nó hỗ trợ cơ chế tìm kiếm ngữ nghĩa và chia sẻ các tài nguyên với các
hệ thống khác một cách thuận lợi.
Các biểu ghi thư mục là một trong những siêu dữ liệu quan trọng, việc
xây dựng Bản thể luận cho các biểu ghi thư mục là vấn đề then chốt
trong việc xây dựng thư viện số ngữ nghĩa.
Mạng xã hội với nhưng ưu thế của nó, khi tích hợp vào các thư viện số
làm cho thư viện không chỉ đơn thuần là nơi cung cấp thông tin một
chiều mà là nơi tạo ra các nhóm liên kết, cùng nhau chia sẻ và tạo ra tri
thức, thúc đẩy sự phát triển của tổ chức.
Trong luận văn này mới chỉ dừng lại ở mức bao quát về một ứng dụng thư
viện số ngữ nghĩa, kế thừa từ mô hình thư viện số ngữ nghĩa đã đề cập, có thể chỉ ra
một số vấn đề còn tồn đọng cần được phát triển:
- Xây dựng các bản thể luận mạnh hơn trong việc biểu diễn ngữ nghĩa của các
tài liệu, chẳng hạn bản thể luận về nội dung tài liệu. Tăng cường khả năng suy luận
ngữ nghĩa
55
- Áp dụng kĩ thuật xử lí ngôn ngữ tự nhiên trong việc phân tích câu truy vấn
một cách đầy đủ.
- Xây dựng mạng xã hội ảo có sự tương tác cao, phát huy được sức mạnh của
từng cá nhân trong việc chia sẻ tri thức cho cộng đồng thông qua thư viện.
56
TÀI LIỆU THAM KHẢO
Tiếng Việt
1. Hà Quang Thụy, Phan Xuân Hiếu, Đoàn Sơn, Nguyễn Trí Thành, Nguyễn Thu
Trang, Nguyễn Cẩm Tú (2009). “Giáo trình khai phá dữ liệu Web”. Nhà xuất bản
Giáo dục Việt Nam.
2. Nguyễn Thị Mỹ Trang, Hoàng Hữu Hạnh (2009). “Xây dựng Ontology cho thư
viện số”. Tạp chí Khoa học, Đại học Huế, Số 53.
Tiếng Anh
3. H. Peter Alesso, Craig F. Smith (2006). “Thinking on the Web: Berners-Lee,
Godel and Turing”. John Wiley & Sons, Inc.
4. Thomas B. Passin (2004). “Explorer’s Guide to the Semantic Web”. Manning
Publications Co.
5. Grigoris Antoniou, Frank van Harmelen (2008). “A Semantic Web Primer”.
Massachusetts Institute of Technology.
6. Sebastian Ryszard Kruk, Bill McDaniel (2009). “Semantic Digital Libraries”.
Springer.
7. Sebastian Ryszard Kruk (2005). “JeromeDL – A Digital Library on the Semantic
Web”. Digital Enterprise Research Institute
8. Sebastian Ryszard Kruk, Bernhard Haslhofer, Piotr Piotrowski, Adam Westerski,
Tomasz Woroniecki (2006). “Role of Ontologies in Semantic Digital Libraries”.
NKOS Workshop.
9. Sebastian R. Kruk, Stefan Decker, Bernhard Haslhofer, Predrag Kneževic, Sandy
Payette, Dean Krafft (2007). “Tutorial – Semantic Digital Libraries”. DERI NUI
Galway, University of Vienna, Fraunhofer IPSI, Cornell University.
10. Sebastian Ryszard Kruk, Stefan Decker, Lech Zieborak (2005). “JeromeDL -
Adding Semantic Web Technologies to Digital Libraries ”. Digital Enterprise
Research Institute , NUI Galway, Ireland.
57
11. Sebastian Ryszard Kruk, Tomasz Woroniecki, Adam Gzella, Maciej Dąbrowski
(2005). “JeromeDL – a Semantic Digital Library”. Digital Enterprise Research
Institute , NUI Galway, Ireland.
12. Sebastian Ryszard Kruk, Mariusz Cygan, Ewelina Kruk, Sławomir,
Grzonkowski, Tomasz Woroniecki (2007). “JeromeDL 2.0.1 User Guide ”. Digital
Enterprise Research Institute , NUI Galway, Ireland.
Internet
13.
14.
15.
16.
17.
Các file đính kèm theo tài liệu này:
- LUẬN VĂN- ỨNG DỤNG WEB NGỮ NGHĨA TRONG LƯU TRỮ VÀ QUẢN LÍ CÁC TÀI LIỆU SỐ.pdf