Từ lý do trên và xuất phát từ nhu cầu tin học hóa tại đơn vị công tác của mình, được sự hướng dẫn của PGS.TS Nguyễn Thanh Bình đã định hướng cho tôi chọn hướng nghiên cứu và thực hiện Đề
Trang 1PHẠM HỮU THẮNG
ỨNG DỤNG WEB NGỮ NGHĨA TRONG XÂY DỰNG HỆ THỐNG THÔNG TIN QUẢN LÝ CÔNG TÁC NGHIÊN CỨU KHOA HỌC CỦA VIỆN NGHIÊN CỨU
PHÁT TRIỂN KINH TẾ - XÃ HỘI ĐÀ NẴNG
LUẬN VĂN THẠC SĨ HỆ THỐNG THÔNG TIN
Đà Nẵng - Năm 2017
Trang 2PHẠM HỮU THẮNG
ỨNG DỤNG WEB NGỮ NGHĨA TRONG XÂY DỰNG HỆ THỐNG THÔNG TIN QUẢN LÝ CÔNG TÁC NGHIÊN CỨU KHOA HỌC CỦA VIỆN NGHIÊN CỨU
PHÁT TRIỂN KINH TẾ - XÃ HỘI ĐÀ NẴNG
Chuyên ngành: Hệ thống thông tin
Mã số: 61.49.01.04
LUẬN VĂN THẠC SĨ HỆ THỐNG THÔNG TIN
Người hướng dẫn khoa học: PGS.TS NGUYỄN THANH BÌNH
Đà Nẵng - Năm 2017
Trang 4MỤC LỤC
DANH MỤC CÁC TỪ VIẾT TẮT vi
DANH MỤC CÁC BẢNG vii
DANH MỤC CÁC HÌNH viii
MỞ ĐẦU 1
1 Lý do chọn đề tài 1
2 Mục tiêu và nhiệm vụ của Đề tài 2
3 Đối tượng và phạm vi nghiên cứu 3
4 Phương pháp nghiên cứu 3
5 Giải pháp đề xuất 4
6 Ý nghĩa của Đề tài 4
7 Kết quả 5
8 Bố cục của luận văn 5
CHƯƠNG 1 NGHIÊN CỨU TỔNG QUAN 6
1.1 TỔNG QUAN VỀ WEB NGỮ NGHĨA 6
1.1.1 Giới thiệu 6
1.1.2 Khái niệm 7
1.1.3 Nội dung xây dựng hệ thống web ngữ nghĩa 9
1.1.4 Kiến trúc phân tầng của web ngữ nghĩa 12
1.2 RDF – NỀN TẢNG CỦA WEB NGỮ NGHĨA 17
1.2.1 Khái niệm 17
1.2.2 Mô hình RDF 18
1.2.3 Đồ thị RDF 18
1.2.4 Namespace 19
1.2.5 Literal 19
1.2.6 Kiểu dữ liệu có cấu trúc 19
1.2.7 RDFS (RDF Schema) 26
Trang 51.3 ONTOLOGY VÀ NGÔN NGỮ OWL 26
1.3.1 Định nghĩa ontology 26
1.3.2 Các lĩnh vực ứng dụng ontology 26
1.3.3 Vai trò ontology và web ngữ nghĩa 26
1.3.4 Các thành phần của ontology 27
1.3.5 Ngôn ngữ OWL 28
1.3.6 Hệ truy vấn SPARQL 30
1.4 MỘT SỐ PHẦN MỀM BIÊN TẬP ONTOLOGY 31
1.4.1 Phần mềm WebODE 31
1.4.2 Phần mềm Jena 31
1.4.3 Phần mềm Protégé 32
1.5 ĐỀ XUẤT CÔNG CỤ PHẦN MỀM XÂY DỰNG HỆ THỐNG 33
1.5.1 Django-RDF.library 33
1.5.2 Ngôn ngữ Python với framework: Django.templates 34
1.5.3 Hệ thống cổng thông tin điện tử Portal Plone.zope Enterprise CMS tích hợp sẵn hệ quản trị cơ sở dữ liệu Object Database (ZODB) 34
1.6 THIẾT KẾ ONTOLOGY 35
1.7 KẾT LUẬN CHƯƠNG 1 40
CHƯƠNG 2 PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 41
2.1 THỰC TRẠNG CÔNG TÁC QUẢN LÝ NGHIÊN CỨU KHOA HỌC CỦA VIỆN NGHIÊN CỨU PHÁT TRIỂN KINH TẾ - XÃ HỘI ĐÀ NẴNG 41
2.2 MÔ TẢ KHÁI QUÁT HỆ THỐNG 44
2.2.1 Mô tả hệ về hệ thống 44
2.2.2 Các chức năng cơ bản của hệ thống 44
2.3 KIẾN TRÚC TỔNG THỂ 46
2.4 BIỂU ĐỒ CA SỬ DỤNG 47
2.4.1 Biểu đồ ca sử dụng của người quản trị (Admin) 47
2.4.2 Biểu đồ ca của người dùng là nghiên cứu viên 48
2.4.3 Người dùng là khách (anonymous) 48
Trang 62.5 BIỂU ĐỒ HOẠT ĐỘNG CÁC CHỨC NĂNG CỦA HỆ THỐNG 49
2.5.1 Chức năng đăng nhập 49
2.5.2 Chức năng tìm kiếm 50
2.5.3 Chức năng tạo lý lịch khoa học 52
2.5.4 Chức năng đăng ký đề tài 53
2.5.5 Chức năng đăng ký nghiệm thu đề tài 54
2.5.6 Chức năng đề xuất hội đồng 55
2.6 BIỂU ĐỒ LỚP 56
2.7 BIỂU ĐỒ TUẦN TỰ 56
2.7.1 Đăng ký công trình nghiên cứu 57
2.7.2 Tạo lý lịch khoa học 57
2.7.3 Xóa đối tượng 58
2.7.4 Tìm kiếm nâng cao 59
2.8 KẾT LUẬN CHƯƠNG 2 59
CHƯƠNG 3 XÂY DỰNG HỆ THỐNG VÀ THỬ NGHIỆM 60
3.1 ONTOLOGY ĐƯỢC XÂY DỰNG 60
3.1.1 Xây dựng các lớp (Class) và các lớp con (subClass) 60
3.1.2 Định nghĩa các thuộc tính 65
3.1.3 Danh sách một số các thực thể (Individuals) 71
3.1.4 Ontology tổng thể 74
3.2 LUẬT SUY DIỄN NGỮ NGHĨA 74
3.3 MỘT SỐ CÂU TRUY VẤN SPARQL TRA CỨU THÔNG TIN 76
3.4 THUẬT TOÁN TÌM KIẾM 79
3.4.1 Thuật toán tìm kiếm cơ bản 79
3.4.2 Thuật toán tìm kiếm nâng cao 80
3.5 KẾT QUẢ CÀI ĐẶT VÀ THỬ NGHIỆM 80
3.5.1 Giao diện cài đặt Portal Plone.zope 4.3.1 80
3.5.2 Giao diện yêu cầu đăng nhập hệ thống 81
Trang 73.5.3 Giao diện đăng ký tài khoản qua mạng để quản trị hệ thống kích hoạt tài
khoản để sử dụng 81
3.5.4 Giao diện tạo công trình nghiên cứu khoa học 82
3.5.5 Giao diện xóa hoặc hoặc chỉnh sửa một đối tượng 82
3.5.6 Giao diện quản lý lý lịch khoa học 83
3.5.7 Giao diện đề xuất Hội đồng khoa học 84
3.5.8 Giao diện tra cứu thông tin 85
3.6 ĐÁNH GIÁ KẾT QUẢ 86
3.6.1 Thiết kế và xây dựng dữ liệu 87
3.6.2 Khả năng tra cứu thông tin 87
3.6.3 Kết quả triển khai 87
3.7 KẾT LUẬN CHƯƠNG 3 88
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 89
TÀI LIỆU THAM KHẢO 90 PHỤ LỤC
QUYẾT ĐỊNH GIAO ĐỀ TÀI (BẢN SAO)
Trang 8DANH MỤC CÁC TỪ VIẾT TẮT
HTTP Hypertext Transfer Protocol
IRI Internationalized Resource Identifier
RDF Resource Description Framework
RDFS Resource Description Framework Schema
URI Uniform Resource Identifier
XMLS Extensible Markup Language Schema CMS Content Management System
Trang 93.12 Thực thể: “Chatluong”, mô tả về chất lượng công
trình nghiên cứu khoa học đạt kết quả 71
3.13
Thực thể: “Congtrinh”, mô tả tên một số công trình nghiên cứu khoa học đã được nghiệm thu và công bố của Viện
72
3.14
Thực thể: “Bangcap”, mô tả về tên một số tính chất chuyên ngành nghề nghiệp theo bằng cấp tốt nghiệp Đại học
73
Trang 102.7 Biểu đồ hoạt động tìm kiếm cơ bản 50 2.8 Biểu đồ hoạt động tìm kiếm nâng cao 51 2.9 Biểu đồ ca sử dụng tạo mới lý lịch khoa học 52 2.10 Biểu đồ của ca sử dụng đăng ký đề tài 53 2.11 Biểu đồ hoạt động đăng ký nghiệm thu đề tài 54 2.12 Biểu đồ hoạt động đề xuất hội đồng 55
Trang 11Số hiệu
2.17 Biểu đồ tuần tự tìm kiếm nâng cao 59
3.1 Các lớp Class và subClass của OWL:
3.7 Hình minh họa ontology tổng thể của hệ thống 74
3.8 Minh họa chương trình cài đặt phần mềm Portal
3.9 Đăng nhập hệ thống để cập nhật dữ liệu 81 3.10 Giao diện đăng ký tạo tài khoản sử dụng 81 3.11 Giao diện tạo công trình nghiên cứu khoa học 82 3.12 Giao diện xóa và chỉnh sửa cập nhật đối tượng 83 3.13 Giao diện quản lý lý lịch khoa học 84 3.14 Giao diện đề xuất xét duyệt Đề tài 85 3.15 Giao diện tra cứu thông tin của người dùng 86
Trang 12MỞ ĐẦU
1 Lý do chọn đề tài
Ngày nay phần mềm được coi là vũ khí chiến lược cho phép các tổ chức Thương mại, Chính phủ các nước đạt được những sản phẩm và dịch vụ tốt nhất nhưng với thời gian và chi phí sản xuất tối thiểu Để phản ứng nhanh với hoạt động của thị trường đòi hỏi phải có những quá trình tổ chức tốt trong nền kinh tế toàn cầu hoạt động liên tục 24 giờ trong ngày, 7 ngày trong tuần, rất nhiều quá trình như vậy
sẽ không vận hành tốt nếu thiếu một Phần mềm hay một Hệ thống thông tin phù hợp, với sự phát triển mạnh mẽ của Internet, thuật ngữ Hệ thống thông tin dần quen thuộc đối với chúng ta Với tốc độ phát triển mạnh mẽ như hiện nay, Internet đã chứng tỏ nó đang dần trở thành một yếu tố không thể thiếu trong cuộc sống hiện đại Với việc đóng một vai trò cực kỳ quan trọng trong hầu hết các lĩnh vực của đời sống, việc tin học hóa các quy trình làm việc để xây dựng các Hệ thống thông tin ứng dụng trong công tác quản lý và điều hành là một nhu cầu tất yếu của xã hội
Trong những năm gần đây Nhà nước Việt Nam thật sự chú trọng phát triển ứng dụng công nghệ thông tin vào công tác quản lý và điều hành của các cơ quan hành chính, đơn vị sự nghiệp của Nhà nước, cụ thể Nhà nước đã ban hành nhiều văn bản khuyến kích việc tin học hóa trong quản lý như:
- Nghị quyết số 64/NQ-CP, Nghị quyết của Chính phủ về việc “Ban hành chương trình hành động của Chính phủ thực hiện Nghị quyết Đại hội đại biểu toàn quốc lần thứ XII của Đảng”, ban hành ngày 22 tháng 7 năm 2016
- Quyết định số 1819/QĐ-TTg, Quyết định của Thủ tướng Chính phủ về việc
“Phê duyệt Chương trình quốc gia về ứng dụng công nghệ thông tin trong hoạt động của cơ quan nhà nước giai đoạn 2016 – 2020”, ban hành ngày 26 tháng 10 năm 2015
- Nghị định số 64/2007/NĐ-CP, Nghị định của Chính phủ: về việc “Ứng dụng công nghệ thông tin trong hoạt động của cơ quan nhà nước”, ban hành ngày 01 tháng
4 năm 2007
Trang 13Bên cạnh đó, trong lĩnh vực nghiên cứu khoa học việc ứng dụng công nghệ thông tin vào công tác quản lý, nghiên cứu khoa học góp phần quan trọng trong việc nâng cao chất lượng nghiên cứu khoa học, tạo điều kiện tốt nhất cho cán bộ, nghiên cứu viên không ngừng nâng cao hiệu suất và năng lực nghiên cứu khoa học Viện Nghiên cứu Phát triển Kinh tế - Xã hội Đà Nẵng (gọi tắt là Viện) là một đơn vị sự nghiệp hoạt động trong lĩnh vực nghiên cứu khoa học trực thuộc UBND thành phố Đà Nẵng cũng không ngoài xu thế phát triển chung này (Viện được thành lập theo Quyết định số 8994/QĐ-UBND ngày 13 tháng 11 năm 2007 của UBND thành phố Đà Nẵng)
Hơn nữa, ngày nay việc ứng dụng giải pháp công nghệ Semantic web (web ngữ nghĩa) mang lại nhiều lợi ích như, cả người và máy đều có thể hiểu thông tin trên các trang web, nhờ đó thông tin được tìm kiếm nhanh chóng và chính xác hơn, còn có khả năng gợi ý cho con người các khái niệm, các mối liên hệ Nhờ kiến trúc chặt chẽ gồm nhiều lớp, web ngữ nghĩa rất phù hợp để xây dựng các công cụ tra cứu, tìm kiếm, thống kê các nguồn dữ liệu như nguồn dữ liệu về các công trình nghiên cứu khoa học và thông tin lý lịch khoa học của các nhà nghiên cứu khoa học Cùng với sự phát triển của có web ngữ nghĩa, ontology được sử dụng rộng rãi, đặc biệt nó là một thành phần không tách rời của kiến trúc semantic web, để xây dựng ngữ nghĩa cho web thì phải dựa trên nền tảng ontology [3]
Từ lý do trên và xuất phát từ nhu cầu tin học hóa tại đơn vị công tác của mình, được sự hướng dẫn của PGS.TS Nguyễn Thanh Bình đã định hướng cho tôi chọn
hướng nghiên cứu và thực hiện Đề tài “Ứng dụng web ngữ nghĩa trong xây dựng
Hệ thống thông tin Quản lý công tác nghiên cứu khoa học của Viện Nghiên cứu Phát triển Kinh tế - Xã hội Đà Nẵng” làm luận văn tốt nghiệp của mình
2 Mục tiêu và nhiệm vụ của Đề tài
2.1 Mục tiêu
Ứng dụng web ngữ nghĩa trong việc xây dựng Hệ thống thông tin quản lý các công trình nghiên cứu khoa học của Viện gồm: Các đề tài, dự án, đề án, báo cáo nghiên cứu, bài báo khoa học và các tài liệu, tư liệu phục vụ công tác nghiên cứu và
để nâng cao hơn hiệu quả tra cứu tài liệu, lý lịch khoa học của cán bộ quản lý,
Trang 14nghiên cứu viên của Viện, đồng thời hỗ trợ tốt công tác quản lý và điều hành chung trong hoạt động nghiên cứu khoa học tại Viện Nghiên cứu Phát triển Kinh tế - Xã hội Đà Nẵng
2.2 Nhiệm vụ
- Nghiên cứu tổng quan về web ngữ nghĩa và xây dựng bộ từ vựng ontology
về công trình nghiên cứu, lý lịch khoa học của cán bộ, nghiên cứu viên của Viện
- Các công cụ, thư viện hỗ trợ xây dựng web ngữ nghĩa Tìm hiểu và chọn những công cụ để phát triển hệ thống một cách hiệu quả
- Phân tích và xây dựng hệ thống thông tin quản lý công tác nghiên cứu khoa học của Viện Nghiên cứu Phát triển Kinh tế - Xã hội Đà Nẵng
- Thực nghiệm chương trình tại phòng Quản lý khoa học thuộc Viện Nghiên cứu Phát triển Kinh tế - Xã hội Đà Nẵng
3 Đối tượng và phạm vi nghiên cứu
3.1 Đối tượng
- Các vấn đề liên quan đến web ngữ nghĩa
- Công cụ xây dựng web ngữ nghĩa
- Phương pháp xây dựng Hệ thống web ngữ nghĩa
- Các vấn đề liên quan đến thông tin quản lý các công trình nghiên cứu khoa
học của Viện
3.2 Phạm vi nghiên cứu
Trong khuôn khổ của luận văn thuộc loại nghiên cứu và ứng dụng, tôi chỉ giới hạn nghiên cứu các vấn đề sau:
- Công nghệ web ngữ nghĩa
- Phương pháp xây dựng ontology
- Cổng thông tin điện tử Portal
Trang 15công trình nghiên cứu khoa học của Viện
- Tìm hiểu về web ngữ nghĩa để xây dựng website
- Nghiên cứu về ontology
- Khảo sát, thu thập dữ liệu liên quan tới các công trình nghiên cứu khoa học của các cán bộ, nghiên cứu viên của Viện Nghiên cứu Phát triển Kinh tế - Xã hội
+ Ngôn ngữ Python với framework: Django.templates
6 Ý nghĩa của Đề tài
6.1 Ý nghĩa khoa học
Tìm hiểu và vận dụng tốt các công cụ xây dựng phát triển web ngữ nghĩa, phương pháp xây dựng ontology về công trình nghiên cứu khoa học nói chung và về các đề tài, dự án, đề án, báo cáo nghiên cứu, bài báo khoa học nói riêng Ứng dụng web ngữ nghĩa về mặt tra cứu, tìm kiếm và trích lọc thông tin, dữ liệu Kết quả của
Đề tài có thể làm tài liệu tham khảo cho các Viện Nghiên cứu, các đơn vị quản lý khoa học tại các Sở, ban, ngành, các đơn vị quản lý của các trường Đại học, Cao đẳng trong việc phát triển Hệ thống quản lý các công trình nghiên cứu khoa học
6.2 Ý nghĩa thực tiễn
Góp phần tin học hoá trong công tác quản lý hành chính Nhà nước, giúp giảm
Trang 16thiểu giấy tờ và thời gian điều hành tác nghiệp đồng thời nâng cao chất lượng trong nghiên cứu khoa học và tăng cường hiệu quả công tác quản lý tại Viện Nghiên cứu Phát triển Kinh tế - Xã hội Đà Nẵng
7 Kết quả
7.1 Lý thuyết
- Hiểu và ứng dụng được các công cụ xây dựng web ngữ nghĩa
- Hiểu rõ quy trình, công việc chuyên môn về nghiên cứu khoa học, các công việc quản lý về nghiên cứu khoa học tại Viện
7.2 Thực tiễn
Xây dựng Hệ thống thông tin quản lý công tác nghiên cứu khoa học của Viện Nghiên cứu Phát triển Kinh tế - Xã hội Đà Nẵng, cài đặt và sử dụng tại phòng Quản
lý khoa học thuộc Viện
8 Bố cục của luận văn
Luận văn được trình bày thành 3 chương như sau:
CHƯƠNG 1: NGHIÊN CỨU TỔNG QUAN
Giới thiệu lý thuyết về web ngữ nghĩa, những ứng dụng và triển vọng của web ngữ nghĩa trong giai đoạn hiện nay Các công nghệ và công cụ phần mềm sử dụng trong web ngữ nghĩa
CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
Tìm hiểu thực trạng công tác quản lý nghiên cứu khoa học của Viện Nghiên cứu Phát triển Kinh tế - Xã hội Đà Nẵng từ đó phân tích và thiết kế Hệ thống
CHƯƠNG 3: XÂY DỰNG HỆ THỐNG VÀ THỬ NGHIỆM
Thiết kế và xây dựng dữ liệu ontology, phát triển ứng dụng thử nghiệm tại Viện Nghiên cứu Phát triển Kinh tế - Xã hội Đà Nẵng
Trang 17CHƯƠNG 1 NGHIÊN CỨU TỔNG QUAN
1.1 TỔNG QUAN VỀ WEB NGỮ NGHĨA
Web 2.0 đã đạt được những thành tựu rất đáng kể trong việc nâng cao tính tương tác cũng như đẩy nhanh tốc độ xử lý đáp ứng yêu cầu của người dùng Tuy nhiên trong xã hội thông tin đương đại nhu cầu của người dùng không dừng lại ở việc cải thiện tốc độ mà còn phải cải thiện chất lượng xử lý của trang Web theo yêu cầu ngày càng nâng cao Web 3.0 (Semantic web - web ngữ nghĩa) ra đời nhằm đáp ứng những yêu cầu về chất lượng đó
Với đặc điểm chính là nâng cao khả năng chia sẻ tài nguyên và tăng “sự hiểu biết” trong quá trình xử lý dữ liệu của máy tính Web ngữ nghĩa đã đi sâu vào phân tích và định hướng dữ liệu, đồng thời hỗ trợ phát triển ứng dụng web ngữ nghĩa trên nhiều lĩnh vực khác nhau Một trong những lĩnh vực thế mạnh của web ngữ nghĩa
là xử lý và tìm kiếm thông tin Việc phân tích và định hướng nội dung lưu trữ cho phép chúng ta xây dựng những cơ sở dữ liệu phục vụ tìm kiếm chính xác hơn, tinh gọn hơn [6]
1.1.1 Giới thiệu
Web ngữ nghĩa là một mạng lưới thông tin được kết ghép trong một phương pháp sao cho có thể xử lý dễ dàng bởi máy tính trên sự cân bằng toàn diện Bạn có thể nghĩ về nó giống như một phương pháp trình bày dữ liệu hiệu quả trên World Wide Web (WWW) hoặc như là một cơ sở dữ liệu liên kết toàn diện Web ngữ nghĩa là sự mở rộng của web hiện tại mà trong đó thông tin được định nghĩa rõ ràng sao cho con người và máy tính có thể cùng làm việc với nhau một cách hiệu quả hơn Mục tiêu của web ngữ nghĩa là để phát triển các chuẩn chung và công nghệ cho phép máy tính có thể hiểu được nhiều hơn thông tin trên web, sao cho chúng có thể hỗ trợ tốt hơn việc khám phá thông tin, tích hợp dữ liệu (dữ liệu liên kết động)
và tự động hóa các công việc
Web ngữ nghĩa là một ý tưởng về việc dữ liệu trên web được xác định và liên
Trang 18kết với nhau theo cách mà nó có thể được sử dụng bởi máy tính không chỉ cho mục đích thể hiện mà còn cho mục đích tự động, tích hợp và tái sử dụng dữ liệu thông qua nhiều ứng dụng khác nhau
1.1.2 Khái niệm
Web ngữ nghĩa được nghĩ ra bởi Tim Berners Lee, một nhà phát minh ra WWW, URIs (Uniform Resource Identifier – Định dạng tài nguyên thống nhất), HTTP (HyperText Transfer Protocol - Giao thức truyền tải siêu văn bản) và HTML (HyperText Markup Language – Ngôn ngữ Đánh dấu Siêu văn bản) Theo phát biểu
của ông Tim Berners Lee: ‘‘Web ngữ nghĩa là sự mở rộng của web hiện tại, cho
phép người dùng có thể truy tìm, phối hợp, sử dụng lại và trích lọc thông tin một cách dễ dàng và chính xác, cho phép máy tính và con người có thể làm việc cộng tác với nhau’’
Web ngữ nghĩa được xây dựng dựa trên cú pháp sử dụng URI để biểu diễn dữ liệu, luôn luôn trong bộ ba cấu trúc: tức là các bộ ba của dữ liệu URI mà có thể được giữ lại trong cơ sở dữ liệu hoặc được trao đổi trong World Wide Web dùng một tập những cú pháp đặc biệt được phát triển riêng cho tác vụ nào đó Cú pháp này được gọi là cú pháp RDF (Resource Description Framework)
Phân biệt web ngữ nghĩa với web 2.0:
❖ Web 2.0: lưu trữ thông tin (store things)
• Trình bày thông tin;
• Tìm kiếm chủ yếu dựa vào từ khóa;
• Thông tin không đồng bộ và nhanh chóng bị lạc hậu
• Hầu hết các công cụ tìm kiếm trên web 2.0 hiện nay chủ yếu tìm kiếm trên bề nổi của web chứ không tìm kiếm trên bề sâu, thông tin tìm kiếm theo từ khóa đơn thuần, kết quả tìm kiếm phải do con người chọn theo chủ đề
Ví dụ: Chúng ta gõ từ khóa cần biết ai là tổng thống mỹ trước đây 10 năm, trong tìm kiếm: yahoo.com gõ “who was us president 10 years ago”, kết quả trả về
là 187.000.000 kết quả và trong đó có hiển thị thông tin về tổng thống George W Bush và một loạt các thông tin mô tả khác mà người dùng phải tự xử lý thông tin và
Trang 19rút trích thông tin trong dãy kết quả đó
❖ Web ngữ nghĩa: thao tác trên thông tin
• Trình bày thông tin nhưng nội dung trang web có thể được xử lý bởi máy;
• Nội dung của web nói lên ngữ nghĩa của nó thông qua các siêu dữ liệu (metadata);
• Các ontology được chia sẽ để có thể hiểu được ngữ nghĩa;
• Do có thể hiểu được ngữ nghĩa nên các phần mềm Agent có thể giao tiếp, trao đổi thông tin với nhau;
• Sử dụng nhiều kỹ thuật của lĩnh vực trí tuệ nhân tạo;
• Tìm kiếm chủ yếu dựa vào ngữ nghĩa
Có những công cụ tự động cập nhật thông tin, nên thông tin luôn được đồng
bộ kịp thời
Một cách phân biệt khác:
• HTML: Web trực quan (visual Web)
• XML: Web theo cú pháp (syntactic Web)
• Logic: Web theo ngữ nghĩa [10]
Ví dụ: Cũng gõ lại cụm từ cần tìm “who was us president 10 years ago” trên trang tìm kiếm Google.com sẽ trả về kết quả là tổng thống George W.Bush và ngoài
ra trang tìm kiếm còn gợi ý cung cấp thêm các thông tin liên quan về vị tổng thống này: thông tin của cha ông là tổng thống George H W Bush, vợ ông là bà Laura Bush, tổng thống tiền nhiệm là Bill Clinton và tổng thống kế nhiệm Barack Obama
Hình 1.1 Liên kết ngữ nghĩa giữa các nguồn khác nhau trong semantic web
Trang 201.1.3 Nội dung xây dựng hệ thống web ngữ nghĩa
Để xây dựng hệ thống web ngữ nghĩa thay thế cho World Wide Web hiện tại, các nhà nghiên cứu đang nỗ lực và tập trung nghiên cứu với ba hướng chính sau:
- Chuẩn hoá các ngôn ngữ biểu diễn dữ liệu (XML) và siêu dữ liệu (RDF) trên Web
- Chuẩn hoá các ngôn ngữ biểu diễn ontology cho web có ngữ nghĩa
- Phát triển nâng cao web có ngữ nghĩa (Semantic Web Advanced Development-SWAD)
a Chuẩn hoá các ngôn ngữ biểu diễn dữ liệu (XML) và các siêu dữ liệu (RDF) trên web
Như chúng ta đã biết, World Wide Web đã rất thành công bởi ngôn ngữ XML XML đã làm cho công nghệ Web phát triển mạnh mẽ như hiện nay Và web ngữ nghĩa được phát triển trên nền web hiện tại, trên nền XML, chúng ta có thể thấy rất
rõ ngay trong sơ đồ kiến trúc của web ngữ nghĩa Web ngữ nghĩa được bổ sung các chú thích ngữ nghĩa cho các tài nguyên web và W3C đã giới thiệu RDF là chuẩn cú pháp để tạo, thay đổi và sử dụng chú thích trong web ngữ nghĩa Do vậy việc xây dựng ngôn ngữ chuẩn cho XML và RDF là thiết yếu để biểu diễn dữ liệu cho web ngữ nghĩa Trong quá trình này, đã có một số cú pháp được đưa ra để biểu diễn RDF như: Notation 3 (hay N3), XML/RDF Các cú pháp này hỗ trợ biểu diễn dữ liệu cho máy có thể hiểu được
b Chuẩn hoá các ngôn ngữ biểu diễn ontology cho web có ngữ nghĩa
Ontology đóng vai trò then chốt trong việc cung cấp tài nguyên có thể truy nhập để xử lý tự động bằng cách cung cấp bộ từ vựng cho việc đánh dấu ngữ nghĩa của web ngữ nghĩa Để biểu diễn ontology cho phát triển web có ngữ nghĩa cần thiết đưa ra một ngôn ngữ chuẩn cho sự biểu diễn mềm dẻo, linh hoạt và đa dạng của tài nguyên web Trong quá trình chuẩn hoá ngôn ngữ biểu diễn ontology, một số ngôn ngữ được đề xuất với các khả năng biểu diễn tăng dần như: RDFS, DAML+OIL, OWL, và các ngôn ngữ biểu diễn ontology được xây dựng phải cân bằng được khả năng biểu diễn và độ phức tạp tính toán Các ngôn ngữ này được xây dựng trên nền
Trang 21các chuẩn XML, RDF, và thường sử dụng cơ sở logic là logic mô tả để biểu diễn Ngữ nghĩa và hỗ trợ lập luận[10]
c Tìm kiếm ngữ nghĩa (Semantic Search Engine)
Vấn đề hiện nay là đa số các tìm kiếm hiện có đều thuộc loại tìm kiếm theo từ khóa (keyword search engine), cơ chế của chúng là định kì duyệt web để phát hiện
ra những sự thay đổi, rồi lập chỉ mục những thay đổi này Người sử dụng có thể tạo các câu truy vấn gồm các từ khóa trên các chỉ mục đó để nhận về kết quả mong muốn Tuy nhiên, phương pháp này gặp hai vấn đề chính sau đây:
- Một từ khóa có thể có một hay nhiều ý nghĩa tùy theo từng ngữ cảnh và search engine không thể hiện mối quan hệ giữa các từ khóa với nhau
- Các trang web có cùng ý nghĩa với câu truy vấn của người sử dụng sẽ không tồn tại trong kết quả trả về
Tìm kiếm ngữ nghĩa (Semantic search): Là tìm kiếm thông tin không dựa trên sự hiện diện của từ khóa hay cụm từ, mà dựa vào nghĩa của từ Vấn đề của các động cơ tìm kiếm dựa trên từ khóa đó là, nếu thông tin được cung cấp bởi nhiều nguồn khác nhau, thì các thuật ngữ sẽ không được sử dụng một cách thống nhất, cùng một thuật ngữ có thể được dùng với nhiều nghĩa khác nhau, và cũng có khi nhiều thuật ngữ khác nhau lại dùng để chỉ các khái niệm có cùng nghĩa Động cơ tìm kiếm ngữ nghĩa cố gắng vượt qua lỗ hổng trên bằng cách sử dụng ngữ nghĩa học (semantic) và nhờ đó, cung cấp cho người dùng các kết quả chính xác, thích đáng
Nó còn cho phép trả về các kết quả không liên quan một cách tường minh đến câu truy vấn nguyên mẫu
Tìm kiếm ngữ nghĩa hữu dụng trong việc:
- Xử lý các thông tin phức tạp từ nhiều nguồn khác nhau
- Truy hồi tài liệu dựa trên một tập các mối quan hệ bên ngoài các tài liệu đó
- Cung cấp nhiều lựa chọn cho việc nghiên cứu sâu hơn
- Xác định và sàng lọc kết quả hiệu quả hơn
- Sử dụng thông tin từ nguồn có thẩm quyền hiệu quả hơn để định hướng tìm kiếm
Trang 22Phát triển nâng cao web ngữ nghĩa (Semantic Web Advanced Development
- SWAD)
Các công việc chuẩn hoá các ngôn ngữ biểu diễn dữ liệu XML, siêu dữ liệu RDF hay ngôn ngữ biểu diễn ontology là các công việc nền tảng, cơ sở tạo ra chuẩn chung cơ sở để phát triển hệ thống và các ứng dụng trên web ngữ nghĩa Việc đưa các chuẩn đó thành các thể hiện, các sản phẩm của hệ thống web ngữ nghĩa là công việc của SWAD SWAD thực hiện nghiên cứu và đưa ra các thể hiện của web ngữ nghĩa trên công nghệ cơ sở và nó cũng bổ sung, hoàn thiện các công nghệ cơ sở này Nó chỉ
ra các công nghệ web ngữ nghĩa được sử dụng như thế nào? Mục tiêu cụ thể của SWAD là sử dụng các công nghệ, kỹ thuật và các công cụ hiện có của web ngữ nghĩa
để tạo ra các chương trình vượt xa hơn tầm hiện có, phát triển các thể hiện thực tiễn
và cung cấp các công cụ và các chuẩn mới cho web ngữ nghĩa Để phát triển SWAD hiện tại đã có một số dự án của các tổ chức thực hiện nghiên cứu và phát triển như: SWAD-Europe, SWAD-DAML, SWAD-Simile, SWAD-Oxygen…
d Một số thành tựu của Semantic web trên thế giới và ở Việt Nam
Công cụ tìm kiếm Swoogle
Đây là công cụ tìm kiếm kết hợp giữa việc thu thập văn bản theo ngữ nghĩa (SWDS) Các văn bản này phải được viết theo định dạng RDF hoặc OWL thì mới phù hợp với hệ thống này Ứng dụng này khai thác thuật toán PageRank nên mặc dù phải truy xuất trên nhiều miền dữ liệu khác nhau nhưng vẫn có tốc độ tương đối nhanh
Swoogle được phát triển và tổ chức bởi Đại học Maryland, Baltimore County (UMBC) có sự tài trợ của quỹ DARPA Mỹ và Quỹ khoa học Quốc gia Đây là luận
án Tiến sĩ của Li Ding dưới dự hướng dẫn của Giáo sư Tim Finin
Công cụ tìm kiếm Kngine
Công cụ tìm kiếm Kngine dùng để tìm kiếm theo yêu cầu với việc phân tích ngữ nghĩa Trang web này được chia thành các mục để người dùng có thể tìm kiếm trong miền nhỏ hơn và cho kết quả chính xác hơn
Kngine bắt đầu với dự án nghiên cứu vào tháng 10 năm 2008 Từ đó họ đã
Trang 23thành công để thu thập, trình diễn và lập chỉ mục của rất nhiều kiến thức về con người có hệ thống
VN-KIM (Viet Nam Knowledge and Information Management)
KIM (Knowledge & Information Management) là hệ thống chú thích ngữ nghĩa cho các thực thể có tên Miền dữ liệu mà KIM nhắm vào là các thực thể được
đề cập đến trong các tin tức quốc tế hàng ngày Ontology của KIM hiện có khoảng
250 lớp và 100 thuộc tính Cơ sở tri thức của KIM hiện có khoảng 80,000 thực thể
về các nhân vật, thành phố, công ty, và tổ chức quan trọng và phổ biến trên thế giới
Mở rộng từ KIM, chức năng chính của VN-KIM là rút trích và chú thích tự động lớp và danh hiệu của các thực thể có tên xuất hiện trong các trang báo điện tử tiếng Việt VN-KIM bao gồm các khối chính sau:
- Cơ sở tri thức về các nhân vật, tổ chức, núi non, sông ngòi, và địa điểm phổ biến ở Việt Nam
- Khối rút trích thông tin tự động từ các trang báo điện tử tiếng Việt
- Khối truy hồi thông tin và các trang web về các thực thể có tên ở Việt Nam
1.1.4 Kiến trúc phân tầng của web ngữ nghĩa
Để có được những khả năng như đã đề cập ở phần trên, web ngữ nghĩa cần có một hạ tầng chặt chẽ với nhiều lớp hỗ trợ Dưới đây là kiến trúc tổng quát nhất của web ngữ nghĩa do tổ chức W3C đề xuất:
Hinh 1.2 Kiến trúc của web ngữ nghĩa
Trang 24a Unicode và định danh tài nguyên thống nhất
Tầng thấp nhất là tài nguyên (một đối tượng, một thực thể hay một khái niệm, v.v ), chúng được mô tả bằng các định danh tài nguyên thống nhất - Uniform Resource Identifier (URI) Mục đích của tầng này là xác định tính duy nhất của mỗi tài nguyên Một tài nguyên có duy nhất một URI, tập con của URI là định vị tài nguyên thống nhất: Uniform Resource Locator (URL), nó chứa phương thức truy cập và vị trí của tài liệu trên mạng Một tập con khác của URI là tên tài nguyên thống nhất: Uniform Resource Name (URN), cho phép xác định một tài nguyên mà không cần phải chứa địa chỉ và phương thức truy cập đến nó, ví dụ chỉ số ISBN là một URN Việc sử dụng URI là rất quan trọng, vì nó cho phép xây dựng một hệ thống phân tán, trong đó các tài nguyên nằm ở nhiều nơi khác nhau trên mạng Một biến thể khác của URI là định danh tài nguyên được quốc tế hóa (Internationalized Resource Identifier – IRI), nó cho phép sử đụng các kí tự Unicode trong định danh
Để mã hóa các thông tin, dữ liệu ta sử dụng chuẩn mã hóa Unicode, đây là chuẩn thống nhất dùng để mã hóa các tập kí tự quốc tế Nó cho phép tất cả các ngôn ngữ của tất cả các nước có thể được mã hóa thống nhất, tránh hiện tượng mỗi quốc gia lại sử dụng một chuẩn mã hóa riêng, gây khó khăn cho trao đổi dữ liệu
b Biểu diễn XML
Tầng tiếp theo là ngôn ngữ đánh dấu mở rộng: Extensible Markup Language (XML), nó được dùng để biểu diễn dữ liệu mà máy tính có thể hiểu và xử lí dữ liệu được XML là công nghệ chính và là chuẩn của Web hiện tại và trong tương lai Với XML, máy tính có thể tích hợp và tương tác trao đổi dữ liệu với nhau XML cung cấp một phương tiện dùng văn bản để mô tả thông tin và áp dụng một cấu trúc kiểu cây cho thông tin đó Tại mức căn bản, mọi thông tin đều thể hiện dưới dạng văn bản, chen giữa là các thẻ đánh dấu với nhiệm vụ ký hiệu sự phân chia thông tin thành một cấu trúc có thứ bậc của các dữ liệu ký tự, các phần tử dùng để chứa dữ liệu và các thuộc tính của các phần tử đó Đơn vị cơ sở của XML là các ký tự theo định nghĩa của Bộ ký tự toàn cầu (Universal Character Set) Các ký tự được kết hợp theo các tổ hợp chuỗi hợp lệ để tạo thành một tài liệu XML Tài liệu này gồm một
Trang 25hoặc nhiều thực thể, mỗi thực thể thường là một phần nào đó của các ký tự thuộc tài liệu, được mã hóa dưới dạng một chuỗi các bit và lưu trữ trong một tệp văn bản Các tệp XML có thể dùng cho nhiều loại dữ liệu đa phương tiện, RFC3023 định nghĩa các loại "application/xml" và "text/xml", với ý rằng dữ liệu được biểu diễn bằng XML mà không nói gì đến ngữ nghĩa của dữ liệu
Bằng cách cho phép các tên dữ liệu, cấu trúc thứ bậc được phép, và ý nghĩa của các phần tử và thuộc tính có tính chất mở và có thể được định nghĩa bởi một lược đồ tùy biến được (XML Scheme), XML cung cấp một cơ sở cú pháp (Document Type Definition - DTD) cho việc tạo lập các ngôn ngữ đánh dấu dựa XML theo yêu cầu Cú pháp chung của các ngôn ngữ đó là cố định - các tài liệu phải tuân theo các quy tắc chung của XML, bảo đảm rằng tất cả các phần mềm hiểu XML ít ra cũng phải có khả năng đọc (phân tích cú pháp) và hiểu bố cục tương đối của thông tin trong các tài liệu đó Lược đồ chỉ bổ sung một tập các ràng buộc cho các quy tắc cú pháp Các lược đồ thường hạn chế tên của phần tử và thuộc tính và các cấu trúc thứ bậc được phép, ví dụ, chỉ cho phép một phần tử tên 'ngày sinh' chứa một phần tử tên 'ngày' và một phần tử có tên 'tháng', mỗi phần tử phải chứa đúng một ký tự
Có một khái niệm rất quan trọng trong XML là không gian tên XML (XML namespace) Không gian tên XML là cơ chế cho phép gom các tên phân tử và thuộc tính vào một nhóm Nó thường xuyên được dùng để phối hợp việc dùng tên phần tử (hay thuộc tính) từ nhiều nguồn khác nhau trong một tài liệu XML, mà vẫn tránh được nguy cơ trùng tên Một không gian tên là tập hợp các tên có thể dùng trong tài liệu XML, như tên các phần tử, thuộc tính, nó gom các tên này vào các vùng riêng
c Trao đổi dữ liệu RDF
Cơ cấu mô tả tài nguyên - RDF được W3C giới thiệu để cung cấp một cú pháp chuẩn để tạo, thay đổi và sử dụng các chú thích trong web ngữ nghĩa Một mệnh đề RDF là một bộ ba có dạng: [chủ đề], [thuộc tính], [đối tượng] Trong đó, [chủ đề] là tài nguyên mà được mô tả bằng [thuộc tính] và [đối tượng] [Thuộc tính] thể hiện mối quan hệ giữa [chủ đề] và [đối tượng] Còn [đối tượng] ở đây có thể là một tài
Trang 26nguyên hoặc một giá trị Ba thành phần trên trong RDF đều là các URI
d Lược đồ RDF
Để xác định ra cấu trúc và ngữ nghĩa của RDF, ngôn ngữ lược đồ RDF: RDF
Scheme (hay RDFS) đã được đề xuất RDFS là một ngôn ngữ Bản thể luận đơn
giản của web ngữ nghĩa, được coi là một ngôn ngữ cơ sở của web ngữ nghĩa RDFS cung cấp một phương tiện để đặc tả các từ vựng mô tả tính chất và quan hệ giữa các tài nguyên RDF, bao gồm:
- Định nghĩa các lớp tài nguyên;
- Định nghĩa các quan hệ giữa các lớp;
- Định nghĩa các loại thuộc tính mà các lớp trên có;
- Định nghĩa các mối quan hệ giữa các thuộc tính
e Bản thể luận
Đối với mỗi miền ứng dụng cụ thể, sẽ có một tập các khái niệm và các mối quan hệ, ràng buộc giữa chúng tạo thành một bản thể luận Một khái niệm có thể là một lớp, một thuộc tính của một lớp hay bộ từ vựng sử dụng trong miền ứng dụng
đó Bộ từ vựng bản thể luận được xây dựng trên cơ sở tầng RDF và RDFS, cung cấp biểu diễn ngữ nghĩa mềm dẻo cho tài nguyên web và có khả năng hỗ trợ lập luận
Để xây dựng được các bộ từ vựng này, người ta đã sử dụng các ngôn ngữ bản thể luận để biểu diễn chúng như: RDFS, OIL, DAML, DAML+OIL, hay ngôn ngữ bản thể luận cho web (OWL), Các ngôn ngữ này cung cấp khả năng biểu diễn và hỗ trợ lập luận khác nhau và chúng dựa trên nền tảng là các ngôn ngữ logic mô tả tương ứng khác nhau
Để cung cấp các luật suy diễn dựa trên các ngôn ngữ bản thể luận, một số ngôn ngữ luật đang được phát triển và chuẩn hóa, chẳng hạn, ngôn ngữ quy tắc trao đổi định dạng (Rule Interchange Format RIF )
Để truy vấn dữ liệu RDF trong một cơ sở tri thức, ngôn ngữ truy vấn RDF: Simple Protocol and RDF Query Language - SPARQL đã được đề xuất Ngôn ngữ SPARQL là ngôn ngữ truy vấn tương tự như ngôn ngữ truy vấn có cấu trúc SQL dùng để thao tác với các hệ hệ quản trị CSDL quan hệ
Trang 27f Tầng Logic
Việc biểu diễn các tài nguyên dưới dạng các bộ từ vựng ontology có mục đích
là để máy có thể lập luận được Mà cơ sở lập luận chủ yếu dựa vào logic Chính vì vậy mà các ontology được ánh xạ sang logic, cụ thể là logic mô tả để có thể hỗ trợ lập luận Vì logic mô tả có biểu diễn ngữ nghĩa hình thức và cung cấp các dịch vụ lập luận, là cơ sở để hỗ trợ máy tính có thể lập luận và hiểu tài nguyên
g Tầng chứng minh
Tầng này đưa ra các luật để suy luận Cụ thể từ các thông tin đã có ta có thể suy ra các thông tin mới Ví dụ: A là cha của B, A là em trai C thì khi đó ta có thông tin mới là C là bác của B Để có được các suy luận này thì cơ sở là FOL (First- Order-Logic) Và tầng này hiện nay các nhà nghiên cứu đang xây dựng các ngôn ngữ luật cho nó như: SWRL, RuleML
Để đảm bảo dữ liệu đầu vào đáng tin cậy, có thể sử dụng mật mã, chẳng hạn như sử dụng chữ kí điện tử để thẩm định xuất xứ của nguồn dữ liệu [11]
h Tầng xác nhận
Đảm bảo tính tin cậy của các ứng dụng trên web ngữ nghĩa Ví dụ: có một mệnh đề: X là A, một mệnh đề khác lại xác định X không là A, như thế web ngữ nghĩa là không đáng tin cậy? Câu trả lời ở đây được xem xét trong các ngữ cảnh Mỗi ứng dụng trên web ngữ nghĩa sẽ có một ngữ cảnh cụ thể, chính vì thế các mệnh
đề trên có thể nằm trong các ngữ cảnh khác nhau khi đó ngữ nghĩa tương ứng khác nhau nên các mệnh đề đó vẫn đúng, đáng tin cậy trong ngữ cảnh của nó Để có được
sự chứng minh về độ tin cậy thì các lập luận được áp dụng là không đơn điệu và có các cơ chế kiểm tra chứng minh kết hợp với công nghệ chữ ký điện tử để xác nhận
độ tin cậy Các ngôn ngữ chứng minh là ngôn ngữ cho ta chứng minh một mệnh đề
là đúng hay sai
i Giao diện người dùng và ứng dụng
Đây là tầng trực tiếp giao tiếp với người dùng và ứng dụng, tầng này cung cấp giao diện cho người dùng và các dịch vụ khác truy cập
Trang 281.2 RDF – NỀN TẢNG CỦA WEB NGỮ NGHĨA
1.2.1 Khái niệm
Ngôn ngữ biểu diễn dữ liệu và tri thức là một khía cạnh quan trọng của web ngữ nghĩa Như đã đề cập ở bên trên, XML là nền tảng cơ bản làm nên web ngữ nghĩa, tuy nhiên XML không đủ khả năng để tạo ra ngữ nghĩa trong web Mặc dù XML cho phép người dùng thêm dữ liệu tùy ý vào cấu trúc tài liệu nhưng nó không
đề cập gì đến ngữ nghĩa của tài liệu hàm chứa
Ngôn ngữ Cơ cấu mô tả tài nguyên - RDF được đề xuất nhằm khắc phục những nhược điểm của XML không thể giải quyết được Định nghĩa cơ bản của ngôn ngữ RDF là dùng để mã hóa các siêu dữ liệu của các tài nguyên vào một bộ ba (RDF Triple): [chủ ngữ], [vị ngữ] và [đối tượng] RDF mô tả các nguồn tài nguyên bởi bộ ba [chủ ngữ], [vị ngữ], [ đối tượng] Một [vị ngữ] là một khía cạnh, tính chất, thuộc tính, hay mối liên hệ mô tả cho một tài nguyên Một phát biểu bao gồm một tài nguyên riêng biệt, một thuộc tính được đặt tên, và giá trị thuộc tính cho tài nguyên đó ([đối tượng]) Giá trị này cơ bản có thể là một tài nguyên khác hay một giá trị mang tính nghĩa đen hay dạng chuỗi văn bản tùy ý [Chủ ngữ] và đối tượng được xác định qua Định danh tài nguyên thống nhất - URI, chẳng hạn chúng có thể
là một liên kết của một trang web Các [vị ngữ] cũng được xác định qua URI, do đó bất kì ai cũng có thể định nghĩa ra một khái niệm mới, một thuộc tính mới, bằng cách chỉ cần định nghĩa URI cho chúng Bởi vì RDF sử dụng URI để biểu diễn các thông tin trong một tài liệu, các URI đảm bảo rằng các khái niệm không chỉ chứa văn bản thuần túy mà nó còn là định danh tài nguyên duy nhất mà tất cả người dùng có thể tìm kiếm được trên mạng Trong RDF, các URI đóng một vai trò rất quan trọng: Chúng ta có thể tạo ra các (siêu) dữ liệu dựa trên bất kỳ một nguồn tài nguyên nào trên web, ngữ nghĩa được đưa vào các nguồn tài nguyên web thông qua các URI, và URI cho phép liên kết giữa các phần tử dữ liệu thông qua các thuộc tính
Ta biết rằng mỗi một thực thể hay khái niệm đều có các thuộc tính, mỗi thuộc tính đều có các giá trị, vì vậy mọi tài nguyên cũng đều có thể được biểu diễn qua ngôn ngữ RDF XML cung cấp cú pháp để mã hóa dữ liệu, RDF là một cơ cấu chỉ
Trang 29ra điều gì đó về dữ liệu RDF cung cấp một mô hình dữ liệu, và một cú pháp đơn giản sao cho các hệ thống độc lập có thể trao đổi và sử dụng nó RDF được thiết kế sao cho hệ thống máy tính có thể hiểu được và có thể đọc được thông tin, chứ không phải để trình bày dữ liệu cho người dùng Là một thành phần của web ngữ nghĩa, được đặt trên XML, RDF sử dụng cú pháp của XML để biểu diễn thông tin, điều này có nghĩa là các tài liệu RDF được viết bằng XML Ngôn ngữ XML dùng
để biểu diễn thông tin trong RDF được gọi là RDF/XML Thông qua định dạng này, các thông tin trong RDF có thể được trao đổi dễ dàng giữa các hệ thống máy tính cũng như các hệ điều hành hay các ngôn ngữ lập trình ứng dụng khác nhau [15]
Mô hình cơ bản của RDF gồm ba bộ phận sau:
• Tài nguyên: là tất cả những gì được mô tả bằng biểu thức RDF
• Thuộc tính: là đặc tính hay quan hệ mô tả tính chất tài nguyên
• Phát biểu: mỗi phát biểu gồm ba thành phần sau:
- [Chủ ngữ] : địa chỉ hay vị trí tài nguyên muốn mô tả
- [Vị ngữ]: xác định tính chất của tài nguyên
- [Đối tượng]: nội dung gán cho thuộc tính
Trang 301.2.4 Namespace
Khai báo namespace: việc khai báo namespace giúp cho giúp cho tài liệu RDF ngắn ngọn và dễ đọc hơn đối với người xây dựng ontology
Cú pháp khai báo một Namespace theo W3C:
NSAttName ::= PrefixedAttName| DefaultAttName
Literal có hai kiểu sau: Plain Literal hay Typed Literal
1.2.6 Kiểu dữ liệu có cấu trúc
Mọi thứ sẽ rất đơn giản nếu chỉ những loại thông tin được ghi nhận về mọi thứ một cách rõ ràng trong định dạng của những phát biểu RDF đơn giản đã được minh họa từ trước tới giờ Tuy nhiên, hầu hết dữ liệu thế giới thực bao gồm những cấu trúc
mà phức tạp hơn đó Ví dụ, trong ví dụ ban đầu, ngày tạo trang Web được ghi nhận
như một thuộc tính exterms:creation-date đơn với một Plain Literal như giá trị của
nó Tuy nhiên, giả sử giá trị của thuộc tính exterms:creation-date cần được ghi ngày,
tháng, năm thành những mẫu thông tin tách biệt thì chúng được viết như thế nào hay trong trường hợp thông tin cá nhân của John Smith, giả sử địa chỉ của John được mô
tả, cả điạ chỉ có thể được viết như một Plain Literal, như trong bộ ba: Exstaff:85740
exterms:address "1501 Grant Avenue, Bedford, Massachusetts 01730"
Tuy nhiên, giả sử địa chỉ của John cần thiết để ghi nhận như một cấu trúc bao gồm những giá trị như: tên đường phố, thành phố, bang … thì điều này sẽ được viết trong RDF như thế nào ? Thông tin có cấu trúc được biểu diễn trong RDF bằng cách coi toàn bộ mọi thứ được mô tả (như địa chỉ của John Smith) như một tài nguyên, và
Trang 31tạo ra những phát biểu về tài nguyên mới Vì vậy, trong đồ thị RDF, để chia nhỏ địa chỉ của John Smith thành những thành phần của nó, một nút mới được tạo ra để biểu diễn khái niệm địa chỉ của John Smith, với một URI mới để xác định nó
http://www.example.org/addressid/85740, (được rút gọn thành exaddressid:85740)
Những phát biểu RDF có thể được viết với nút đó như chủ ngữ, để biểu diễn thông tin
bổ sung, tạo ra đồ thị biểu diễn ở hình 1.4:
Hình 1.4 Mô tả việc chia nhỏ giá trị một thuộc tính
Hay những bộ ba:
exstaff:85740 exterms:address exaddressid:85740
exaddressid:85740 exterms:street "1501 Grant Avenue"
exaddressid:85740 exterms:city "Bedford"
exaddressid:85740 exterms:state "Massachusetts"
exaddressid:85740 exterms:postalCode "01730"
Cách biểu diễn thông tin có cấu trúc này trong RDF có thể kéo theo việc tạo ra
vô số những URI trung gian như exaddressid:85740 để biểu diễn toàn bộ những
khái niệm như địa chỉ của John Smith Nhiều khái niệm có thể không bao giờ cần thiết được đề cập tới một cách trực tiếp từ bên ngoài của một đồ thị đặc biệt, và vì vậy không thể yêu cầu những định danh toàn cục Ngoài ra, trong bản vẽ của đồ thị
Trang 32biểu diễn nhóm những phát biểu trong hình 1.4, URI gán vào để xác định địa chỉ của John Smith không thật sự cần thiết, từ đó đồ thị có thể được vẽ dễ dàng như trong hình 1.5:
Hình 1.5 Sử dụng nút rỗng
Hình 1.5 là một đồ thị RDF sử dụng một nút mà không có một URI để đại diện cho địa chỉ của John Smith Nút rỗng này cung cấp những kết nối cần thiết tới những thành phần khác của đồ thị Nút trống cũng được gọi là tài nguyên vô danh Tuy nhiên, một định danh rõ ràng cho nút trống đó rất cần thiết để biểu diễn đồ thị này như những bộ ba Để thấy điều này, hãy cố gắng viết những bộ ba tương ứng với những gì vẽ trong hình 1.5 sẽ tạo ra một cái gì đó như:
để phân biệt nút trống này với nút trống khác trong một sự biểu diễn bộ ba của đồ
thị Kết quả là, những bộ ba sử dụng những định danh nút rỗng, có dạng _:name để
chỉ thị sự hiện diện của nút trống
Ví dụ, trong ví dụ này một định danh nút rỗng _:johnaddress có thể được dùng
Trang 33để đề cập đến nút rỗng, mà trong trường hợp này những bộ ba có thể là:
exstaff:85740 exterms:address _:johnaddress
_:johnaddress exterms:street "1501 Grant Avenue"
_:johnaddress exterms:city "Bedford"
_:johnaddress exterms:state "Massachusetts"
_:johnaddress exterms:postalCode "01730"
Trong việc biểu diễn những bộ ba của một đồ thị, mỗi nút rỗng riêng biệt trong
đồ thị được cho một định danh nút rỗng khác nhau Không như những URI và những Literal, những định danh nút rỗng không được coi là những thành phần thực
sự của đồ thị RDF (điều này có thể thấy rõ bằng cách nhìn vào đồ thị ở hình 1.5 và
để ý nút rỗng không có định danh cho nó) Những định danh nút rỗng chỉ là một cách để thể hiện nó trong một đồ thị và phân biệt nó với nút rỗng khác khi đồ thị được viết ở định dạng bộ ba Những định danh nút rỗng cũng chỉ quan trọng trong những bộ ba biểu diễn một đồ thị đơn (hai đồ thị khác nhau với cùng số những nút rỗng có thể sử dụng độc lập những định danh nút rỗng để phân biệt chúng, và điều
đó không đúng khi cho rằng những nút rỗng từ những đồ thị khác nhau có cùng những định danh nút rỗng thì như nhau) Nếu một nút trong đồ thị cần được tham chiếu từ đồ thị bên ngoài, thì một URI có thể được gán để xác định nó Sau cùng, bởi vì những định danh nút rỗng biểu thị những nút rỗng hơn là biểu thị các cung trong định dạng bộ ba của một đồ thị RDF, những định danh nút rỗng có thể chỉ xuất hiện như chủ ngữ hay tân ngữ trong những bộ ba; định danh nút rỗng không thể là vị từ trong bộ ba
Ở phần mở đầu của phần này đã chú ý rằng toàn bộ những cấu trúc, như địa chỉ của John Smith có thể được biểu diễn bằng cách coi những điều này được mô tả như một tài nguyên riêng biệt và sau đó tạo ra những phát biểu về những tài nguyên mới này Ví dụ này minh họa một khía cạnh quan trọng của RDF: RDF chỉ biểu diễn trực tiếp những quan hệ nhị phân, ví dụ: quan hệ giữa John và Literal thể hiện địa chỉ của anh ta Việc biểu diễn mối quan hệ John và nhóm những thành phần tách biệt của địa chỉ này kéo theo làm việc với n cách quan hệ (trong trường hợp này là
Trang 34giữa John và tên đường phố, thành phố, bang và những thành phần mã vùng Để biểu diễn như những cấu trúc một cách trực tiếp trong RDF thì quan hệ nhiều cách phải chia nhỏ vào thành một nhóm những quan hệ nhị phân tách biệt Những nút rỗng tạo ra một cách thức để làm được điều này Đối với mỗi quan hệ n cách này một trong những thành phần tham gia được chọn như chủ ngữ của quan hệ (trong trường hợp này là John), một nút rỗng được tạo ra để biểu diễn phần còn lại của quan hệ (địa chỉ của John) Những thành phần tham gia còn lại trong quan hệ (như thành phố) sau đó được biểu diễn như những thuộc tính riêng biệt của tài nguyên mới thể hiện bởi nút rỗng
Những nút rỗng cũng cung cấp một cách thức để tạo ra những phát biểu chính xác hơn mà không có những URI, nhưng chúng được mô tả dưới dạng quan hệ với tài nguyên khác để làm cho chúng có URI Ví dụ, khi tạo những phát biểu về một người, như Jane Smith, điều đó rất bình thường để sử dụng một URI dựa vào điạ chỉ
email của người đó như URI của người đó, ví dụ: mailto:jane@example.org Tuy
nhiên, phương pháp này có thể dẫn đến một số vấn đề Ví dụ, khi cần thiết để ghi lại thông tin về hộp thư của Jane cũng như về chính Jane và sử dụng một URI cho Jane dựa vào địa chỉ mail của cô ấy dẫn đến những khó khăn khi muốn biết xem Jane hay hộp thư mail của cô ấy được mô tả Vấn đề tương tự tồn tại khi một URL trang Web
của một công ty http://www.example.com/ được sử dụng như URI của chính công
ty Một lần nữa, thật sự cần thiết để ghi nhận thông tin về chính trang web (ví dụ: người tạo ra trang web và được tạo khi nào) cũng như về công ty, và sử dụng
http://www.example.com/ như một định danh dẫn đến việc rất khó biết trong số
những cái đó cái nào là chủ ngữ thực sự
Vấn đề cơ bản là với việc sử dụng hộp thư mail của Jane như một đại diện cho Jane không thực sự chính xác: Jane và hộp thư mail của cô ấy thì không giống nhau, và
vì vậy chúng nên được xác định khác nhau Khi chính Jane không có một URI, một nút rỗng tạo ra cách chính xác hơn của mô hình trong tình huống này Jane có thể được biểu diễn như một nút rỗng, và nút rỗng đó được dùng như chủ ngữ của một phát biểu
với exterms:mailbox như thuộc tính và URI mailto:jane@example.org như giá trị của
Trang 35thuộc tính đó Nút rỗng này cũng có thể được mô tả với một thuộc tính rdf:type có giá trị exterms:Nguoi, thuộc tính exterms:name có giá trị “John Smith”, và một số khác mô
tả thông tin rất có lợi, như biểu diễn trong những bộ ba sau:
_:jane exterms:mailbox <mailto:jane@example.org>
_:jane rdf:type exterms:Nguoi
_:jane exterms:name "Jane Smith"
_:jane exterms:empID "23748"
_:jane exterms:age "26"
Để ý rằng mailto:jane@example.org được viết trong dấu “< >” trong bộ ba đầu tiên, bởi vì mailto:jane@example.org là một URI đầy đủ trong lược đồ URI
mailto, hơn là một dạng rút gọn QName, và những URI đầy đủ phải được đặt trong
dấu “< >” trong các định dạng bộ ba
Điều này chỉ rõ rằng có một tài nguyên thuộc kiểu exterms:Nguoi, mà hộp thư mail của người nào được xác định bởi mailto:jane@example.org thì tên người đó là
Jane Smith Nghĩa là, nút rỗng có thể đọc như “có một tài nguyên” Những phát biểu với nút rỗng là chủ ngữ cung cấp thông tin về đặc trưng của tài nguyên
Thực ra, việc sử dụng nút rỗng thay cho những URI trong những trường hợp như thế này không làm thay đổi cách mà loại thông tin này được xử lý nhiều Ví dụ,
nếu một điạ chỉ email xác định duy nhất người nào đó tại example.org thì địa chỉ đó
có thể vẫn được dùng để kết hợp thông tin về người đó từ nhiều tài nguyên, thậm chí khi điạ chỉ email không là URI của người đó Trong trường hợp này, nếu một vài RDF được tìm thấy trên Web mô tả về một cuốn sách và đưa thông tin liên lạc
của tác giả như mailto:jane@example.org, thì điều đó có thể hợp lý, việc kết hợp
thông tin mới này với tập những bộ ba trước kết luận rằng tên của tác giả là Jane Smith Vấn đề là điều đó nói rằng bất cứ thứ gì đó như “tác giả của cuốn sách là
mailto:jane@example.org” là một cách rút gọn của “tác giả của cuốn sách là bất kì
ai người mà có hộp thư mail là mailto:jane@example.org” Việc sử dụng một nút
rỗng để biểu diễn “bất kì ai này” chỉ là một cách chính xác để biểu diễn trong tình huống thế giới thực
Trang 36Sử dụng nút rỗng theo cách này cũng giúp tránh sử dụng những Literal trong những tình huống không thích hợp
Ví dụ, trong mô tả cuốn sách của Jane, thiếu một URI để xác định tác giả,
người xuất bản có thể viết (sử dụng từ vựng riêng ex2terms: của người xuất bản):
ex2terms:book78354 rdf:type ex2terms:Book
ex2terms:book78354 ex2terms:author "Jane Smith"
Tuy nhiên, tác giả cuốn sách thực ra không phải là chuỗi kí tự “Jane Smith”, nhưng một người mà tên của người đó là Jane Smith Thông tin tương tự có thể chính xác hơn cho người xuất bản sử dụng một nút rỗng như:
ex2terms:book78354 rdf:type ex2terms:Book
ex2terms:book78354 ex2terms:author _:author78354
_:author78354 rdf:type ex2terms:Nguoi
_:author78354 ex2terms:name "Jane Smith"
Về cơ bản điều này nói rằng tài nguyên ex2terms:book78354 thuộc loại
ex2terms:Book và tác giả là một tài nguyên thuộc loại ex2terms:Nguoi, tên tác giả là
Jane Smith” Tất nhiên, trong trường hợp đặc biệt này người xuất bản có thể thay việc gán URI riêng của nó để tác giả của nó thay thế việc sử dụng những nút rỗng
để xác định chúng, để giúp những tham chiếu bên ngoài tới tác giả của nó
Cuối cùng, ví dụ trên cho biết tuổi của Jane là 26 chứng tỏ rằng đôi khi giá trị của thuộc tính có thể xuất hiện ở dạng đơn giản, nhưng cũng có thể phức tạp Trong trường hợp này, tuổi của Jane thực sự là 26 years, nhưng thông tin đơn vị years không thể hiện rõ Thông tin như thế này thường được bỏ đi trong những phạm vi
mà điều đó có thể an toàn để mọi người truy cập giá trị thuộc tính sẽ hiểu những đơn vị được dùng Tuy nhiên, trong phạm vi rộng hơn của web, thông thường điều
đó không an toàn để đưa ra giả định này Ví dụ, một trang web ở Mỹ có đơn vị đo lường là pound, nhưng bất kỳ ai truy cập dữ liệu đó ở bên ngoài nước Mỹ (Việt Nam) có thể cho rằng đơn vị đó là kilogram Thông thường, chúng ta nên xem xét cẩn thận để đưa ra những đơn vị đại diện và những thông tin tương tự
Trang 371.2.7 RDFS (RDF Schema)
RDFS cung cấp một hệ thống kiểu mẫu (type system) cơ bản để dùng trong những mô hình RDF Nó định nghĩa những tài nguyên và những thuộc tính như
rdfs:Class và rdfs:subClassOf mà chúng dùng để xác định những giản đồ chuyên
biệt về ứng dụng RDFS cung cấp thông tin về sự giải thích của những phát biểu trong một mô hình dữ liệu RDF và nó cũng xác định những ràng buộc nên được dùng trong những mô hình dữ liệu [17]
1.3 ONTOLOGY VÀ NGÔN NGỮ OWL
1.3.1 Định nghĩa ontology
Nhiều định nghĩa về ontology xuất hiện trong thập kỷ trước nhưng có lẽ định
nghĩa mô tả rõ nhất bản chất của ontology là: “An ontology is a formal, explicit specification of a shared conceptualization.” Một ontology là một hình thức, đặc tả
rõ ràng khái niệm chia sẻ) Trong ngữ cảnh này, conceptualization (khái niệm hóa)
đề cập đến một mô hình trừu tượng của một vài hiện tượng trong thế giới thực dùng
để nhận dạng các khái niệm liên quan đến hiện tượng đó Explicit (rõ ràng) có nghĩa
là loại khái niệm được sử dụng và các ràng buộc khi sử dụng chúng được xác định
một cách rõ ràng và formal (hình thức) có nghĩa là máy tính có thể hiểu được
1.3.3 Vai trò ontology và web ngữ nghĩa
Hiện tại, các ontology đã ứng dụng vào World Wide Web tạo ra web ngữ nghĩa Các cấu trúc ở mức khái niệm dùng xác định một ontology cơ sở cung cấp chìa khoá để máy tính có thể xử lý được dữ liệu trên web ngữ nghĩa Các ontology phục vụ như các giản đồ siêu dữ liệu, cung cấp khái niệm về từ vựng có thể kiểm
Trang 38soát được, mỗi ontology được xác định rõ ràng và máy tính có thể xử lý được ngữ nghĩa Bằng cách xác định các nguyên lý trên lĩnh vực chia sẻ và thông thường, các ontology giúp cho người và máy thông tin một cách chính xác - hỗ trợ việc trao đổi ngữ nghĩa chứ không chỉ cú pháp Vì vậy sự thành công và phát triển của web ngữ nghĩa phụ thuộc vào việc cấu trúc các ontology trên lĩnh vực đặc trưng một cách nhanh chóng và ít tốn kém
1.3.4 Các thành phần của ontology
Ontology được sử dụng như là một biểu mẫu trình bày tri thức về thế giới hay một phần của nó Ontology thường miêu tả:
- Cá thể: Các đối tượng cơ bản, nền tảng
- Lớp: Các tập hợp, hay kiểu của các đối tượng
- Thuộc tính: Thuộc tính, tính năng, đặc điểm, tính cách, hay các thông số mà các đối tượng có và có thể đem ra chia sẻ
- Mối liên hệ: cách mà các đối tượng có thể liên hệ tới một đối tượng khác
Bộ từ vựng ontology được xây dựng trên cơ sở tầng RDF và RDFS, cung cấp khả năng biểu diễn ngữ nghĩa mềm dẻo cho tài nguyên Web và có khả năng hỗ trợ lập luận
a Cá thể (Individuals) – Thể hiện
Cá thể là thành phần cơ bản của một ontology Các cá thể trong một ontology
có thể bao gồm các đối tượng rời rạc như xe, động vật, thực vật…, cũng như các đối tượng trừu tượng như con số và từ
b Lớp (Classes) - Khái niệm
Lớ p là những nhóm, bộ hoặc tập hợp các đối tượng Một lớp có thể gộp nhiều lớp hoặc được gộp vào lớp khác Một lớp gộp vào lớp khác được gọi là lớp con của lớp gộp Điều quan trọng của quan hệ xếp gộp là tính kế thừa
c Thuộc tính (Properties)
Các đối tượng trong ontology có thể được mô tả thông qua việc khai báo các thuộc tính của chúng Mỗi một thuộc tính đều có tên và giá trị của thuộc tính đó Các thuộc tính được sử dụng để lưu trữ các thông tin mà đối tượng có thể có Ví dụ,
Trang 39đối với một cá nhân có thể có các thuộc tính: Họ_tên, ngày_sinh, quê_quán, số_cmnd… Giá trị của một thuộc tính có thể có các kiểu dữ liệu phức tạp
d Mối quan hệ (Relation)
Quan hệ giữa các đối tượng trong một ontology cho biết các đối tượng liên hệ với đối tượng khác như thế nào Sức mạnh của ontolgy nằm ở khả năng diễn đạt quan hệ Tập hợp các quan hệ cùng nhau mô tả ngữ nghĩa của Domain Tập các dạng quan hệ được sử dụng và cây phân loại thứ bậc của chúng thể hiện sức mạnh diễn đạt của ngôn ngữ dùng để biểu diễn ontology
Ontology thường phân biệt các nhóm quan hệ khác nhau Ví dụ:
OWL (The Web Ontology Language) là một ngôn ngữ gần như XML dùng để
mô tả các hệ cơ sở tri thức OWL là một ngôn ngữ đánh dấu dùng để xuất bản và chia sẻ dữ liệu trên Internet thông qua những mô hình dữ liệu gọi là “ontology” Ontology mô tả một lĩnh vực (domain) và diễn tả những đối tượng trong lĩnh vực đó cùng những mối quan hệ giữa các đối tượng này OWL là phần mở rộng về từ vựng của RDF và được kế thừa từ ngôn ngữ DAML+OIL web ontology – một dự án được hỗ trợ bởi W3C OWL biểu diễn ý nghĩa của các thuật ngữ trong các từ vựng
và mối liên hệ giữa các thuật ngữ này để đảm bảo phù hợp với quá trình xử lý bởi các phần mềm
OWL được xem như là một kỹ thuật trọng yếu để cài đặt cho web ngữ nghĩa trong tương lai OWL được thiết kế đặc biệt để cung cấp một cách thức thông dụng trong việc xử lý nội dung thông tin của web Ngôn ngữ này được kỳ vọng rằng sẽ cho phép các hệ thống máy tính có thể đọc được thay thế cho con người Vì OWL được viết bởi XML, các thông tin OWL có thể dễ dàng trao đổi giữa các kiểu hệ
Trang 40thống máy tính khác nhau, sử dụng các hệ điều hành và các ngôn ngữ ứng dụng khác nhau Mục đích chính của OWL là sẽ cung cấp các chuẩn để tạo ra một nền tảng để quản lý tài sản, tích hợp mức doanh nghiệp và để chia sẻ cũng như tái sử dụng dữ liệu trên Web OWL được phát triển bởi nó có nhiều tiện lợi để biểu diễn ý nghĩa và ngữ nghĩa hơn so với XML, RDF và RDFS, và vì OWL ra đời sau các ngôn ngữ này, nó có khả năng biểu diễn các nội dung mà máy có thể biểu diễn được trên web
Các phiên bản của OWL: Hiện nay có ba loại OWL: OWL Lite, OWL DL (Descrition logic), và OWL Full
- OWL Lite: hỗ trợ cho những người dùng chủ yếu cần sự phân lớp theo thứ
bậc và các ràng buộc đơn giản Ví dụ: Trong khi nó hỗ trợ các ràng buộc về tập hợp,
nó chỉ cho phép tập hợp giá trị của 0 hay 1 Điều này cho phép cung cấp các công
cụ hỗ trợ OWL Lite dễ dàng hơn so với các bản khác
• OWL DL (OWL Logic): hỗ trợ cho những người dùng cần sự diễn cảm tối đa
trong khi cần duy trì tính tính toán toàn vẹn (tất cả các kết luận phải được đảm bảo
để tính toán) và tính quyết định (tất cả các tính toán sẽ kết thúc trong khoảng thời gian hạn chế) OWL DL bao gồm tất cả các cấu trúc của ngôn ngữ OWL, nhưng chúng chỉ có thể được sử dụng với những hạn chế nào đó (Ví dụ: Trong khi một lớp
có thể là một lớp con của rất nhiều lớp, một lớp không thể là một thể hiện của một lớp khác) OWL DL cũng được chỉ định theo sự tương ứng với logic mô tả, một lĩnh vực nghiên cứu trong logic đã tạo nên sự thiết lập chính thức của OWL
• OWL Full muốn đề cập tới những người dùng cần sự diễn cảm tối đa và sự tự
do của RDF mà không cần đảm bảo sự tính toán của các biểu thức Ví dụ, trong OWL Full, một lớp có thể được xem xét đồng thời như là một tập của các cá thể và như là một cá thể trong chính bản thân nó OWL Full cho phép một Ontology gia cố thêm ý nghĩa của các từ vựng được định nghĩa trước (RDF hoặc OWL)
Các phiên bản này tách biệt về các tiện ích khác nhau, OWL Lite là phiên bản
dễ hiểu nhất và phức tạp nhất là OWL Full
Mối liên hệ giữa các ngôn ngữ con của OWL: