ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CƠNG NGHỆ
HỒNG THỊ LOAN
TÌM HIỂU ÁP DỤNG CƠNG NGHỆ WEB NGỮ
NGHĨA VÀO XÂY DỰNG HỆ THỐNG CUNG CẤP
THÔNG TIN HƯỚNG NGỮ CẢNH
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
HÀ NỘI - 2014
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CƠNG NGHỆ
HỒNG THỊ LOAN
TÌM HIỂU ÁP DỤNG CƠNG NGHỆ WEB NGỮ
NGHĨA VÀO XÂY DỰNG HỆ THỐNG CUNG CẤP
THÔNG TIN HƯỚNG NGỮ CẢNH
Ngành: Công nghệ thông tin
Chuyên ngành: Kỹ thuật phần mềm
Mã số: 60480103
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
Cán bộ hướng dẫn: Ts.Vũ Thị Hồng Nhạn
HÀ NỘI - 2014
LỜI CẢM ƠN
Lời đầu tiên em xin bày tỏ lòng biết ơn sâu sắc đến cô giáo Vũ Thị Hồng Nhạn,
người đã cung cấp tài liệu, hướng dẫn rất tận tình và đóng góp ý kiến cho em trong
suốt q trình làm luận văn và hồn thành luận văn này.
Em xin chân thành cám ơn các thầy cô giáo trong khoa Công nghệ thông tin,
trường Đại học Công nghệ, Đại học Quốc gia Hà Nội. Các thầy cô đã giảng dạy, chỉ
dẫn và cung cấp cho em những kiến thức quý báu trong suốt thời gian học tập và
nghiên cứu tại trường.
Tôi xin trân trọng cảm ơn các bạn học viên cao học khóa K17 trường Đại học
Cơng nghệ đã đồn kết giúp đỡ và đồng hành cùng tơi trong chương trình học tại
trường.
Do trong quá trình nghiên cứu, tìm hiểu và thực nghiệm luận văn chắc chắn
không thể tránh khỏi sai sót nhất định, rất mong nhận được sự góp ý của thầy cơ giáo
và các bạn.
Em xin chân thành cảm ơn!
Hà Nội, tháng 12 năm 2014
Hoàng Thị Loan
TÌM HIỂU ÁP DỤNG CƠNG NGHỆ WEB NGỮ NGHĨA
VÀO XÂY DỰNG HỆ THỐNG CUNG CẤP THƠNG TIN
HƯỚNG NGỮ CẢNH
Hồng Thị Loan
Khóa QH-2010-I/CQ ngành cơng nghệ thơng tin
Tóm tắt luận văn
Ngày nay, với sự bùng nổ về mạng không dây, mạng internet, truyền thông, và
các thiết bị phần cứng nhỏ gọn đã cho ra đời các thiết bị di động thông minh với nhiều
tính năng hơn điện thoại thơng thường chỉ có tính năng gọi nghe như trước kia. Với
một thiết bị di động nói chung và điện thoại thơng minh nói riêng con người có thể
truy cập và nhận thơng tin ở bất cứ thời điểm nào và bất cứ nơi đâu. Cùng với sự phát
triển của các dịch vụ web thơng thường, thì các dịch vụ dựa trên ngữ cảnh mà cụ thể là
dựa trên vị trí (Location Base Service – LBS) đã và đang thu hút nhiều mối quan tâm
của các nhà nghiên cứu và người dùng. Hệ thống cung cấp thông tin dựa trên ngữ cảnh
thông thường được xây dựng dựa trên nhiều nguồn dữ liệu và thông tin khác nhau như
bản đồ, các đối tượng tham chiếu địa lý, sự di chuyển của người dùng, thông tin về cá
nhân người dùng và mối quan tâm của họ. Để biểu diễn nhiều loại dữ liệu phức tạp
như vậy các nghiên cứu trước đây thường sử dụng mô hình dữ liệu đa chiều. Tuy
nhiên sự nhập nhằng về ngữ nghĩa của thông tin dẫn tới cung cấp thông tin khơng
chính xác cho người sử dụng là vấn đề vẫn còn tồn tại. Luận văn này tập trung xây
dựng hệ thống cung cấp các dịch vụ thông tin dựa vào ngữ cảnh của người dùng.
Trước hết, nghiên cứu khảo sát phân loại dữ liệu thu thập được từ nhiều nguồn thông
tin với mục tiêu phân tách những loại dữ liệu sử dụng chung trong nhiều miền ứng
dụng hay dịch vụ. Điều này giúp các dịch vụ có khả năng chia sẻ thơng tin và đặc biệt
dễ dàng tích hợp những dịch vụ mới trong tương lai một cách thuận tiện dễ dàng hơn.
Để giải quyết sự nhập nhằng về ngữ nghĩa của thông tin, nghiên cứu sử dụng công
nghệ Web Ngữ nghĩa và Ontology trong mơ hình hóa dữ liệu. Hệ thống được triển
khai theo kiến trúc client – server và có khả năng thực hiện cung cấp thơng tin theo hai
cơ chế, đó là đẩy (push) và kéo (pull). Các thuật tốn cài đặt các thao tác tìm kiếm
thơng tin theo các điều kiện về vị trí, thời gian, cũng như vai trò và mối quan tâm của
người dùng cũng được phân tích và cài đặt. Cuối cùng, một hệ thống thử nghiệm được
xây dựng cho phép cung cấp hai dịch vụ là du lịch và giao thông trong khu vực thành
phố Hà Nội. Hệ thống xây dựng cho điện thoại thông minh với hệ điều hành android
và công cụ Protégé để biểu diễn thông tin và ngữ nghĩa. Kết quả của nghiên cứu hứa
2
hẹn cho sự ra đời của một hệ thống tích hợp và cung cấp nhiều loại dịch vụ dựa vào vị
trí và ngữ cảnh của người dùng một cách tiện lợi và hiệu quả.
Từ khóa: Cung cấp thơng tin theo sự kiện và ngữ cảnh, truy vấn theo điều kiện
không gian và thời gian, Web ngữ nghĩa và Ontology.
3
Lời cam đoan
Tôi xin cam đoan luận văn này là do tôi tự nghiên cứu và viết dưới sự hướng dẫn
của tiến sĩ Vũ Thị Hồng Nhạn, khơng có sự sao chép của người khác. Tất cả những tài
liệu tham khảo tôi đã liệt kê rõ ở phần cuối của luận văn. Tôi cam kết những nội dung
tham khảo nằm trong giới hạn cho phép theo quy chế của trường. Nếu sai sự thật, tơi
xin hồn tồn chịu trách nhiệm.
Tác giả luận văn
Hoàng Thị Loan
4
MỤC LỤC
LỜI CẢM ƠN ............................................................................................................. 1
Tóm tắt luận văn .......................................................................................................... 2
Lời cam đoan ............................................................................................................... 4
Chương 1 Giới thiệu .................................................................................................... 8
Chương 2 Khảo sát các hệ thống LBS và mơ hình dữ liệu hiện có ............................. 11
2.2 Mơ hình dữ liệu không gian - thời gian ............................................................ 12
2.3 Phân loại dữ liệu trong LBS ............................................................................. 13
Chương 3 Web Ngữ nghĩa ......................................................................................... 16
3.1 Web Ngữ nghĩa ................................................................................................ 16
3.1.1 Khái niệm Web Ngữ nghĩa ........................................................................ 16
3.1.2 Kiến trúc tầng của Semantic Web .............................................................. 17
3.1.2.1 URI ........................................................................................................ 17
3.1.2.2 Unicode .................................................................................................. 18
3.1.2.3 XML và tên không gian tên miền XML .................................................. 18
3.1.2.4 RDF và giản đồ RDF .............................................................................. 18
3.1.2.5 Ontology ................................................................................................ 18
3.1.2.6 Tầng Logic, Proof, Trust và Digital Signature ........................................ 19
3.2 OWL và Ontology............................................................................................ 19
3.2.1 Khái niệm Ontology .................................................................................. 19
3.2.2 Cấu trúc Ontology ..................................................................................... 20
3.2.3 OWL ......................................................................................................... 22
3.3 Truy vấn trong Semantic Web .......................................................................... 23
3.3.1 Giới thiệu về Cơ sở dữ liệu Graph ............................................................. 23
3.3.2 Truy vấn thông qua SPARQL.................................................................... 25
Chương 4 Thiết kế hệ thống....................................................................................... 27
4.1 Kiến trúc hệ thống ............................................................................................ 27
4.1.1 Thiết bị di động ......................................................................................... 27
4.1.2 Server ........................................................................................................ 28
4.2 Phân tích chức năng của hệ thống .................................................................... 29
4.2.1 Chức năng phía server ............................................................................... 29
4.2.2 Chức năng phía client ................................................................................ 33
4.3 Thiết kế cơ sở dữ liệu ....................................................................................... 34
4.3.1 Mơ hình hóa cơ sở dữ liệu theo mơ hình thực thể ...................................... 35
4.3.1.1 Xác định các thực thể trong hệ thống ...................................................... 35
4.3.1.2 Xác định mối quan hệ giữa các thực thể ................................................. 36
4.3.1.3 Sơ đồ quan hệ thực thể ........................................................................... 37
4.3.2 Mô hình hóa cơ sở dữ liệu bằng các Ontology ........................................... 38
4.3.2.1 Ontology dữ liệu Miền ........................................................................... 38
4.3.2.2 Ontology dữ liệu Nội dung ..................................................................... 41
5
4.3.2.3 Ontology dữ liệu Ứng dụng .................................................................... 47
4.4 Các thuật tốn tìm kiếm thơng tin..................................................................... 50
4.4.1 Thuật tốn dự đốn vị trí tương lai ............................................................ 52
4.4.2 Thuật tốn cung cấp thơng tin dựa trên vị trí người dùng........................... 52
4.4.3 Thuật tốn cung cấp thơng tin dựa trên vị trí và thời gian .......................... 53
4.4.4 Thuật tốn cung cấp thơng tin dựa trên profile .......................................... 54
4.4.5 Thuật tốn cung cấp thơng tin dựa trên lịch sử người dùng........................ 55
4.4.6 Thuật toán gợi ý sự kiện bên ngoài hệ thống ............................................. 56
4.4.7 Thuật tốn thơng báo tình trạng ùn tắc giao thơng ..................................... 57
Chương 5 Cài đặt hệ thống thử nghiệm ...................................................................... 58
5.1 Môi trường cài đặt............................................................................................ 59
5.1.1 Phần server................................................................................................ 59
5.1.2 Phần client ................................................................................................ 59
5.1.3 Kết nối giữa Client – Server ...................................................................... 59
5.2 Dữ liệu đầu vào và các yêu cầu cơ bản ............................................................. 60
5.3 Các kết quả thực nghiệm .................................................................................. 60
5.3.1 Quản lý Database phía server bằng Protégé. .............................................. 61
5.3.2 Cung cấp thông tin dịch vụ du lịch theo cơ chế push ................................. 64
5.3.3 Cung cấp thông tin dịch vụ du lịch theo cơ chế pull .................................. 66
5.3.4 Cung cấp thông tin giao thông theo cơ chế push ........................................ 67
5.3.5 Kết hợp hai dịch vụ thông tin du lịch và thông báo ùn tắc giao thông ........ 67
5.4 So sánh với một số hệ thống cung cấp thông tin dựa trên vị trí hiện tại ............ 68
Chương 6 Kết luận..................................................................................................... 69
TÀI LIỆU THAM KHẢO .......................................................................................... 70
6
DANH SÁCH CÁC HÌNH
Hình 2.1 Phân loại dữ liệu trong LBS ........................................................................ 14
Hình 3.1 Kiến trúc tầng của Web Ngữ nghĩa.............................................................. 17
Hình 3.2 Các loại Biểu đồ dữ liệu. ............................................................................. 24
Hình 3.3 Mơ hình Graph mơ tả quan hệ giữa Bengie và Bonnie................................. 24
Hình 4.1 Kiến trúc hệ thống ....................................................................................... 27
Hình 4.2 Sơ đồ phân rã chức năng phía Server........................................................... 30
Hình 4.3 Cây chức năng phía client ........................................................................... 33
Hình 4.4 Sơ đồ quan hệ thực thể ER .......................................................................... 37
Hình 4.5 Hình dáng của reach trong khơng gian ........................................................ 39
Hình 4.5 Ontology dữ liệu Miền ................................................................................ 40
Hình 4.6 Di chuyển của các đối tượng ....................................................................... 42
Hình 4.7 Quan hệ của trajectory với mơi trường và với trajectory khác ..................... 43
Hình 4.8 Giản đồ cơ sở dữ liệu của MOD .................................................................. 46
Hình 4.9 Trích đoạn Ontology Nội dung cho Dịch vụ du lịch .................................... 47
Hình 4.10 Trích đoạn Ontology Profile của người dùng ............................................. 49
Hình 4.11 Ontology Dịch vụ cho LBS giao thơng và du lịch...................................... 50
Hình 5.1 Kết nối giữa Client – Server ........................................................................ 59
Hình 5.2 Ontology quản lý Người dùng ..................................................................... 61
Hình 5.3 Ontology mơ tả quan hệ giữa các class ở Dữ liệu Nội dung Du lịch ............ 61
Hình 5.4 Ontology Nội dung Du lịch phân chia theo chủ đề ...................................... 62
Hình 5.5 Ontology Nội dung về Giao thơng ............................................................... 62
Hình 5.6 Cung cấp thơng tin du lịch theo cơ chế push................................................ 64
Hình 5.7 Gợi ý sự kiện sắp xảy đến theo cơ chế push ................................................ 65
Hình 5.8 Cung cấp thơng tin theo cơ chế pull ............................................................ 66
Hình 5.9 Cung cấp thông tin về giao thông theo cơ chế Push ..................................... 67
Hình 5.10 Kết quả thơng báo cho kết hợp dịch vụ du lịch và giao thông .................... 68
DANH SÁCH CÁC BẢNG
Bảng 3.1 Ví dụ câu lệnh truy vấn Select của SPARQL .............................................. 25
Bảng 4.1 Bảng ký hiệu ............................................................................................... 51
Bảng 4.2 Tóm tắt chức năng các hàm thường dùng .................................................... 51
7
Chương 1 Giới thiệu
Ngày càng có nhiều dịch vụ cung cấp thông tin cho các thiết bị di động hơn trong
thời đại mà các thiết bị di động được gắn GPS hoặc kết nối mạng tồn cầu. Việc có
q nhiều dịch vụ và thơng tin cũng gây khơng ít khó khăn cho người dùng các thiết bị
di động để chọn lọc ra thông tin cần thiết. Vậy trước tiên chúng ta tìm hiểu xem thơng
tin nào là cần thiết với người dùng. Thơng tin thì có thể là cần thiết với cá nhân này,
nhưng lại không cần thiết với các nhân khác. Và thơng tin có thể là cần thiết trong thời
điểm này, nhưng lại không cần thiết ở thời điểm khác. Điều ấy cho thấy rằng, việc
định nghĩa ra loại thông tin cần thiết với người sử dụng chỉ mang tính chất tương đối.
Việc định nghĩa profile người dùng, phân loại thông tin, tổ chức lại thông tin sẽ đưa ra
cho người dùng là một phần công việc cần phải làm để giúp hệ thống làm việc để tránh
việc đưa ra thông tin không phù hợp với sự quan tâm của người sử dụng. Nghiên cứu
phát triển hệ thống thơng tin dựa trên vị trí đã phát triển từ lâu tuy nhiên hầu hết các hệ
thống đều triển khai cho một loại dịch vụ cụ thể như hướng dẫn định hướng trong một
vùng RegionGuide [2, hay hướng dẫn cho Bảo tàng MuseumGuide [5 [6 [7.
Hệ thống RegionGuide đưa ra các thông báo cho khách du lịch về các điểm tham
quan, khách sạn, chỗ ăn uống… trong một khu vực. Thơng tin đa phương tiện có liên
quan xuất hiện trên một bản đồ dựa trên giao diện người sử dụng các địa điểm yêu
thích (Position Of Interest – POI) được tải về qua mạng điện thoại di động khi cần
thiết. Các POI sau khi được phân loại dựa trên một hệ thống phân loại quốc gia về dịch
vụ du lịch, được sử dụng như: chỗ ở, ăn uống hấp dẫn, hoạt động, sự kiện và thông tin
du lịch hoạt động, sự kiện và thông tin. Tổng thể thiết kế của RegionGuide phản ánh
kết quả của một cuộc khảo sát du lịch lớn đã được thực hiện để hiểu rõ hơn về hành vi
của khách du lịch, vai trò du lịch, và các quyền lợi đặc biệt của khách du lịch và các
chức năng nhiệm vụ mà hệ thống du lịch cần phải có.
Với hệ thống MuseumGuide, ban đầu hệ thống được phát triển dựa trên ý tưởng
để tiếp sức cho một bảo tàng nằm cạnh một nhà thờ cổ đại, cung cấp các thước phim
sống động và bổ sung thông tin về các điểm tham quan trong bảo tàng. Bảo tàng này
bao gồm bốn tòa nhà riêng biệt kèm theo một cái sân hình vng ở giữa. Bao quanh
các tịa nhà là các bức tường đá rất dày, bên trong tòa nhà chứa các đồ tác tạo lưu giữ
các phần của lịch sử thành phố và giai thoại về cư dân của vùng này. Thiết kế của
MuseumGuide mang tính kể chuyện nhằm mục đích giáo dục, đó là một trong những
đề nghị của ngành du lịch góp phần vào giới thiệu văn hóa. Nội dung được tổ chức
theo cấu trúc thứ bậc gồm ba cấp. Trang chào mừng hướng người sử dụng về phía các
sự kiện lịch sử liên quan tới tòa nhà hoặc là các phòng cụ thể và các hiện vật cùng với
các tòa nhà. Người sử dụng được giới thiệu các đoạn văn ngắn kết hợp hình ảnh và
8
phác thảo đồ họa, cũng như video clip và các track audio, bao gồm cả bằng tiếng Nauy
và tiếng Anh. Một số bản nhạc được phát gần các bức tượng lịch sử – để hỗ trợ ý định
về “talking heads”. Chúng dài từ 30 tới 180 giây, và các video clip dài từ 24 tới 150
giây. Hình ảnh chuyển đổi linh hoạt được sử dụng trong suốt các đoạn video để cải
thiện khả năng hiển thị của video trên màn hình nhỏ, và các trang WAP tương đối
ngắn để giảm thiểu nhu cầu di chuyển.
Các hệ thống MuseumGuide được thực hiện như một dịch vụ dựa trên vị trí, sử
dụng công nghệ ăng ten tiên tiến và WLAN để định vị. Điện thoại di động 3G sử dụng
được trang bị thẻ WLANSIM. Hệ thống sử dụng WAP push để tải các trang WAP liên
quan tới vị trí hiện tại của người dùng.
Bên cạnh đó, nguồn thơng tin cung cấp trong các dịch vụ LBS thường lấy từ
nhiều Cơ sở dữ liệu phân tán khác nhau ví dụ như cơ sơ dữ liệu không gian, cơ sở dữ
liệu sự kiện.., làm thế nào để kết dính chúng lại với nhau và lấy ra chúng một cách dễ
dàng và để máy tính cũng có thể hiểu được yêu cầu. Việc áp dụng phương pháp xây
dựng dữ liệu bằng Ontology và công nghệ Web Ngữ nghĩa là một trong những cách
phổ biến mà ta có thể giải quyết được vấn đề trên. Với việc áp dụng Ontology này,
máy tính có thể hiểu được mong muốn của người sử dụng là muốn lấy về thông tin
nào, đồng thời giảm thiểu việc xử lý dữ liệu dư thừa trong các truy vấn tìm kiếm.
Cùng với việc phân tích người dùng, phân tích dữ liệu liên quan tới profile, lịch
sử tham quan, vị trí, thời gian… người dùng, việc xây dựng Ontology để tố chức lại dữ
liệu cho hệ thống các dịch vụ Web Ngữ nghĩa, thì việc xây dựng hệ thống truyền thơng
tin từ các dịch vụ tới các thiết bị di động cũng là một vấn đề cần giải quyết. Dữ liệu sẽ
được chia thành ba nhóm chính: Dữ liệu Miền, Dữ liệu Ứng dụng, Dữ liệu Nội dung.
Trong ba nhóm này, thì hai nhóm Dữ liệu Miền – liên quan tới vị trí, thời gian của
người dùng,và Dữ liệu ứng dụng – liên quan tới profile người dùng và profile dịch vụ
cung cấp sẽ được tái sử dụng trong các loại hình dịch vụ. Nhóm cịn lại là Dữ liệu Nội
dung sẽ được phân thành các tầng dữ liệu chồng lấp lên nhau: thông tin du lịch, giao
thông, mua sắm, thời tiết… nhằm mục đích sử dụng cho từng dịch vụ được yêu cầu.
Các loại thơng tin đưa ra dựa vào vị trí, thời gian, profile của người dùng và lịch
sử tham quan có thể liên quan tới nhiều vấn đề từ ngơn ngữ định nghĩa phạm vi của
profile tới truyền dữ liệu không dây. Trong một loạt ứng dụng hỗ trợ liên quan tới lập
lịch, ví dụ như cách tốt nhất để kết nối vị trí và thời gian với sự kiện. Người dùng có
thể có một danh sách các sự kiện như: xem giải đấu tennis, liên hoan phim, hội chợ
thương mại, hoặc một hội nghị. Người dùng có thể mong muốn tối ưu các sự kiện đó
trên quãng đường tham quan thơng qua chuỗi sự kiện/vị trí. Một hệ thống thông minh
sẽ đưa ra danh sách các lựa chọn. Các ứng dụng này thuộc vào chủ đề chung của tối ưu
9
hóa tổ hợp và vì vậy chi tiết các ứng dụng loại trên sẽ không được tập trung nghiên
cứu trong luận văn này.
Luận văn này tập trung xây dựng hệ thống cung cấp các dịch vụ thông tin dựa
vào ngữ cảnh của người dùng. Để giải quyết sự nhập nhằng về ngữ nghĩa của thông tin,
nghiên cứu sử dụng công nghệ web ngữ nghĩa và ontology trong mơ hình hóa dữ liệu.
Hệ thống được triển khai theo kiến trúc client – server và có khả năng thực hiện cung
cấp thơng tin theo hai cơ chế, đó là đẩy (push) và kéo (pull). Các thuật tốn cài đặt các
thao tác tìm kiếm thơng tin theo các điều kiện về vị trí, thời gian, cũng như vai trò và
mối quan tâm của người dùng cũng được phân tích và cài đặt. Cuối cùng, một hệ thống
thử nghiệm được xây dựng cho phép cung cấp hai dịch vụ là du lịch và giao thông
trong khu vực thành phố Hà Nội. Hệ thống xây dựng cho điện thoại thông minh với hệ
điều hành android và công cụ Protégé để biểu diễn thông tin và ngữ nghĩa. Kết quả của
nghiên cứu hứa hẹn cho sự ra đời của một hệ thống tích hợp và cung cấp nhiều loại
dịch vụ dựa vào vị trí và ngữ cảnh của người dùng một cách tiện lợi và hiệu quả.
Từ những nhiệm vụ đã nêu trên, luận văn được trình bày với bố cục như sau:
Chương 1 Giới thiệu tổng quan về hệ thống cung cấp thông tin hướng ngữ cảnh
và công nghệ Web Ngữ nghĩa.
Chương 2 Khảo sát một số hệ thống cung cấp thông tin dựa trên sự kiện hiện có,
mơ hình dữ liệu LBS.
Chương 3 Tìm hiểu kiến trúc, thành phần của Web Ngữ nghĩa, trong đó tập trung
vào cơng nghệ Ontology và xây dựng truy vấn SPARQL cho Ontology.
Chương 4 Xây dựng kiến trúc hệ thống cung cấp thông dựa trên ngữ cảnh, thiết
kế ontology dữ liệu và xây dựng các thuật toán sử dụng để xây dựng hệ thống.
Chương 5 Triển khai hệ thống thử nghiệm cung cấp thông tin du lịch và giao
thông cho khu vực Hà Nội.
Chương 6 Đánh giá quả thực nghiệm của luận văn và đưa ra các định hướng phát
triển tiếp theo cho hệ thống trong tương lai.
10
Chương 2 Khảo sát các hệ thống LBS và mô hình dữ liệu
hiện có
Trong chương này, nội dung đề cập tới sẽ là khảo sát một số hệ thống cung cấp
thơng tin dựa trên ngữ cảnh. Sau đó là khảo sát mơ hình dữ liệu cho đối tượng di động,
phân loại dữ liệu sử dụng trong các hệ thống LBS nhằm đưa ra cách nhìn rõ hơn về
cấu trúc hoạt động của hệ thống theo hướng Semantic hóa.
2.1 Khảo sát một số mơ hình cung cấp thơng tin dựa trên ngữ cảnh
Hiện nay, tồn tại một vài hệ thống cung cấp thơng tin dựa trên vị trí và xử lý
thơng tin nhận biết ngữ cảnh. Chúng được chia thành hai loại hình dịch vụ: loại dịch
vụ cho các hoạt động ngoài trời và loại dịch vụ cho các hoạt động trong nhà. Một số ví
dụ các dịch vụ ngồi trời bao gồm các hệ thống hướng dẫn du lịch như Nexus [2],
Guide [3], Crumpet [4]. Các dịch vụ trong nhà bao gồm hệ thống hướng dẫn bảo tàng
như Hippie [5], Electrolic Guidebook [6], và Remember [7].
Mơ hình hóa cơ sở dữ liệu và việc truy vấn cho các đối tượng di chuyển đã và
đang được nhiều nghiên cứu đề cập tới (ví dụ trong [8], truy vấn cho các đối tượng di
chuyển được phân chia thành ba loại: instantaneous – đánh giá một lần khi định nghĩa;
continuous – đánh giá thường xuyên sau khi định nghĩa; và persistent – chuỗi các đánh
giá truy vấn instantaneous mỗi khi cập nhật cơ sở dữ liệu). Tuy nhiên, các cơ chế cụ
thể cho việc định nghĩa profile và bộ lọc sự kiện không được đề cập trong các nghiên
cứu đó. Trong ngữ cảnh của các dịch vụ dựa trên ngữ cảnh, truy vấn continuous được
quan tâm một cách đặc biệt. Hầu hết các hệ thống chỉ xem xét các truy vấn liên quan
đến những thay đổi trong vị trí người sử dụng (ví dụ trong Oldenburg). Các nghiên cứu
mở rộng của các dịch vụ hướng ngữ cảnh tập trung vào công nghệ tương tác với người
dùng di chuyển để trực quan hóa về mặt khơng gian của đối tượng di chuyển nói
chung.
Trong hầu hết các hệ thống, ngữ cảnh giường như chỉ được coi là vị trị của người
dùng đo đạc được tại các điểm truy cập nhất định (ví dụ trong Electronic Guidebook)
hoặc là một vị trí được đưa ra (ví dụ trong Nenus). Điều đó có nghĩa là truy vấn
continuous hoặc profile chỉ xem như là vị trí của người dùng. Thêm vào đó, ngữ cảnh
cịn được xem như là sở thích người dùng hay thời gian địa phương và các tham số kỹ
thuật truyền thông. Tuy nhiên, một vài hệ thống bao hàm ý niệm về sự kiện và profile
theo cách khác. Trong hệ thống Guide, khách du lịch được hệ thống chủ động thông
báo về các sự kiện chung, như giờ mở cửa của một bảo tàng. Thông tin này được gửi
phát cho tất cả người dùng của hệ thống, mà khơng quan tâm tới việc người dùng có
quan tâm hay không. Tương tự như Nexus, VIT [38] cũng có cùng cơ chế cung cấp
11
thông tin là người dùng được thông báo về tất cả địa danh có thể tương ứng với vị trí
hiện tại của họ. Từ khóa profile trong VIT dùng để lựa chọn nguồn thông tin theo chủ
đề. Trong hệ thống Crumpet, thông tin gửi đi phụ thuộc vào sự quan tâm của người
dùng tới thơng tin đó. Các đối tượng được người dùng quan tâm sẽ được định nghĩa
trong các khái niệm của mà profile mà sẽ từng bước làm thỏa mãn yêu cầu người
dùng dựa vào phản hồi cụ thể của người dùng. Trong hệ thống hướng dẫn Oldenburg,
sử dụng các truy vấn continuous về vị trí khơng gian của người dùng như các profile.
Thông tin về các đối tượng (sự dịch chuyển) được gửi đi tùy thuộc vào tầm quan trọng
của nó với người sử dụng, trong đó tầm quan trọng này phụ thuộc vào khoảng cách
không gian giữa các đối tượng và người sử dụng.
Hiện nay có rất nhiều các hệ thống thông báo sự kiện cho người dùng được cài
đặt, ví dụ như SIFT [9]. Một vài hệ thống thông báo sự kiện ENS áp dụng vào cung
cấp thông tin ngữ cảnh cho du lịch, tập trung vào hỗ trợ lên kế hoạch du lịch và chỉ
dẫn đường đi, ví dụ như hệ thống Genesis [10]. Hầu như trong các hệ thống ENS, tin
nhắn báo cáo cho một sự kiện được định dạng như một cặp tương ứng giá trị – thuộc
tính.
Ngày nay có rất nhiều ngôn ngữ định nghĩa profile, thường dùng để phân biệt các
chủ đề từ nội dung đã được lọc. Theo cách hiểu truyền thống, các profile là các chủ đề
hoặc đề tài mà trong nó có các sự kiện được sắp xếp thứ tự. Việc lọc nội dung cho
phép lọc thông tin hiệu quả hơn, hỗ trợ tốt hơn cho người sử dụng hệ thống.
Hệ thống Active Badges [11], Ultrasonic-based Bat [12] hay hệ thống Radar đều
dựa trên công nghệ mạng không dây LAN. Các hệ thống định vị cho các hoạt động
ngồi trời có thể sử dụng mạng khơng dây di động hoặc GPS. Chúng ta có thể thấy
được cái nhìn bao quát về các hệ thống hướng ngữ cảnh trong [13]. Trong nghiên cứu
[14] tập trung vào sự ảnh hưởng của các thông số kỹ thuật như công suất máy tính của
khách hàng, tốc độ và thơng lượng của kết nối mạng với việc tương tác của người sử
dụng.
2.2 Mơ hình dữ liệu khơng gian - thời gian
Phần này trình bày về tìm những nghiên cứu và triển khai về các mơ hình dữ liệu
khơng gian thời gian.
Đầu tiên chúng ta cần tìm hiểu về khái niệm đối tượng trong khơng gian thời gian.
Theo nghiên cứu [1] thì một đối tượng chiếm một vị trí trong khơng gian được gọi là
một đối tượng khơng gian. Khi mà vị trí của nó thay đổi theo thời gian, thì nó được gọi
là đối tượng không gian – thời gian; và nếu đối tượng có thể chuyển động và thay đổi
vị trí theo thời gian thì được gọi là đối tượng di động [1].
12
Nghiên cứu [15] cũng đưa ra một mơ hình cấu trúc dữ liệu để mô tả các kiểu đối
tượng dữ liệu, nghiên cứu còn cung cấp một framework hỗ trợ quản lý và tổ chức dữ
liệu. Còn trong [16], tác giả định nghĩa ra mơ hình dữ liệu khơng gian để mơ hình hóa
thế giới thực trong đó các đối tượng có thể thay đổi vị trí và hình dạng theo thời gian.
Trong hầu hết các mơ hình khơng gian – thời gian, vị trí của các đối tượng được
giả định có thể biết một cách chính xác. Do đó theo giả định này thì giá trị thể hiện vị
trí này ln ln cụ thể và tuyệt đối chính xác. Tuy nhiên, trên thực tế, không thể
khẳng định một cách chắc chắn vị trí tọa độ cụ thể chính xác của các đối tượng được.
Vì thế mà vị trí của các đối tượng có một độ khơng chắc chắn nào đó và liên quan tới
đường biên. Ngồi ra, vị trí của các đối tượng trong khơng gian cịn có các mối liên hệ
ràng buộc với nhau. Như vậy, các đối tượng di động có tính chất khơng chắc chắn và
bị ràng buộc bởi đường biên, và có mối quan hệ với nhau theo vị trí khơng gian [17].
CSDL khơng gian bao gồm những bản ghi lưu trữ sự thay đổi trong không gian
[18], CSDL thời gian được mô tả bởi tập hợp các dữ liệu thông tin thay đổi theo thời
gian [19]. Việc kết hợp cả hai chiều dữ liệu theo không gian và thời gian sẽ tạo ra
CSDL chiều không gian – thời gian.
Kỹ thuật khai phá dữ liệu không gian thời gian cũng là một vấn đề cần được xem
xét cẩn trọng. Kỹ thuật khai phá được áp dụng phụ thuộc rất lớn vào mơ hình dữ liệu
mà ta sử dụng. Để có được kỹ thuật khai phá tốt, cần phải nghiên cứu ngôn ngữ truy
vấn không gian – thời gian tương ứng với kỹ thuật đó. Trong nghiên cứu [20], ngôn
ngữ truy vấn không gian hỗ trợ các thao tác liên quan tới dữ liệu không gian đã được
phát triển. Ngôn ngữ truy vấn thời gian cũng được nghiên cứu đề xuất trong [21]. Sự
mở rộng ngôn ngữ truy vấn không gian – thời gian là sự kết hợp của hai ngôn ngữ truy
vấn độc lập trên.
2.3 Phân loại dữ liệu trong LBS
Một nhiệm vụ quan trọng khi xây dựng một hệ thống là việc phân tích và hiểu
được việc phân loại dữ liệu liên quan, ví dụ như các khái niệm, ngữ nghĩa và cách sử
dụng. Nó khơng chỉ giúp việc cung cấp các cơng nghệ thích hợp để mơ hình hóa và
giao tiếp với dữ liệu, mà còn giúp hiểu đúng được các yêu cầu của dịch vụ và đáp ứng
được các yêu cầu của hệ thống.
Phân tích dữ liệu hệ thống là một quá trình mơ đum hóa hệ thống. Đầu tiên,
chúng ta nhận biết được các loại dữ liệu đặc trưng và sau đó thì xác định chúng cụ thể
hơn. Trong phần này, chúng ta thể hiện thành ba loại dữ liệu, và chỉ ra sự kiết hợp giữa
chúng. Ba loại dữ liệu được mơ phỏng mối quan hệ như trong Hình 2.1
13
Hình 2.1 Phân loại dữ liệu trong LBS
2.3.1 Domain Data
Dữ liệu miền bao gồm các khái niệm mà được thể hiện và đặc trưng cho tất cả
các ứng dụng của LBS. Nhân tố chính đằng sau tất cả các ứng LBS là chiều kích của
khơng gian và thời gian, và vì thế mà dữ liệu miền bao gồm khơng gian, thời gian cơ
bản và các khái niệm thuộc không gian thời gian. Cần xem xét cẩn thận các LBS khác
nhau được GSM Group diễn giải và chỉ ra rằng: vị trí tương đối (location), vị trí tuyệt
đối (position), sự dịch chuyển (movement) giống như thời gian đặc trưng hóa cho các
ứng dụng LBS. Ví dụ, chúng ta nói về một LBS cho khách du lịch hoặc LBS giao
thông.
Position và location là hai thuật ngữ mang nghĩa giả định, chúng thường xuyên
được sử dụng thay thế cho nhau. Tuy nhiên, trong LBS, chúng ta nên phân biệt ngữ
nghĩa của hai khái niệm này tùy vào mục đích sử dụng trong hệ thống. Để mơ tả về
mặt ngữ nghĩa tốt hơn thì chúng ta chọn cách để phân biệt hai thuật ngữ trên trong hai
trường hợp: trong thực tế, chiều không gian đưa ra hai khái niệm mới trong LBS:
position và location của đối tượng. Các vấn đề tương tự cho chiều thời gian, chúng ta
cũng sử dụng các khái niệm thời gian: thời gian chính xác (timestamp) và khoảng thời
gian (time horizon).
Mục đích phân tích và đưa ra các khái niệm trên trong dữ liệu miền nhằm lưu
trữ sự chuyển động của một đối tượng di chuyển theo hai chiều kích khơng gian và
thời gian. Chi tiết phân tích dữ liệu miền sẽ được trình bày trong các chương sau.
2.3.2 Dữ liệu ứng dụng
14
Dữ liệu ứng dụng phân ra làm 2 loại dữ liệu sau:
- Dữ liệu Profile: đặc trưng cho người dùng và thiết bị di động mà du khách
mang theo, có thể là một trong các profile sau:
+ Profile người dùng: để lưu giữ thông tin người dùng và những thông tin
liên quan tới người dùng. Ví dụ như người dùng tới du lịch ở thành phố Hà
Nội có thể là một khách du lịch hoặc là một nhà khoa học, và họ có đều có
sở thích khác nhau. Profile người dùng có thể lưu trữ sở thích người dùng
cũng như những chủ đề thơng tin mà họ muốn tìm hiểu.
+ Profile thiết bị: lưu trữ các đặc tính của loại thiết bị di động mà người
dùng đang mang theo, có thể là thông số của CPU hoặc đặc trưng bộ nhớ
hoặc kích thước màn hình…
- Dữ liệu dịch vụ: là nơi lưu trữ những dịch vụ cụ thể mà hệ thống LBS sẽ cung
cấp tới người. Ví dụ như: dịch vụ ăn uống, dịch vụ chỉ đường, dịch vụ mua sắm
hoặc dịch vụ giao thông cho người dùng sử dụng các thiết bị di động thông minh.
2.3.3 Dữ liệu nội dung
Dữ liệu nội dung là dữ liệu thực của một ứng dụng cụ thể nào đó. Ví dụ, cho LBS
du lịch, dữ liệu nội dung các thông tin về thiên nhiên, công viên, bảo tàng…; trong
khi với với LBS giao thông lại là dữ liệu về ùn tắc giao thông, đường xá hoặc các loại
dữ liệu khác nói về giao thơng. Dữ liệu nội dung có thể bao gồm:
- Nội dung mơ tả cụ thể: ví dụ như tên nhà hàng, thông tin kiến trúc của một danh
lam thắng cảnh nào đó.
- Khơng gian được tham chiếu đến: chỉ ra nơi mà thơng tin thực được đặt, nhìn
thấy hoặc đã được ghi lại, ví dụ như vị trí của một bảo tàng.
- Thời gian được tham chiếu: chỉ ra thời điểm mà thơng tin được chỉ định, được
nhìn thấy, hoặc được ghi lại vào trong hệ thống: ví dụ như thời gian của vụ ùn tắc
giao thông.
Ba loại dữ liệu miền, dữ liệu dịch vụ, dữ liệu nội dung được kết hợp với nhau để
đưa ra thơng tin nào đó cho một dịch vụ cụ thể. Ví dụ: để cung cấp dịch vụ “tìm ra nhà
hàng gần nhất so với vị trí hiện tại của người dùng”, một tham chiếu tới danh sách các
nhà hàng trong dữ liệu nội dung kết hợp với vị trí của người dùng trong dữ liệu miền.
Khơng có sự liên kết trực tiếp nào giữa dữ liệu Nội dung và dữ liệu miền mà phải
thông qua dữ liệu dịch vụ làm trung gian.
15
Chương 3 Web Ngữ nghĩa
Ngày nay, việc chia sẻ thông tin trên Web ngày càng nhiều, dẫn tới việc dữ liệu
được lưu trữ một cách tràn lan. Điều này khiến cho việc tìm kiếm các thơng tin hữu ích
khi cần thiết cũng ngày càng trở nên khó khăn. Với thực tế đó, u cầu tổ chức thơng
tin dữ liệu một cách khoa học hơn để phục vụ cho việc tìm kiếm dễ dàng thuận lợi.
Với hồn cảnh đó Web Ngữ nghĩa ra đời, mở đầu cho việc tổ chức lại dữ liệu theo một
phương diện khác, làm sao cho việc tổ chức dữ liệu một cách ý nghĩa để máy tính có
thể hiểu được những gì con người muốn tìm kiếm.
Mối quan hệ giữa các thực thể trong thế giới thực được Khoa học Triết học nói
tới thơng qua việc mơ phỏng là các Ontology. Chính vì lý do này, mà Ontology trở
thành hạt nhân lưu trữ của Sematic Web. Trong phần này cũng sẽ đề cập tới cấu trúc
của Ontology và cách để chúng lưu giữ thông tin cũng như các mối quan hệ liên quan
tới nó ra sao. Tiếp đó, để liên kết các Ontology đó lại thành một tập hợp tri thức,
chúng ta cần tới việc sử DRFSchema. Cấu trúc của RDF, RDFS cũng sẽ được tìm hiểu
và làm rõ.
Việc tổ chức dữ liệu thông thường các truy vấn SQL là cách thức để Web thông
thường thực hiện lấy ra, cập nhật, chèn thơng tin thì với Web Ngữ nghĩa sẽ sử dụng
giao thức SPARQL để đảm nhận các chức năng như ngôn ngữ truy vấn thông tin thông
thường.
Sau đây là nội dung chi tiết của các vấn đề liên quan tới Web Ngữ nghĩa.
3.1 Web Ngữ nghĩa
3.1.1 Khái niệm Web Ngữ nghĩa
“Web Ngữ nghĩa là một sự mở rộng của Web hiện tại mà trong đó thông tin được
xử lý một cách tự động bằng máy tính, làm cho máy tính và con người có thể hợp tác
với nhau”- Tim Berners-Lee.
Web Ngữ nghĩa (Semantic Web) có thể coi là một mạng lưới các thông tin được
liên kết sao cho chúng có thể được xử lý trên phạm vi tồn cầu thơng qua các máy tính.
Có thể coi Web Ngữ nghĩa như một cách mô tả thông tin rất hiệu quả trên World Wide
Web, và cũng có thể coi đó là một cơ sở dữ liệu liên kết toàn cầu.
Trong Semantic Web, dữ liệu được tổ chức một cách ngữ nghĩa, nhờ đó mà máy
tính có thể hiểu được những mong muốn của con người, nhờ đó mà Semantic Web
được coi là Web thông minh.
16
Semantic Web cho phép việc tự động hoặc bán tự động chú thích, quảng cáo, tìm
kiếm, lựa chọn, tác tạo và thực hiện việc tổ chức nội bộ nghiệp vụ logic, làm cho
Internet trở thành một một nền tảng chung khi tổ chức và giao tiếp từng thành phần để
thực hiện một vài các hoạt động thương mại và để cung cấp các dịch vụ kèm theo.
3.1.2 Kiến trúc tầng của Semantic Web
Hình 3.1 Kiến trúc tầng của Web Ngữ nghĩa
Hình 3.1 mơ tả khái qt kiến trúc của Semantic Web (W3C) - Tim Berners-Lee
[29]. Các công nghệ Semantic Web đưa ra một hướng mới để quản lý thông tin và tiến
trình. Các ngun lý cơ bản của nó là việc tạo và sử dụng siêu dữ liệu ngữ nghĩa
(semantic metadata). Semantic Web được chia thành 8 phần sau:
3.1.2.1 URI
Một định danh tài nguyên phổ biến (URI) là một chuỗi được định dạng mà đáp
ứng như là ý nghĩa của định danh trừu tượng hoặc tài nguyên vật lý. Một URI có thể
được phân loại sâu hơn như là một định vị, một tên hoặc cả hai. Định vị tài nguyên
thống nhất (URL) dùng để chỉ tới tập con của URI mà xác định các tài nguyên thông
qua một đại diện của cơ chế truy cập chính của chúng. Một tên tài nguyên thống nhất
(URN) dùng để chỉ tập hợp con của URI được yêu cầu để duy trì sự duy nhất toàn vẹn
và sự bền vững ngay cả khi nguồn tài ngun khơng cịn tồn tại hoặc khơng có sẵn. Ví
dụ: một URL: < xác định địa chỉ trang web
được lấy về; một URN: “urn:isbn:3-540-24328-3” xác định một cuốn sách sử dụng
ISBN
17
3.1.2.2 Unicode
Unicode cung cấp một số duy nhất cho mỗi ký tự, độc lập với nền tảng, hay
chương trình, ngơn ngữ chạy dưới nó. Trước khi có Unicode, đã tồn tại một vài hệ
thống mã hóa khác. Việc mã hóa đa dạng tạo ra các thao tác của dữ liệu trở lên phức
tạp. Bất kỳ máy tính nào cũng cần hỗ trợ nhiều dạng mã hóa. Sẽ là rất nguy hiểm nếu
như các chế độ mã hóa mâu thuẫn lẫn nhau, từ việc hai cơ chế mã hóa có thể sử dụng
một số cho hai ký tự khác nhau, hoặc hai số khác nhau cho cùng một ký tự. Một ví dụ
điển hình về sự mâu thuẫn này là hai hệ thống ASCII và EBCDIC.
3.1.2.3 XML và tên không gian tên miền XML
Các định nghĩa XML (ngôn ngữ đánh dấu mở rộng) với Tên miền XML và lược
đồ XML đảm bảo rằng có một cú pháp chung được sử dụng trong Semantic Web. Các
không gian tên miền XML cho phép xác định từ vựng được đánh dấu khác nhau trong
một tài liệu XML. Lược đồ XML nhằm đáp ứng việc mô tả lược đồ các định nghĩa của
một tài liệu XML cụ thể. XML và không gian tên miền XML được biết đến với khả
năng tương thích với ngữ nghĩa, tuy nhiên chúng lại có một vài nhược điểm.
3.1.2.4 RDF và giản đồ RDF
Phía trên của XML là Nền tảng mô tả tài nguyên (RDF), để biểu diễn thông tin về
các tài nguyên trong một hình thức biểu đồ. RDF được dựa trên bộ ba Đối tượngThuộc tính – Giá trị (Object – Attribute – Value), là hình thức của một biểu đồ dữ liệu
với một quan hệ của đối tượng (một tài nguyên), một thuộc tính (một tính chất) và một
giá trị (một tài nguyên). Lược đồ RDF (RDFS) định nghĩa từ vựng của mơ hình RDF.
Nó cung cấp cơ chế mơ tả các thuộc tính của một miền cụ thể và các lớp của các tài
nguyên, từ đó các thuộc tính kia có thể áp dụng, sử dụng một tập hợp các mơ hình gốc
cơ bản (lớp, lớp con, thuộc tính, thuộc tính con, miền, phạm vi, loại). Tuy nhiên,
RDFS là khá đơn giản và nó vẫn khơng cung cấp chính xác ngữ nghĩa của một tên
miền.
3.1.2.5 Ontology
Ontology bao gồm một tập hợp các thuật ngữ tri thức, bao gồm từ vựng, ngữ
nghĩa, các mối liên kết, các quy tắc đơn giản để suy diễn và logic cho một số chủ đề cụ
thể [39] [40]. Ontology đã được áp dụng cho các trang web để tạo ra Semantic Web.
Ontology tạo điều kiện cho việc chia sẻ tri thức và cung cấp các nội dung Web có
khả năng sử dụng lại, các dịch vụ Web, và các ứng dụng. Một vài ngôn ngữ Ontology
như là DAML (Ngôn ngữ đánh dấu tác nhân DARPA), OIL (Tầng đan xen Ontology)
và OWL (Ngôn ngữ Ontology Web). OWL được phát triển bắt đầu từ mô tả logic và
18
DAML+OIL. OWL là một tập các phần tử XML và các thuộc tính với ý nghĩa được
xác định rõ ràng. Chúng được sử dụng để định nghĩa các thuật ngữ và các mối quan hệ
(ví dụ Lớp, Thuộc tính tương đương, thuộc tính cắt nhau, thuộc tính hợp…).
Các phần tử OWL kế thừa các tập hợp RDF và RDFS, và không gian tên miền
của OWL được sử dụng để biểu thị mã hóa OWL. OWL được phân loại thành 3 kiểu:
OWL Lite cho nguyên tắc phân loại và ràng buộc đơn giản, OWL DL hỗ trợ đầy đủ
cho mô tả logic, OWL Full cho tối đa mặt ý nghĩa và tự do về mặt cú pháp của RDF.
OWL DL được sử dụng rộng rãi cho mô tả ontology.
Khi thực hành, các ontology thường được phát triển sử dụng kết với các công cụ
đồ họa để tạo ra các ontology; một số công cụ thường được sử dụng như Protégé,
OILed và OntoEdit. Protégé tạo điều kiện thuận lợi cho tính mở rộng của cơ sở hạ tầng
và cho phép xây dựng dễ dàng các nội dung thông tin bao hàm của các ontology.
3.1.2.6 Tầng Logic, Proof, Trust và Digital Signature
Tầng logic được sử dụng để nâng cao độ sâu của ngôn ngữ ontology và cho phép
viết lên khai báo tri thức của ứng dụng cụ thể.
Tầng proof bao gồm quá trình suy diễn thực tế như là bản biểu diễn thử trong các
ngôn ngữ Web và đánh giá bản in thử.
Cuối cùng, tầng Trust là tầng trên cùng, thông qua việc sử dụng các chữ ký số và
các loại tri thức, dựa trên các gợi ý bởi các yếu tố đáng tin cậy hoặc trên các tác nhân
đánh giá, chứng nhận và yêu cầu của từng khách hàng.
3.2 OWL và Ontology
3.2.1 Khái niệm Ontology
Là một mơ hình cơng cụ cho mơ hình khái niệm mà mơ tả thơng tin hệ thống giới
hạn ngữ nghĩa và tri thức. Hay nói cách khác, ontology là một khái niệm dùng để biểu
đạt tri thức theo một cách tường minh, khi mà miền tri thức được thể hiện như là các
khái niệm và các mối quan hệ.
Mơ hình chung của Ontology được biểu đạt theo cơng thức sau:
O = <c, p, a>
Trong đó:
c: là tập các khái niệm tên
19
p: là tập các khái niệm về thuộc tính
a: là tập các tiên đề, các ràng buộc và các quy tắc mà được định nghĩa trên các
khái niệm và thuộc tính
3.2.2 Cấu trúc Ontology
- Namespaces
Thành phần khởi tạo ban đầu chuẩn của một ontology là tập các khai báo XML
namespace với thẻ rdf:RDF. Chúng đưa ra ý nghĩa định danh để tránh nhầm lẫn và làm
sáng tỏ các miền tri thức thể hiện của ontology. Một OWL thông thường thì với một
khai báo namespace giống với việc theo namespace đó. Tuy nhiên, như đã trình bày ở
phần RDF, ở trong w3c.org tham khảo thì các URI được khai báo như một định danh
mà khơng sử dụng tới.
Ví dụ
xmlns =" />xmlns:vin =" />xml:base =" />xmlns:food=" />xmlns:owl =" />xmlns:rdf =" />xmlns:rdfs=" />xmlns:xsd =" />
Hai khai báo đầu tin là namespace giao tiếp với Ontology. Namespace đầu tiên là
mặc định, trạng thái khơng có tiền tố tham chiếu tới Ontology hiện tại của chúng ta.
Định danh namespace thứ hai với tiền tố là vin:. Và định danh thứ ba với tiền tố base:.
Định danh namespace thứ tư của ontology với tiền tố food:. Khai báo định danh thứ
năm với tiền tố là owl: có thể hiểu như một tham chiếu tới những thứ được đưa ra từ
namespace gọi tới Đây là quy tắc khai báo OWL được
dùng để giới thiệu từ vựng OWL.
OWL phụ thuộc vào các cấu trúc được định nghĩa bởi RDF, RDFS và namespace
của loại dữ liệu của XML Schema (xsd:). Tuy nhiên điều quan trọng ở đây là việc khai
báo namespace ở đây nhằm mục đích làm đơn giản hóa và nhất qn của Ontology.
- Ontology Headers
Sau khi thiết lập namespace, chúng ta thường khai báo vào bên trong thẻ
owl:Ontology tập các assertion. Các thẻ này hỗ trợ các tiêu chuẩn như các comment,
quản lý version và các kết luận của các Ontology khác.
+ Thẻ owl:Ontology là một thay thế cho tập hợp rất nhiều các meta-data của
OWL cho tài liệu. Nó khơng đảm bảo rằng tài liệu mô tả một Ontology theo một
20
cách nhìn truyền thống. Trong một số trường hợp chung, các Ontology không là
các phần riêng lẻ nhưng chỉ các class và các property định nghĩa trong một miền.
Khi sử dụng OWL để mô tả tập các dữ liệu khởi tạo, thẻ owl:Ontology có thể cần
thiết để ghi lại thơng tin về version và để nhập các định nghĩa mà tài liệu phụ
thuộc vào. Do đó, trong tồn bộ OWL, tập ontology được mở rộng để bao gồm
các khởi tạo dữ liệu.
+ Thẻ rdf:about cung cấp tên hoặc một tham chiếu cho Ontology. Khi mà giá trị
của thuộc tính là “”, thì trường hợp chuẩn, tên của Ontology là URI cơ bản của
owl:Ontology. Thơng thường thì URI này của tài liệu đang chứa Ontology. Một
ngoại lệ cho trường hợp sử dụng xml:base mà có thẻ thiết đặt URL-base là một
thuộc tính mà khơng phải là URI của tài liệu đang xét tới.
+ Thẻ rdfs:comment được dùng để làm tăng tính rõ ràng cần thiết cho một
ontology giống như việc chú giải chẳng hạn.
+ Thẻ owl:priorVersion là một thẻ chuẩn có mục đích cung cấp các mấu chốt cho
hệ thống điều khiển version với các Ontology.
+ Thẻ owl:imports được sử dụng tương đương với thẻ #include trong các ngơn ngữ
lập trình. Thẻ này chỉ có một đối số, được xác định bởi thuộc tính rdf:resource.
Việc nhập các Ontology khác vào Ontology hiện tại là đưa toàn bộ tập xác nhận
được đưa ra bởi các Ontology được nhập vào trong Ontology hiện tại. Để có được
việc sử dụng tốt nhất các Ontology được import, thường nên phối hợp với khai
báo ở namespace. Chú ý rằng việc sử dụng owl:imports không phải lúc nào cũng
thành cơng, giống như những gì bạn mong đợi khi chia sẻ với Sematic Web, việc
truy cập tới nguồn tài nguyên phân tán thông qua Web không phải lúc nào cũng
là có thể. Ngồi ra OWL cung cấp một vài cơ chế để ràng buộc Ontology hiện tại
và các Ontology được import với nhau, đó chính là sử dụng cơ chế ontology
mapping [32].
Một tập chuẩn các thẻ có thể đọc, được chứa trong tập thẻ siêu dữ liệu - “metadata” của chuẩn Dublin Core [31]. Tập con bao gồm những kiểu dữ liệu đơn giản hoặc
các chuỗi như các giá trị.
- Tập hợp dữ liệu và Bảo mật
Khả năng của OWL là để diễn giải thông tin về sự xuất hiện khởi tạo trong nhiều
tài liệu hỗ trợ việc liên kết dữ liệu từ các nguồn mong đợi trong một quy tắc. Nền tảng
semantic cung cấp hỗ trợ cho việc suy luận dây truyền thông qua các dữ liệu mà có thể
đưa đến những kết quả khơng mong muốn. Cụ thể, khả năng để diễn tả sự tương
đương bằng việc sử dụng owl:sameAs có thể được sử dụng cho tập giường như là khác
21
nhau từng phần riêng rẽ nhưng thực tế lại là giống nhau.
Owl:InverseFunctionalProperty cũng được dùng để liên kết từng phần riêng lẻ với
nhau. Ví dụ, nếu một thuộc tính “SocialSecurityNumber” là một
Owl:InverseFunctionalProperty, thì có hai thành phần riêng lẻ có thể được suy ra từ
nó để trở thành định danh dựa vào việc có giá trị giống nhau của thuộc tính đó. Khi mà
các phần riêng lẻ được xác định là giống nhau về ý nghĩa, thông tin về chúng từ các
nguồn khác nhau có thể hợp lại với nhau. Sự kết hợp này chứng minh rằng, thông tin
sau khi tìm kiếm được thực tế khơng nằm trong một nguồn duy nhất nào mà nó được
suy ra từ suy luận logic.
Khả năng của Semantic Web là kết nối thông tin từ nhiều nguồn, các thuộc tính
được sử dụng trong nhiều ứng dụng. Tuy nhiên, khả năng kết hợp lắp ghép dữ liệu từ
nhiều nguồn, kết nới với khả năng suy luận của OWL có thể dẫn tới xu hướng lạm
dụng. Người sử dụng OWL nên được cảnh báo về những tác động của tính bảo mật
thơng tin tiềm tàng. Một số các giải pháp cho vấn đề bảo mật được các tổ chức giải
quyết như SAML [33] và P3P [34]
3.2.3 OWL
3.2.3.1 Giới thiệu OWL
Bạn đánh một cụm từ nào đó trên google, chẳng hạn như “You And Me” và nhấn
nút “Search”, Google sẽ trả về cho bạn một số thông tin khác mà khơng phải hồn tồn
chính xác tới 100% là cụm từ “You And Me”. Câu hỏi đặt ra là, với hệ cơ sở dữ liệu
bình thường, chúng ta chỉ có thể trả về một thơng tin kiểu “xxxYou And Meyyyyy” có
thể hiểu là truy vấn dạng LIKE, vậy google làm như thế nào để có thể trả về các kết
quả phong phú và đa dạng đến vậy
Và câu trả lời thật là đơn giản, họ đã sử dụng Dịch vụ Web Ngữ nghĩa - Semantic
Web Service trong việc tìm kiếm thơng tin đó. Và cốt lõi của Semantic Web Service là
OWL – Web Ontology Languages, một ngôn ngữ dùng cho việc định nghĩa các khởi
tạo của Web ontology. Ontology là một từ được mượn từ triết học mà nó chỉ tới mơn
khoa học trong việc mơ tả các loại thực thể trong thế giới và làm thế nào để chúng liên
kết quan hệ với nhau. Một Ontology OWS có thể bao gồm các mơ tả về class, property
và các instances của chúng. Được đưa ra như một Ontology, dạng ngữ nghĩa OWL xác
định là làm thể nào để lấy ra những kết luận một cách logic. Việc kế thừa theo một quy
tắc thứ tự có thể dựa trên một hay nhiều tài liệu phân tán và được kết nối với nhau
bằng việc sử dụng cơ chế định nghĩa OWL.
Điểm khác biệt trong mô tả XML/Web chuẩn so với việc tổ chức theo OWL là
lý do mà người ta lựa chọn OWL trong việc tìm kiếm chứ khơng chọn XML/Web
chuẩn.
22
Một Ontology khác với một XML schema trong việc thể hiện tri thức, chứ
không phải định dạng thông điệp. Hầu hết lĩnh vực công nghiệp dựa trên Web chuẩn
đều bao gồm việc kết nối các định dạng thông điệp và các giao thức nhất định. Những
định dạng ở đây đã và đang đưa ra các toán tử ngữ nghĩa.
Một ưu điểm của ontology OWL là sự sẵn sàng của các cơng cụ có thể lý giải
về chính nó. Các công cụ này cung cấp miền chung mà không phải là cho một miền
vấn đề cụ thể nào, đó sẽ là trường hợp nếu xây dựng một hệ thống diễn giải về lược đổ
XML tiêu chuẩn. Xây dựng một hệ thống lý luận đúng đắn và hữu ích thì khơng hề
đơn giản nhưng xây dựng một Ontology thì dễ dàng hơn.
3.2.3.2 Một số loại OWL
Ngôn ngữ OWL được chia làm 3 ngôn ngữ nhỏ được thiết kế cho việc sử dụng
giao tiếp cụ thể theo yêu cầu cài đặt của người dùng
- OWL Lite: hỗ trợ người dùng chủ yếu cần một tầng phân loại và ccs thuộc tính
ràng buộc đơn giản. Ví dụ như, khi OWL Lite hỗ trợ tập hợp các ràng buộc, nó chỉ cho
phép tập giá trị 0 và 1. Việc cung cấp công cụ hỗ trợ cho OWL Lite thì sẽ đơn giản
hơn, và cung cấp cách thức chuyển đổi cho các từ điểm và các nguyên tắc phân loại
khác.
- OWL DL: hỗ trợ người sử dụng trong trường hợp họ muốn việc giải thích tơi đa
mà khơng mất đi tính tốn hồn chỉnh (tất cả thứ tự kế thừa đều được tính tốn) và các
khả năng quyết định của các hệ thống diễn giải. OWL DL bao gồm tất cả các ngôn
ngữ xây dựng OWL cũng được đặt tên dựa vào khả năng đáp ứng của nó với các mơ tả
logic.
- OWL Full: cho người dùng mong muốn có giải thích tối đa và cú pháp RDF
ngẫu nhiên với khơng đảm bảo tính tốn nào. Ví dụ với một OWL Full một class đối
với việc thực thi như một tập các thành phần riêng rễ như một phần riêng rẽ trong
chính nó. OWL Full cho phép một Ontology làm đối số cho từ vựng được định nghĩa
trước. Nó khơng hề giống với bất kỳ phần mềm diễn giải nào có khả năng hỗ trợ mọi
thuộc tính như OWL Full.
3.3 Truy vấn trong Semantic Web
3.3.1 Giới thiệu về Cơ sở dữ liệu Graph
CSDL Graph là mơ hình dữ liệu tổng quan cho Web ngữ nghĩa. Sau đây là một
số hình ảnh mơ tả CSDL Graph thơng qua so sánh với các loại hình tổ chức dữ liệu
khác với loại CSDL khác.
23