Theo định nghĩa của W3C World Wide Web Consortium, dịch vụ Web là một hệ thống phần mềm được thiết kế để hỗ trợ khả năng tương tác giữa các ứng dụng trên các máy tính khác nhau thông qua
Trang 1Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
HOÀNG ANH CÔNG
MÔ HÌNH ỨNG DỤNG DỊCH VỤ WEB NGỮ NGHĨA TÌM KIẾM TÀI
LIỆU ĐIỆN TỬ TRONG THƯ VIỆN ĐIỆN TỬ
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
Thái Nguyên - Năm 2015
Trang 2Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
HOÀNG ANH CÔNG
MÔ HÌNH ỨNG DỤNG DỊCH VỤ WEB NGỮ NGHĨA TÌM KIẾM TÀI LIỆU
ĐIỆN TỬ TRONG THƯ VIỆN ĐIỆN TỬ
CHUYÊN NGÀNH: KHOA HỌC MÁY TÍNH
MÃ SỐ: 60.48.01.01
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
Người hướng dẫn khoa học: TS PHẠM THẾ QUẾ
Thái Nguyên - Năm 2015
Trang 3Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
LỜI CẢM ƠN
Để hoàn thành luận văn này tôi được rất nhiều sự động viên giúp đỡ của
các cá nhân và tập thể
Trước hết, cho tôi xin bày tỏ lòng biết ơn sâu sắc đến TS Phạm Thế Quế
đã hướng dẫn tôi thực hiện đề tài nghiên cứu của mình
Xin cùng bày tỏ lòng biết ơn chân thành tới các thầy cô giáo, người đã đem lại cho tôi những kiến thức vô cùng quý giá, có ích trong những năm học vừa qua
Cảm ơn Trường Đại học Văn hóa Thể thao và Du lịch Thanh Hóa đã hết sức tạo điều kiện cho tôi trong quá trình học tập
Cũng xin gửi lời cám ơn chân thành tới Ban Giám hiệu, Phòng Đào tạo, Khoa sau đại học, Đại học Công nghệ thông tin và truyền thông Thái Nguyên,
đã tạo điều kiện cho tôi trong quá trình học tập và nghiên cứu
Cuối cùng tôi xin gửi lời cám ơn đến gia đình, bạn bè đồng nghiệp, tập thể lớp Khoa học máy tính K12G, những người đã luôn bên tôi, động viên và khuyến khích tôi trong quá trình thực hiện đề tài nghiên cứu của mình
Học viên
Hoàng Anh Công
Trang 4Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
LỜI CAM ĐOAN
Tên tôi là Hoàng Anh Công, học viên cao học lớp Khoa học máy tính
K12G, khóa 2013-2015 Tôi xin cam đoan luận văn thạc sĩ „„Mô hình ứng dụng dịch vụ Web ngữ nghĩa tìm kiếm tài liệu điện tử trong thư viện điện tử‟‟ là
công trình nghiên cứu của riêng tôi, số liệu và các kết quả nghiên cứu trong luận văn là trung thực và không trùng với đề tài khác Tôi cũng xin cam đoan rằng mọi sự giúp đỡ cho việc thực hiện luận văn này đã được cảm ơn và các thông tin trích dẫn trong luận văn đã được chỉ rõ nguồn gốc
Học viên
Hoàng Anh Công
Trang 5Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
MỤC LỤC
LỜI CẢM ƠN i
LỜI CAM ĐOAN ii
MỤC LỤC iii
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
CHƯƠNG 1: DỊCH VỤ WEB NGỮ NGHĨA 3
1.1 Web nghữ nghĩa 3
1.1.1 Đặt vấn đề 3
1.1.2 Nhược điểm World Wide Web 4
1.1.3 Web ngữ nghĩa là gì [6] 6
1.1.4 Đặc điểm của Web ngữ nghĩa [6] 7
1.1.5 Siêu dữ liệu (Metadata) [4] 9
1.1.6 Một số ứng dụng cơ bản dựa trên Semantic Web [2] 11
1.1.7 Kiến trúc Web ngữ nghĩa [5] 12
1.1.8 Ngôn ngữ mô tả tài nguyên 13
1.1.9 Ontology [12] 18
1.2 Dịch vụ Web (Web Services) [3] 20
1.2.1 Giới thiệu 20
1.2.2 Đặc điểm của dịch vụ Web 21
1.2.3 Kiến trúc của dịch vụ Web [3] 22
1.2.4 Các thành phần của dịch vụ Web [3] 23
1.2.5 Quy tắc xây dựng một Web ngữ nghĩa 26
1.2.6 Xây dựng một dịch vụ Web 27
Trang 6Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
KẾT LUẬN CHƯƠNG 29
CHƯƠNG 2: ỨNG DỤNG DỊCH VỤ WEB NGỮ NGHĨA TÌM KIẾM TÀI LIỆU TRONG THƯ VIỆN ĐIỆN TỬ 29
2.1 Khái niệm về thư viện điện tử [10] 30
2.1.1 Thư viện điện tử là gì 30
2.1.2 Đặc điểm, thành phần thư viện điện tử 30
2.1.3 Lợi ích của thư viện điện tử 31
2.2 Cấu trúc của một thư viện điện tử [13] 33
2.2.1 Cấu trúc thông tin và tập hợp các đối tượng số 33
2.2.2 Các yếu tố cấu thành hệ thống thư viện số 34
2.3 Mô hình tìm kiếm tài liệu trong thư viện điện tử dựa trên dịch vụ Web35 2.3.1 Đặt vấn đề 35
2.3.2 Một số khái niệm, thuật ngữ sử dụng trong thư viện điện tử 37
2.3.3 Các thành phần chính 37
2.3.4 Tìm kiếm tài liệu dựa Semantic Web Service trong thư viện điện tử 40 2.3.5 Công cụ xây dựng Ontology – Protégé 41
KẾT LUẬN CHƯƠNG 43
CHƯƠNG 3 THIẾT KẾ HỆ THỐNG VÀ TRIỄN KHAI ỨNG DỤNG 44
3.1 Phân tích hệ thống tìm kiếm tài liệu trong thư viện điện tử 44
3.1.1 Các giai đoạn xây dựng hệ thống 44
3.1.2 Phân tích các chức năng tìm kiếm của hệ thống 45
3.2 Các quyền của hệ thống tìm kiếm tài liệu trong thư viện điện tử 46
3.3 Thiết kế hệ thống tìm kiếm tài liệu trong thư viện điện tử 47
3.3.1 Biểu đồ Login 47
3.3.2 Biểu đồ Logout 47
3.3.3 Biểu đồ Import thông tin từ website 48
3.3.4 Biểu đồ Import thông tin thủ công bằng tay 48
3.3.5 Biểu đồ Xem thông tin 49
Trang 7Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
3.3.6 Biểu đồ Sửa thông tin 49
3.3.7 Biểu đồ Xóa thông tin 50
3.3.8 Biểu đồ Tìm kiếm thông tin 50
3.4 Thiết kế Ontology 51
3.4.1 Các bước xây dựng Ontology 51
3.4.2 Thiết kế mô hình dữ liệu Ontology 54
3.5 Chương trình thử nghiệm và đánh giá 60
3.5.1 Trang chủ hệ thống 60
3.5.2 Màn hình hiển thị tất cả kết quả tìm kiếm 60
3.5.3 Màn hình hiển thị tìm kiếm tài liệu chính xác 61
3.5.4 Màn hình hiển thị thông tin tài liệu 61
3.5.5 Màn hình hiển thị thông tin tác giả 62
3.5.6 Đánh giá chương trình thử nghiệm 62
KẾT LUẬN 63
TÀI LIỆU THAM KHẢO 65
Trang 8Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
WSDL Web Service Description Language
Trang 9Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
DANH MỤC CÁC BẢNG
Bảng 3.1 Các quyền của hệ thống
Trang 10Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
DANH MỤC CÁC HÌNH
1.1 Kiến trúc semantic web
1.2 Kiến trúc dịch vụ web
1.3 Các thành phần dịch vụ web
1.4 Phát triển dịch vụ web ngữ nghĩa
2.1 Các yếu tố cấu thành hệ thống thư viện số
2.2 Một số thí dụ web ngữ nghĩa trong hoạt động thư viện
điện tử 2.3 Một số cơ chế hoạt động của web sevice
3.2 Biểu đồ Login
3.3 Biểu đồ Logout
3.4 Biểu đồ Import thông tin từ Website
3.5 Biểu đồ Import bằng tay
3.6 Biểu đồ xem thôn tin
3.7 Biểu đồ Sửa thông tin
3.8 Biểu đồ Xóa thông tin
3.9 Biểu đồ Tìm kiếm thông tin
Trang 11Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
3.10 Sơ đồ mô tả class Linh_vuc
3.11 Sơ đồ mô tả class Loai_tai_lieu
3.12 Sơ đồ mô tả class Thu_vien
3.13 Sơ đồ mô tả class Thoi_gian
3.14 Sơ đồ mô tả class Tac_gia
3.15 Sơ đồ mô tả class Noi_dung
3.16 Sơ đồ mô tả class Tai_lieu
3.17 Sơ đồ mô tả tổng quát Ontology
3.18 Ontology tài liệu được xây dựng bằng công cụ Protége 3.19 Trang chủ hệ thống
3.20 Màn hình hiển thị tất cả kết quả tìm kiếm
3.21 Màn hình hiển thị tìm kiếm tài liệu chính xác
3.22 Màn hình hiển thị thông tin tài liệu
3.23 Màn hình hiển thị thông tin tác giả
Trang 12Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
Trang 13Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
MỞ ĐẦU
Dịch vụ Web (Web Serivce) là công nghệ cho phép Client truy xuất để thực hiện tất cả các tác vụ như một Web Application Về bản chất, Web Service dựa trên XML và HTTP, trong đó XML có chức năng mã hóa và giải mã dữ liệu
và sử dụng SOAP để truyền tải Web Service không phụ thuộc vào Platform, do
đó có thể sử dụng Web Service để truyền tải dữ liệu giữa các ứng dụng hay giữa các Platform với nhau
Theo định nghĩa của W3C (World Wide Web Consortium), dịch vụ Web
là một hệ thống phần mềm được thiết kế để hỗ trợ khả năng tương tác giữa các ứng dụng trên các máy tính khác nhau thông qua mạng Internet Có giao diện chung và sự gắn kết của nó được mô tả bằng XML Dịch vụ Web là tài nguyên phần mềm có thể xác định bằng địa chỉ URL, thực hiện các chức năng và đưa ra các thông tin người dùng yêu cầu Một dịch vụ Web được tạo nên bằng cách lấy các chức năng và đóng gói chúng sao cho các ứng dụng khác dễ dàng nhìn thấy
và có thể truy cập đến những dịch vụ mà nó thực hiện, đồng thời có thể yêu cầu thông tin từ dịch vụ Web khác Nó bao gồm các mô đun độc lập cho hoạt động của khách hàng và doanh nghiệp và bản thân nó được thực thi trên Server
Giá trị cơ bản của dịch vụ Web dựa trên việc cung cấp các phương thức theo chuẩn trong việc truy nhập đối với hệ thống đóng gói và hệ thống kế thừa Các phần mềm được viết bởi những ngôn ngữ lập trình khác nhau và chạy trên những nền tảng khác nhau có thể sử dụng dịch vụ Web để chuyển đổi dữ liệu thông qua mạng Internet theo cách giao tiếp tương tự bên trong một máy tính
Web Service cho phép Client và Server tương tác với nhau trong các môi trường khác nhau Phát triển theo hướng từng thành phần với những lĩnh vực và
cơ sở hạ tầng Web cụ thể Các ứng dụng hoạt động theo mô hình Client/Server
Để hiểu thêm về vấn đề này, em chọn đề tài “Mô hình ứng dụng dịch vụ Web ngữ nghĩa tìm kiếm tài liệu điện tử trong thư viện điện tử” nhằm nắm
được những khái niệm cơ bản về Web ngữ nghĩa (Semantic Web) và dịch vụ
Trang 14Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
Web (Web Services) đồng thời xây dựng ứng dụng cung cấp các thông tin về sách, tài liệu nghiên cứu trong thư viện điện tử cho người đọc khi họ có nhu cầu
Web Service (WS) là một mô hình cụ thể của kiến trúc hướng dịch vụ (SOA) dựa trên XML và HTTP Vì WS sử dụng XML và HTTP nên đề tài hướng tới việc sử dụng nền tảng Sematic web Do vậy, trước khi nói về WS, luận văn sẽ nhắc lại vài nét về Sematic web
Nội dung luận văn gồm 3 chương:
Chương 1: Dịch vụ Web ngữ nghĩa
Chương 2: Mô hình ứng dụng dịch vụ Web ngữ nghĩa tra cứu tìm kiếm tài liệu trong thư viện điện tử
Chương 3: Cài đặt ứng dụng
Dịch vụ Web có thể áp dụng và tích hợp dịch vụ Web như chọn lọc và phân loại tin tức như hệ thống thư viện; các dịch vụ du lịch; bán hàng qua mạng, thông tin thương mại; tỷ giá hối đoái, đấu giá qua mạng…hay dịch vụ giao dịch trực tuyến (cho cả B2B và B2C) như đặt vé máy bay, thông tin thuê xe…
Do vậy, việc phát triển và tích hợp các ứng dụng với dịch vụ Web đang được quan tâm phát triển là điều hoàn toàn dễ hiểu
Nghiên cứu Web thế hệ mới, máy có thể xử lý được Vì vậy, trước hết phải thay đối mô hình trong cách con người nghĩ về dữ liệu Trong các công nghệ Web truyền thống, phần mềm tốt hoàn toàn phụ thuộc vào dữ liệu tốt Web ngữ nghĩa làm công việc di chuyển các ứng dụng sang dữ liệu
Nghiên cứu dịch vụ Web ngữ nghĩa ngày càng phát triển Các dịch vụ Web có khả năng tích hợp các ứng dụng trên phạm vi rộng như dịch vụ chọn lọc
và phân loại tin tức trong các hệ thống thư viện điện tử để tìm kiếm các thông tin cần thiết; các ứng dụng cho các dịch vụ du lịch như cung cấp thông tin về giá
vé, địa điểm; mua - bán hàng qua mạng như thông tin về giá cả, tỷ giá hối đoái, đấu giá qua mạng…hay dịch vụ giao thương mại điện tử B2B và B2C Bất kỳ một lĩnh vực nào trong cuộc sống cũng có thể tích hợp với dịch vụ Web Do vậy,
Trang 15Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
việc phát triển và tích hợp các ứng dụng với dịch vụ Web đang được quan tâm phát triển là điều hoàn toàn dễ hiểu
CHƯƠNG 1: DỊCH VỤ WEB NGỮ NGHĨA
1.1 Web nghữ nghĩa
1.1.1 Đặt vấn đề
Năm 2001, Tim Berners-Lee – người phát minh ra World Wide Web - đã đưa ra mô ̣t định nghĩa về Semantic Web : “Semantic Web là mô ̣t sự mở rô ̣ng của Web hiê ̣n ta ̣i mà ở đó , thông tin được đi ̣nh nghĩa tốt hơn , giúp máy tính và con người có thể làm viê ̣c hợp tác với nhau” [1]
Hầu hết trên Web hiện tại chỉ được biết đến bởi con người đọc các trang web Có thể hiểu “Semantic” có nghĩa là dữ liệu trên Web có thể được khám phá không chỉ bởi con người mà cả máy tính Cụm từ “Semantic Web” đại diện cho một cách nhìn nhận mà ở đó, con người cũng như máy tính có thể đọc, hiểu và
sử dụng dữ liệu trên Web để thực hiện những mục đích hữu ích cho người dùng
Cách nhìn nhận của Tim Berners-Lee về Semantic Web có hai phần: thứ nhất là Web có tính cộng tác nhiều hơn, thứ hai là máy tính có thể hiểu và thực thi trên Web
Cách nhìn nhận của Tim Berners-Lee liên quan đến việc lấy các trang HTML từ Web server Tuy vậy World Wide Web Consortium (W3C) đã đưa ra
kỹ thuật để có thể nắm bắt những quan hệ như vậy, đó là RDF (Resource Description Framework)
Điểm quan trọng nhất, khác biệt nhất so với Web truyền thống là trong Web ngữ nghĩa có khái niệm siêu dữ liệu (metadata) - dữ liệu trong dữ liệu Siêu
dữ liệu giúp cho máy tính có thể xử lý thông tin trên Web một cách thông minh hơn Nhưng để có thể tạo được Web mà máy tính có thể xử lý dữ liệu trên đó thì trước tiên phải có một cách nhìn nhận khác về dữ liệu Nếu như trước kia người ta chỉ coi dữ liệu là thuộc sở hữu của ứng dụng và không có vai trò quan
Trang 16Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
trọng thì càng ngày người ta càng nhận thấy sự quan trọng của nó Dữ liệu càng được tổ chức “thông minh” thì càng thể hiện được sự tính hiệu quả của nó
Ban đầu dữ liệu chỉ là những văn bản và các bản ghi cơ sở dữ liệu đơn thuần và sự thông minh chỉ nằm ở trên các ứng dụng Sự xuất hiện của các tài liệu XML theo từng lĩnh vực giúp cho ứng dụng dễ dàng thực hiện ở các lĩnh vực riêng Sự xuất hiện của các phép phân loại và các tài liệu với bộ từ vựng trộn lẫn nhau cho thấy một bước tiến trong việc khai phá dữ liệu, dữ liệu đã đủ thông minh để có thể được tổng hợp cùng với các dữ liệu khác Sự phát triển cao hơn nữa của dữ liệu chính là các Ontology và các luật suy diễn, nhờ đó mà dữ liệu mới có thể được suy diễn ra từ dữ liệu có sẵn dựa vào các luật logic Dữ liệu
sẽ đủ thông minh để có thể được mô tả với các quan hệ cụ thể, các hình thức phức tạp
Với sự nhìn nhận mới về dữ liệu, có một cách nói khác về Semantic Web: Semantic Web là một Web với dữ liệu thông minh mà máy tính có thể xử lý
1.1.2 Nhƣợc điểm World Wide Web
World Wide Web, gọi tắt là Web hoặc WWW, là mạng thông tin toàn cầu
mà bất kỳ người dùng nào cũng có thể truy nhập qua các máy tính kết nối với mạng Internet Web được phát minh và đưa vào sử dụng vào khoảng năm
1990, 1991 bởi viện sĩ Viện Hàn lâm Anh Tim Berners-Lee và Robert Cailliau (Bỉ) tại CERN, Geneva, Switzerland [1]
Các tài liệu trên World Wide Web được lưu trữ trong một hệ thống siêu văn bản (Hypertext) trên Internet Người dùng phải sử dụng trình duyệt Web (Web Browser) để xem siêu văn bản thông qua hộp địa chỉ (Address)
do người sử dụng yêu cầu Trình duyệt sẽ tự động gửi thông tin đến máy chủ (Web Server) và hiển thị trên màn hình máy tính của người xem Người dùng có thể theo các liên kết (Hyperlink) trên mỗi trang Web để nối với các tài liệu khác hoặc gửi thông tin phản hồi theo máy chủ trong một quá trình tương tác Hoạt động truy tìm theo các siêu liên kết thường được gọi là duyệt Web
Trang 17Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
Độ chính xác và chứng thực của thông tin trong quá trình lướt Web không được đảm bảo Khi lượng thông tin trên Internet ngày càng tăng, đồng nghĩa với việc tìm kiếm, khai thác, tổ chức, truy nhập và duy trì thông tin ngày càng trở nên khó khăn hơn đối với người sử dụng Xét ví dụ, người sử dụng muốn tìm kiếm thông tin về Mrs Cook Tất cả những thông tin mà người sử dụng có thể nhớ được là tên của người này là Cook, làm việc cho doang nghiệp có liên quan đến tổ chức có tên là “ARPA-123-4567” Đây là những thông tin được sử dụng
để tìm thông tin cá nhân của Mrs Cook, theo một cơ sở tri thức có cấu trúc hợp
lý chứa tất cả các nhân tố có liên quan Có vẻ như điều này đã đủ cho việc tìm kiếm trên World Wide Web Nhưng khi tìm kiếm, lại xảy ra các tình trạng sau:
− Sử dụng danh mục Web có sẵn, người sử dụng có thể tìm ra trang chủ của ARPA nhưng ở đó có hàng trăm người “thầu phụ” và các “nhóm nghiên cứu” đang làm việc cho chi nhánh “123-4567”
− Nếu tìm kiếm theo từ khoá “Cook” thì kết quả sẽ trả lại hàng nghìn trang Web nói về “Nấu ăn”
− Nếu tìm kiếm một trong hai cụm từ “ARPA ” và “123-4567” thì có hàng trăm kết quả trả về Còn nếu tìm kiếm cho cả ba từ khoá trên thì sẽ trả về kết quả rỗng
Tình trạng trên là khá phổ biến đối với nhiều trường hợp tìm kiếm trên World Wide Web Vấn ở đây là dữ liệu Web có quá ít tổ chức ngữ nghĩa Khi Web càng ngày càng mở rộng thì việc thiếu tổ chức ngữ nghĩa như vậy sẽ làm cho việc tìm kiếm thông tin càng ngày càng khó, thậm chí nếu có thêm những kỹ nghệ xử lý ngôn ngữ tự nhiên, cơ chế đánh chỉ mục…
Tóm lại, hiện nay vẫn chưa có một cách tìm kiếm hiệu quả nào để trả lời câu truy vấn có dạng như:
Find webpage for all x,y and z such that
x is a person, y is a person, z is a person
Where
lastName (x,”Cook”) and lastName (y, “Cook”) and
Trang 18Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
employee (z,x) and employee (z,y) and married (x,y) and involvedIn (z, “ARPA 123-4567”)
Sự thiếu khả năng hiểu nội dung các từ và các mối quan hệ giữa các thuật ngữ tìm kiếm giải thích tại sao trong nhiều trường hợp máy tìm kiếm lại trả về kết quả tìm kiếm sai trong khi lại không tìm thấy những tài liệu mong muốn
Nếu các máy tìm kiếm có thể hiểu được nội dung ngữ nghĩa của các từ, hoặc hơn thế nữa, nó có thể hiểu được cả mối quan hệ về mặt ngữ nghĩa giữa các từ đó thì độ chính xác tìm kiếm sẽ được cải thiện rất nhiều
Đây chính là một trong những nguyên nhân dẫn đên sự ra đời của thế hệ Web thứ ba: Semantic Web
1.1.3 Web ngữ nghĩa là gì [6]
Tổ chức World Wide Web (W3C) đưa ra một định nghĩa về Web ngữ
nghĩa (Semantic Web) như sau: “Semantic Web là một sự nhìn nhận, đó là ý tưởng về việc dữ liệu trên Web được định nghĩa và sử dụng theo cách mà nó có thể được sử dụng bởi máy tính không chỉ với mục đích hiển thị mà còn nhằm mục đích tự động phân tích, sử dụng lại dữ liệu qua các ứng dụng khác”
Định nghĩa của W3C chú trọng vào kỹ thuật nhiều hơn Tuy nhiên, tất cả các định nghĩa đều tập trung vào sự khác biệt trong việc định nghĩa dữ liệu, định nghĩa thông tin Với những mở rộng của Web ngữ nghĩa, những sức mạnh vượt trội của Web sẽ được thể hiện nhằm phục vụ cho con người
Tim Berners-Lee (người phát minh ra Web) đưa ra định nghĩa Web ngữ
nghĩa như sau: “Bước đầu tiên là đặt dữ liệu trên Web theo một định dạng mà máy tính có thể hiểu được, hoặc chuyển thành định dạng mà máy tính có thể hiểu được Điều này tạo ra một loại Web gọi là Semantic Web - là một Web dữ liệu mà có thể được xử lý được trực tiếp hoặc gián tiếp bằng máy tính.”
Web ngữ nghĩa không phải là một web riêng biệt mà nó chỉ là một sự mở rộng của Web hiện tại, mà ở đó có các thông tin về ngữ nghĩa nhiều hơn, làm cho máy tính và con người có thể phối hợp làm việc tốt hơn
Trang 19Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
Web ngữ nghĩa không phải chỉ dành cho World Wide Web Nó kèm theo một tập hợp các công nghệ mà cũng có thể làm việc trên Intranet của các công
ty, doanh nghiệp…[4]
Xét về mặt bản chất, Web ngữ nghĩa chỉ là một công cụ để con người cũng như máy tính sử dụng để biểu diễn thông tin Hay nói chính xác hơn thì Web ngữ nghĩa chỉ là một dạng dữ liệu trên Web Khác với các dạng thức dữ liệu được trình bày trong HTM, dữ liệu trong Web ngữ nghĩa được đánh dấu, phân lớp, mô hình hóa, được bổ sung thêm các thuộc tính, các mối liên hệ… theo các lĩnh vực cụ thể Qua đó giúp cho các phần mềm máy tính có thể hiểu được dữ liệu và tự động xử lý dữ liệu Chẳng hạn, với cụm từ “Hồ Chí Minh”, trong không gian Web ngữ nghĩa, được hiểu là lãnh tụ Hồ Chí Minh với các thuộc tính như năm sinh, quê quán, thân thế, sự nghiệp của Người…
1.1.4 Đặc điểm của Web ngữ nghĩa [6]
Web hiện tại đang chứa đựng lượng thông tin khổng lồ Tuy vậy, khả năng khai thác lượng thông tin này lại bị hạn chế rất nhiều, điển hình là việc tìm kiếm thông tin trên Web lại nhận được rất nhiều kết quả không mong muốn khiến người dùng khó tìm được thông tin mình cần Mặt khác, vì chỉ có con người mới hiểu được nội dung trên các trang Web hiện nay nên các thông tin trên Web không thích hợp cho các tác tử phần mềm, khiến việc tự động hóa trên Web gặp rất nhiều khó khăn
Semantic Web là sự mở rộng của Web hiện tại Vì vậy, những đặc điểm nổi bật nhất của Semantic Web chính là những khả năng giúp khắc phục những hạn chế của Web hiện nay
Thomas B Passin đã ghi chép lại một số lời phát biểu về Semantic Web của các tổ chức và nhà khoa học trong cuốn sách Explorer's Guide to the Semantic Web Những lời phát biểu này có thể được coi như những cách nhìn nhận khác nhau về các đặc điểm của Semantic Web:
− Máy tính có thể hiểu dữ liệu: “Semantic Web là một sự nhìn nhận, đó là ý
tưởng về việc dữ liệu trên Web được định nghĩa và sử dụng theo cách mà
Trang 20Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
nó có thể được sử dụng bởi máy tính không chỉ với mục đích hiển thị mà còn nhằm mục đích tự động phân tích, sử dụng lại dữ liệu qua các ứng dụng khác” (theo W3C)
− Hỗ trợ các tác tử thông minh: “Mục đích của Semantic Web là làm sao để
biểu diễn dữ liệu trên Web mà máy tính có thể hiểu được tốt hơn, để các tác tử thông minh có thể tìm kiếm và thao tác các thông tin thích hợp” (theo R.S.Cost)
− Phân tán và liên kết dữ liệu: “Semantic Web cung cấp khả năng mềm dẻo
đủ để có thể biểu diễn tất cả dữ liệu và các luật logic đồng thời liên kết chúng với nhau để tạo nên giá trị tổng hợp to lớn” (theo W3C) “Một mô
tả đơn giản về Semantic Web là sự cố gắng để máy tính có thể xử lý dữ liệu mà World Wide Web đã hỗ trợ để con người có thể đọc được Điều
đó nhằm chuyển đổi thông tin theo một cách thông thường để dữ liệu có thể được truy cập, được kết nối với nhau và được hiểu bởi máy tính Ngoài ra còn nhằm mục đích chuyển đổi Web từ một lượng lớn các siêu liên kết trở thành một lượng lớn các cơ sở dữ liệu được liên kết với nhau” (theo SWAD-E: Semantic Web Advanced Development for Europe)
− Là một cơ sở hạ tầng hỗ trợ tự động hóa: Trong bài báo mới nhất của
Berners-Lee ở tạp chí Scientific American, ông đã khẳng định, Semantic Web là một cơ sở hạ tầng chứ không phải là một ứng dụng Và độc giả hoàn toàn đồng ý với ý kiến đó (theo Tuttle) “Vấn đề thực sự là thiếu một framework tự động ở Web hiện tại…” (theo Garcia và Delgado)
− Phục vụ con người: “Một cách nhìn về Semantic Web là để các phần mềm
máy tính hỗ trợ con người có được lượng lớn tài nguyên trên Website cần được trích rút, kết hợp và đánh chỉ mục những thông tin bên trong” (theo Cranefield) “Semantic Web là một cách nhìn về thế hệ tiếp theo của Web, nó cho phép các ứng dụng web thu thập một cách tự động các tài liệu trên web từ các nguồn khác nhau, kết hợp và xử lý thông tin đồng
Trang 21Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
thời phối hợp với các ứng dụng khác để thực hiện những tác vụ phức tạp cho con người” (theo Anuatariya)
− Có các chú thích (annotation) tốt hơn: “Ý tưởng về Semantic Web của
Berners-Lee đã giúp hiểu rằng nó có các chú thích được biểu diễn ở dạng
mà máy tính có thể xử lý và chúng được liên kết với nhau” (theo Euzenat)
− Cải thiện khả năng tìm kiếm: “Sẽ sớm có thể truy cập các tài nguyên trên
Web bằng nội dung thay vì chỉ bằng các từ khóa” (theo Anuatariya)
“Mục đích của công nghệ là để xây dựng một chỉ mục có cấu trúc của trang web” (theo Desmontils và Jacquin)
− Hỗ trợ các dịch vụ web (web services) và các tác tử phần mềm: “Càng
ngày, Semantic Web càng giúp cung cấp các truy nhập tới không chỉ các văn bản tĩnh tổng hợp các thông tin hữu ích mà cả các dịch vụ cung cấp các hành vi cần thiết” (theo Klein và Bernstein) “Semantic Web hứa hẹn
sẽ mở rộng các dịch vụ cho web hiện tại bằng việc cho phép các tác tử phần mềm tự động hóa các thủ tục mà hiện này đang phải thực hiện bằng tay và giới thiệu các ứng dụng mới mà không thể thực hiện với web hiện tại” (theo Tallis, Goldman và Balzer)
Có thể các đặc điểm trên đây là chưa đầy đủ về Semantic Web nhưng đó cũng là những đặc điểm nổi bật nhất Tất cả những đặc điểm đó đều được nhấn mạnh ở khả năng vượt trội của Semantic Web so với Web hiện tại và một khả năng này đã trở thành hiện thực
1.1.5 Siêu dữ liệu (Metadata) [4]
Một trong những nền tảng cơ bản làm nên Web ngữ nghĩa là các siêu dữ liệu Siêu dữ liệu dùng để mô tả tài nguyên thông tin, còn gọi là dữ liệu về dữ liệu Mỗi thực thể hay khái niệm có thể có một hay nhiều siêu dữ liệu Cho ví
dụ, một quyển sách có [tên tác giả], [tên sách], [nhà xuất bản], là các siêu dữ liệu về quyển sách Có thể đơn giản hóa việc phân loại và truy vấn dữ liệu bằng cách dùng các siêu dữ liệu
Có 3 kiểu Metadata:
Trang 22Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
− Desciptive Metadata: Mô tả một tài nguyên cho những mục đích như là
khám phá hoặc nhận diện Nó có thể bao gồm các phần tử như: titles, astract, author, keyword,
− Structural Metadata: Ví dụ, cho biết các đối tượng phức hợp liên kết với
nhau như thế nào, các trang được sắp xếp thành các chương như thế nào
− Administrative Metadata: Cung cấp thông tin giúp cho việc quản lý một
tài nguyên, như là nó được tạo ra khi nào và như thế nào, kiểu file, và các thông tin kỹ thuật khác, và những ai có thể truy cập đến nó
Mối liên hệ giữa siêu dữ liệu và tài nguyên thông tin mà nó mô tả có thể được thể hiện ở một trong hai cách sau:
− Các mô tà Metadata tách biệt bên ngoài đối tượng mô tả
− Các phần tử Metadata có thể được nhúng trong tài nguyên mà nó mô tả Với các tài liệu truyền thống, các mô tả dữ liệu nằm ngoài đối tượng mô
tả, như vậy siêu dữ liệu được lưu trữ một cách tách biệt bên ngoài đối tương mô tả
Với tài liệu nội dung số, siêu dữ liệu được nhúng trong bản thân tài nguyên hoặc trong liên kết với tài nguyên mà nó mô tả như trong trường hợp các thẻ meta của tài liệu HTML
Sơ đồ siêu dữ liệu là tập hợp những yếu tố siêu dữ liệu được thiết kế cho
mô tả một dạng tài nguyên thông tin cụ thể Như vậy siêu dữ liệu là sơ đồ hình thức được xác định để mô tả tài nguyên thông tin cho các đối tượng
Định nghĩa các yếu tố hoặc ý nghĩa được gán cho các yếu tố siêu dữ liệu thì được gọi là ngữ nghĩa của sơ đồ Mỗi sơ đồ siêu dữ liệu có ngữ nghĩa và cú pháp được quy định riêng Ví dụ trong yếu tố “Creator” - dùng để xác định là tác giả của tài liệu, hoặc yếu tố “Title” - được hiểu là nhan đề của tài liệu
Giá trị (dữ liệu) của yếu tố được gọi là nội dung Đó chính là giá trị của mỗi yếu tố siêu dữ liệu Nhờ các sơ đồ dữ liệu, các chương trình xử lý tự động
sẽ nhận biết đoạn dữ liệu nào sẽ thuộc thành phần nào, chẳng hạn đoạn dữ liệu này được nhận biết là nhan đề, đoạn dữ liệu kia được nhận biết là tác giả của tài liệu
Trang 23Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
1.1.6 Một số ứng dụng cơ bản dựa trên Semantic Web [2]
Quản lý tri thức được hiểu là quy trình hay các công cụ mà tổ chức sử
dụng để thu thập, phân tích, lưu trữ và phổ biến tri thức của họ Bên cạnh việc triển khai các công nghệ và tiến trình thích hợp cho mục đích thương mại thì cũng phải quan tâm đến việc quản lý tri thức sao cho hiệu quả để có thể sử dụng kinh nghiệm và sự hiểu biết của tài nguyên con người một cách tối ưu nhất
Ngày nay quản lý tri thức nổi lên như một hoạt động quan trọng của các
tổ chức lớn cũng như các các doanh nghiệp vì họ coi những tri thức như một tài sản quý để từ đó có thể tạo nên hiệu quả tốt hơn, tạo ra những giá trị mới và tăng tính cạnh tranh Quản lý tri thức cũng đóng vai trò đặc biệt quan trọng trong các
tổ chức quốc tế với các tổ chức phân tán về địa lý
Việc quản lý tri thức vẫn chứa đựng những hạn chế Hầu hết các loại dữ liệu vẫn là phi cấu trúc Tìm kiếm thông tin dựa trên từ khóa, lượng thông tin trả
về rất nhiều gây khó khăn cho người dùng Khi người dùng muốn có các thông tin cần thiết, các tác tử thông minh hiện nay không đủ khả năng thực hiện theo yêu cầu của người dùng…
Những hạn chế này sẽ được giải quyết với sự xuất hiện của Semantic Web Ưu điểm lớn nhất của Semantic Web là dữ liệu đã được cấu trúc hóa đồng thời các nền tảng của Semantic Web cũng hỗ trợ rất nhiều cho việc quản lý tri thức Khả năng biểu diễn luật cũng như khả năng suy diễn ra tri thức mới dựa trên những tri thức hiện tại có khả năng tạo nên những bước đột phá cho các hệ thống quản lý tri thức Người ta mong muốn rằng với Semantic Web, những cải tiến cho các hệ thống quản lý tri thức sẽ được thực hiện
Ứng dụng tìm kiếm: Tìm kiếm thông tin là một ứng dụng trong quản lý tri
thức Với lượng thông tin bùng nổ trên Web, người dùng không thể tự mình duyệt tất cả các trang web để thu thập thông tin, mà cần phải có những công cụ tìm kiếm hỗ trợ Các công ty như Google, Microsoft, Yahoo, Baidu… đều có các máy tìm kiếm của riêng họ nhằm chiếm lĩnh thị phần Sự phát triển nhanh chóng của Google là một ví dụ điển hình cho khả năng mang lại lợi nhuận của các ứng dụng tìm kiếm trên Web
Trang 24Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
Tuy nhiên, các máy tìm kiếm hiện nay vẫn chứa đựng rất nhiều hạn chế xuất phát từ việc các tài nguyên trên Web là các tài nguyên phi cấu trúc Vì vậy, các máy tìm kiếm chỉ có thể dựa theo từ khóa để tìm kiếm thông tin và đương nhiên sẽ có rất nhiều kết quả không mong muốn được trả về cho người dùng Các kết quả tìm kiếm vẫn chưa thực sự thỏa mãn được người dùng
Việc ứng dụng Semantic Web để tìm kiếm thông tin trong nội bộ các doanh nghiệp là hoàn toàn có thể thực hiện được ở thời điểm hiện tại với những nền tảng mà Semantic Web đang hỗ trợ Và hoàn toàn có thể tin rằng nếu tất cả các doanh nghiệp đều cấu trúc hóa các tài nguyên của họ, lượng tài nguyên được cấu trúc hóa trên phạm vi toàn cầu sẽ tăng lên và khả năng ứng dụng Semantic Web trên toàn Internet sẽ có thể trở thành hiện thực để mang lại những giá trị to lớn cho người dùng
1.1.7 Kiến trúc Web ngữ nghĩa [5]
− Lớp Unicode & URI: Bảo đảm việc sử dụng tập ký tự quốc tế và cung cấp phương tiện nhằm định danh các đối tượng trong Semantic Web
− Lớp XML cùng với các định nghĩa về namespace và schema (lược đồ) bảo đảm rằng có thể tích hợp các định nghĩa Semantic Web với các chuẩn dựa trên XML khác
− Lớp RDF [RDF] và RDFSchema [RDFS]: có thể tạo các phát biểu (statement) để mô tả các đối tượng với những từ vựng và định nghĩa của
Proof
Trust
Logic Ontology vocalary RDF + Schema
Digital Signature
XML + NS + XMLSchema
Hình 1.1 : Kiến trúc Semantic Web [8]
Rules Data
Data Tài liệu
tự mô tả
Trang 25Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
URI Và các đối tượng này có thể tham chiếu đến những từ vựng và định nghĩa của URI ở trên Lớp này có thể gán các kiểu (type) cho các tài nguyên và liên kết Và cũng là lớp quan trọng nhất trong kiến trúc Semantic Web
− Lớp Ontology: hỗ trợ sự tiến hóa của từ vựng vì nó có thể định nghĩa mối liên hệ giữa các khái niệm khác nhau
− Lớp Digital Signature: được dùng để xác định chủ thể của tài liệu (vd: tác giả của một tài liệu hay một lời tuyên bố)
1.1.8 Ngôn ngữ mô tả tài nguyên
a) Ngôn ngữ mô tả tài nguyên RDF: RDF là từ viết tắt của Resource
Description Framework RDF được đề cử bởi W3C cho một mô hình và ngôn ngữ siêu dữ liệu (metadata) chuẩn RDF là một bộ khung cho việc mô tả các tài nguyên trên web RDF cung cấp mô hình dữ liệu và cú pháp để các phần độc lập nhau có thể chuyển đổi cho nhau và sử dụng được RDF
Đị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] 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
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
Trang 26Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
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
b) Mô hình dữ liệu RDF: RDF là khung sườn (framework) cho việc xử lý
metadata, và nó mô tả các mối quan hệ giữa các tài nguyên thông qua các thuộc tính và các giá trị Sự kết hợp của một nguồn tài nguyên ([chủ ngữ]), một thuộc tính ([vị ngữ]) và một giá trị của thuộc tính được ([đối tượng]) được đặt trong một phát_biểu Ví dụ một câu nói như sau: “Giám đốc của công ty Phần mềm là Đào Xuân Ánh” Như vậy, có thể biểu diễn bởi một phát biểu RDF như sau:
− Chủ ngữ của phát biểu RDF là: “Công ty Phần mềm”
− Vị ngữ là: “Giám đốc”
− Đối tượng là: “Đào Xuân Ánh”
Mô hình cơ bản của RDF gồm ba bộ phận sau:
Resource (Tài nguyên): là tất cả những gì được mô tả bằng biểu thức RDF Mỗi tài nguyên có mộ URI và nó có thể là toàn bộ trang web hoặc
là một phần của trang web
Property (Thuộc tính): là đặc tính hay quan hệ mô tả tính chất tài nguyên Một property cũng có thể là một resource bởi vì nó có những tính chất riêng của nó
Statements (phát biểu): Một statements được dùng để kết hợp một resource, một property và một value của nó Mỗi phát biểu gồm ba thành phần sau:
Subject [Chủ ngữ]: địa chỉ hay vị trí tài nguyên muốn mô tả
Predicate [Vị ngữ]: xác định tính chất của tài nguyên
Object [Đối tượng]: nội dung gán cho thuộc tính
Trang 27Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
Ví dụ: Xét phát biểu sau: “Tác giả của lanh-dao-360-do-doc-2164.html là John C.Maxwell”
http://sachtot.vn/sach-dien-tu/nha-Phát biểu trên được phân ra thành các phần sau:
Chủ ngữ
http://sachtot.vn/sach-dien-tu/nha-lanh-dao-360-do-doc-2164.html
Vị ngữ http://sachtot.vn/elements/1.2/creator
Đối ượng http://sachtot.vn/staffid/98734
Phát biểu trên thay vì phải dùng tử “Tác giả” và “John C.Maxwell”, sẽ dùng URI “http://sachtot.vn/elements/1.2/creator” và
http://sachtot.vn/staffid/98734 để mô tả cho từng khái niệm trên
Phát biểu trên được biểu diễn dưới dạng một tripple như sau:
<http://sachtot.vn/sach-dien-tu/nha-lanh-dao-360-do-doc-2164.html>,
<http://sachtot.vn/elements/1.2/creator>, <http://sachtot.vn/staffid/98734>
c) Lược đồ RDF và truy vấn RDF: RDF cung cấp một cách để mô tả các
phát biểu đơn giản về các resource, sử dụng các thuộc tính và giá trị đã được định nghĩa trước Tuy nhiên, RDF chỉ cho phép định nghĩa các quan hệ, chứ không nói rõ chỉ có thể có các loại quan hệ nào, hay các kiểu đối tượng có thể có trong miền hiện tại Vì vậy, cần phải sử dụng lược đồ RDF (RDF Scheme - RDFS) Lược đồ RDF là một ngôn ngữ Ontologydạng đơn nhất, cung cấp một khung để mô tả các lóp, thuộc tính của ứng dụng cụ thể Các lớp trong RDFS giống như các lớp trong lập trình hướng đối tượng, cho phép các tài nguyên được định nghĩa như là một thực thể của lớp, hay lớp con của lớp Để thực hiện phân chia các lớp và các lớp con, RDFS sử dụng các phần tử như: rdfs: Class và rdfs:subClassOf
d) Các luật suy diễn trong lược đồ RDF: Có 6 trường hợp suy diễn theo
các cấp loại lớp, thuộc tính, lớp con, thuộc tính con, miền, giới hạn
1) Trường hợp 1: Suy diễn về loại của lớp IF (c2, subClassOf, cl)
AND (x, type, c2)
Trang 28Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
THEN (x, type, cl)
Ví dụ:
IF (Man, subClassOf, Person) AND (Nam, type, Man) THEN (Nam, type, Person)
2) Trường họp 2: Suy diễn về thuộc tính của lóp IF (p2, subPropertyOf, pl)
AND (X, p2, y) THEN (x, pl, y)
Ví dụ:
IF (author, subPropertyOf, creator) AND (Nam, author, KhoaLuan) THEN (Nam, creator, KhoaLuan)
3) Trường hợp 3: Suy diễn về lớp con của lóp IF (c2, subClassOf, cl)
AND (c3, subClassOf, c2) THEN (c3, subClassOf, cl)
Ví dụ:
IF (ClassB, subClassOf, ClassA) AND (ClassC, subClassOf, ClassB) THEN (ClassC, subClassOf, ClassB)
4) Trường hợp 4: Suy diễn thuộc tính con của thuộc tính IF (p2, subPropertyOf, pl)
AND (p3, subPropertyOf, p2) THEN (p3, subPropertyOf, pl)
Ví dụ:
IF (parent, subPropertyOf, ancestor) AND (father, subPropertyOf, parent) THEN (father, subPropertyOf, ancestor)
5) Trường họp 5: Suy diễn trong mien (domain)
IF (pi, domain, cl)
Trang 29Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
AND (x, pi, y) THEN (x, type, cl)
Ví dụ:
IF (author, domain, Human) AND (Nam, author, KhoaLuan) THEN (Nam, type, Human) 6) Trường họp 6: Suy diễn trong dãy giới hạn (range)
IF (pi, range, cl) AND (x, pi, y) THEN (y, type, cl)
Ví dụ:
IF (author, range, Document) AND (Nam, author, KhoaLuan) THEN (KhoaLuan, type, Document)
e) Ngôn ngữ truy vấn RDF: RDF là một cách để mô tả thông tin về các
tài nguyên Web một cách linh động Với lượng thông khổng lồ trên Web cần phải có ngôn ngữ truy vấn các tài liệu RDF một cách nhanh chóng và chính xác
Tổ chức W3C đã phát triển ngôn ngữ truy vấn trong các tài liệu RDF dựa trên cú pháp của ngôn ngữ truy vấn SQL trong CSDL quan hệ Trong phần này sẽ giới thiệu sơ lược ngôn ngữ truy van RDF thông dụng là SPARQL
SPARQL là một ngôn ngữ để truy cập thông tin từ các lược đồ RDF Nó cung cấp các tính năng sau:
- Trích thông tin từ các dạng của URI
- Trích thông tin từ các lược con
- Xây dựng đồ thị RDF mới dựa trên thông tin trong đồ thị truy vấn
Một câu truy vấn bao gồm 2 mệnh đề, mệnh đề SELECT và mệnh đề WHERE Mệnh đề SELECT định danh các biến mà ứng dụng quan tâm và mệnh
đề WHERE bao gồm các mẫu điều kiện cho các bộ ba
Ví dụ:
Trang 30Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
PREFIX rdf syntax : <http: / /www.w3 org /1999/02/22-rdf-syntax-ns#> SELECT ?x
WHERE {?x rdf syntax : type <ht tp : / /example.com/someType>}
Các giá trị được đặt trong dấu „o‟ dùng để chỉ một định danh URI Các giá trị được đặt trong dấu (“”) là các giá trị chuỗi kí tự Biến trong ngôn ngữ truy vấn có giá trị toàn cục Biến thường bắt đầu với kí tự „?‟ hay kí tự „$‟ để chỉ một biến SPARQL cung cấp một cơ chế viết tắt Tiếp đầu ngữ (prefix) dùng để làm gọn các ƯRI trong truy vấn
1.1.9 Ontology [12]
Ontology là một mô hình dữ liệu biểu diễn một lĩnh vực và được sử dụng
để suy luận về các đối tượng trong lĩnh vực đó và mối quan hệ giữa chúng Ontology cung cấp một bộ từ vựng chung bao gồm các khái niệm, các thuộc tính quan trọng và các định nghĩa về các khái niệm và các thuộc tính này Ngoài bộ
từ vựng, Ontology còn cung cấp các ràng buộc, đôi khi các ràng buộc này được coi như các giả định cơ sở về ý nghĩa mong muốn của bộ từ vựng, nó được sử dụng trong một miền mà có thể được giao tiếp giữa người và các hệ thống ứng dụng phân tán hỗn tạp khác
Ontology được xem là xương sống” của Semantic Web Danh sách dưới đây sẽ phân tích vai trò của Ontology trong ngữ cảnh ứng dụng Web có ngữ nghĩa
− Chia sẻ sự hiểu biết chung giữa các ứng dụng và con người
− Cho phép sử dụng lại tri thức Ví dụ, nếu một Ontology đã được phát triển các ứng dụng có thể sử dụng lại
− Đưa ra các giả thiết rõ ràng về miền: Đặc tả rõ ràng về miền tri thức sẽ giúp cho người mới dễ tìm hiểu ngữ nghĩa của miền lĩnh vực
− Phân tách tri thức lĩnh vực với tri thức thao tác
− Phân tích tri thức lĩnh vực Phân tích hình thức của các khái niệm, cần thiết cho việc tái sử dụng và mở rộng Ontology
Đặc điểm cốt lỗi của Ontology là: “Một Ontology là một sự chỉ định tường minh, hình thức và chia sẻ về một khái niệm dùng chung”
Trang 31Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
Bộ từ vựng Ontology được xây dựng trên cơ sở của cơ cấu mô tả tài nguyên (RDF) và lược đồ RDF, nó 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 Có một số kỹ thuật lập
mô hình và biểu diễn Ontologynhư frames, logic bậc nhất, logic mô tả, kĩ nghệ phần mềm, Mặc dù các kỹ thuật này có thể biểu diễn cùng một cơ sở tri thức với các mức độ hình thức và chi tiết khác nhau, nhưng chúng đều có cùng các thành phần cơ bản sau:
a) Các lớp: Lớp là nhóm, tập hợp các đối tượng trừu tượng có thể chứa
các cá thể, lớp khác hoặc cả hai Các Ontology biến đổi tuỳ thuộc vào cấu trúc
và nội dung của nó: một lớp có thể chứa các lớp con, có thể là một lớp tổng quan (chứa tất cả mọi thứ), có thể là lớp chỉ chứa những cá thể riêng lẻ Các lớp được sắp xếp theo cấu trúc có thứ bậc, thường là với một lớp thông dụng nhất kiểu Thing ở trên đỉnh và các lớp con rất cụ thể ở phía dưới cùng
Lớp có thể có các ràng buộc (restrictions) cho các quan hệ của cá thể thuộc lớp đó Ví dụ một Tác giả có thể có một hoặc nhiều tác phẩm thì một cá thể của tác giả phải có quan hệ “là tác giả của” với một hoặc nhiều cá thể của tác phẩm
b) Các cá thể - thể hiện và thuộc tính: Là những đối tượng đại diện thuộc
một lớp cụ thể trong domain Mỗi cá thể có thể có các thuộc tính của lớp mà nó thể hiện và quan hệ với các cá thể khác theo ràng buộc của lớp Những cá thể còn có thể được coi như là những trường hợp của lớp 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ụ, đố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
c) Các mối quan hệ: Là thuộc tính để mô tả mối liên hệ giữa các đối
tượng trong Ontology Một mối quan hệ là một thuộc tính có giá trị là một đối tượng nào đó trong Ontology Một đối tượng có thể có một hoặc nhiều quan hệ
Trang 32Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
trong Ontology bất kể lớp của nó có quan hệ đó hay không, quan hệ của đối tượng phải tuân theo ràng buộc của lớp chứa đối tượng đó nếu có
1.2 Dịch vụ Web (Web Services) [3]
1.2.1 Giới thiệu
Dịch vụ Web (Web Service) được coi là một công nghệ đột phá cho cuộc cách mạng trong cách thức hoạt động của các dịch vụ B2B (Business to Business) và B2C (Business to Customer) Giá trị cơ bản của dịch vụ Web dựa trên việc cung cấp các phương thức theo chuẩn trong việc truy nhập đối với hệ thống đóng gói và hệ thống kế thừa Các phần mềm được viết bởi những ngôn ngữ lập trình khác nhau và chạy trên những nền tảng khác nhau có thể sử dụng dịch vụ Web để chuyển đổi dữ liệu thông qua mạng Internet theo cách giao tiếp tương tự bên trong một máy tính Tuy nhiên, công nghệ xây dựng dịch vụ Web không nhất thiết phải là các công nghệ mới, nó có thể kết hợp với các công nghệ
đã có như XML, SOAP, WSDL, UDDI…
Với sự phát triển của Internet, dịch vụ Web thật sự trở thành một công nghệ đáng được quan tâm để giảm chi phí và độ phức tạp trong tích hợp và phát triển hệ thống
Theo định nghĩa của W3C (World Wide Web Consortium), dịch vụ Web
là một hệ thống phần mềm được thiết kế để hỗ trợ khả năng tương tác giữa các ứng dụng trên các máy tính khác nhau thông qua mạng Internet có thể xác định bằng địa chỉ URL, thực hiện các chức năng và đưa ra các thông tin người dùng yêu cầu Một dịch vụ Web được tạo nên bằng cách lấy các chức năng và đóng gói chúng sao cho các ứng dụng khác dễ dàng nhìn thấy và có thể truy cập đến những dịch vụ mà nó thực hiện, đồng thời có thể yêu cầu thông tin từ dịch vụ Web khác Nó bao gồm các module độc lập cho hoạt động của khách hàng và doanh nghiệp và bản thân nó được thực thi trên Server
Các ứng dụng cơ bản của dịch vụ Web là tích hợp các hệ thống Các ứng dụng được tích hợp với cơ sở dữ liệu (CSDL) và vào các ứng dụng khác Người
sử dụng sẽ giao tiếp với CSDL để tiến hành phân tích và lấy dữ liệu
Trang 33Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
1.2.2 Đặc điểm của dịch vụ Web
Đặc điểm
− Dịch vụ Web cho phép Client và Server tương tác với nhau trong các môi trường khác nhau
− Phần lớn kỹ thuật của dịch vụ Web được xây dựng dựa trên mã nguồn mở
và được phát triển từ các chuẩn đã được công nhận như XML
− Một dịch vụ Web bao gồm nhiều Module trên Internet
− Kết hợp phát triển theo hướng từng thành phần với những lĩnh vực cụ thể
và cơ sở hạ tầng Web, đưa ra những lợi ích cho doanh nghiệp, khách hàng, những nhà cung cấp và cá nhân
− Một ứng dụng khi được triển khai sẽ hoạt động theo mô hình Client/Server
Ngày nay dịch vụ Web đang rất phát triển, những lĩnh vực trong cuộc sống có thể áp dụng và tích hợp dịch vụ Web là khá rộng lớn như dịch vụ chọn lọc và phân loại tin tức (hệ thống thư viện có kết nối đến Web Portal để tìm kiếm các thông tin cần thiết); ứng dụng cho các dịch vụ du lịch (cung cấp giá vé, thông tin về địa điểm…), các đại lý bán hàng qua mạng, thông tin thương mại như giá cả, tỷ giá hối đoái, đấu giá qua mạng…hay dịch vụ giao dịch trực tuyến (cho B2B và B2C) như đặt vé máy bay, thông tin thuê xe…
Các ứng dụng có tích hợp dịch vụ Web đã không còn là xa lạ, đặc biệt trong điều kiện thương mại điện tử đang bùng nổ và phát triển không ngừng cùng với sự lớn mạnh của Internet Bất kỳ một lĩnh vực nào trong cuộc sống cũng có thể tích hợp với dịch vụ Web Đây là cách thức kinh doanh và làm việc
có hiệu quả bởi thời đại ngày nay là thời đại của truyền thông và trao đổi thông tin qua mạng Do vậy, việc phát triển và tích hợp các ứng dụng với dịch vụ Web đang được quan tâm phát triển là điều hoàn toàn dễ hiểu
Ưu điểm:
− Dịch vụ Web hoạt động trên các môi trường khác nhau
Trang 34Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
− Sử dụng các giao thức và chuẩn mở Giao thức và định dạng dữ liệu dựa trên văn bản (text), giúp các lập trình viên dễ dàng hiểu được
− Nâng cao khả năng tái sử dụng Thúc đẩy đầu tư các hệ thống phần mềm
đã tồn tại bằng cách cho phép các tiến trình/chức năng nghiệp vụ đóng gói trong giao diện dịch vụ Web
− Tạo mối quan hệ tương tác lẫn nhau và mềm dẻo giữa các thành phần trong hệ thống, dễ dàng cho việc phát triển các ứng dụng phân tán
− Thúc đẩy hệ thống tích hợp, giảm sự phức tạp của hệ thống, hạ giá thành hoạt động, phát triển nhanh và tương tác hiệu quả với hệ thống doanh nghiệp khác
Nhược điểm
− Có quá nhiều chuẩn cho dịch vụ Web, người dùng sử dụng khó khăn
− Phải quan tâm nhiều hơn đến vấn đề an toàn và bảo mật
1.2.3 Kiến trúc của dịch vụ Web [3]
Dịch vụ Web gồm có 3 chuẩn: SOAP (Simple Object Access Protocol), WSDL (Web Service Description Language) và UDDI (Universal Description, Discovery, and Integration) Hình 1.2 mô tả chồng giao thức của dịch vụ Web, trong đó UDDI được sử dụng để đăng ký và khám phá dịch vụ Web đã được miêu tả cụ thể trong WSDL Giao tác UDDI sử dụng SOAP để nói chuyện với UDDI server, sau đó các ứng dụng SOAP yêu cầu một dịch vụ Web Các thông điệp SOAP được gửi đi chính xác bởi HTTP và TCP/IP
Chồng giao thức dịch vụ Web là tập hợp các giao thức mạng máy tính được sử dụng để định nghĩa, xác định vị trí, thi hành và tạo nên dịch vụ Web tương tác với những ứng dụng hay dịch vụ khác Chồng giao thức này có 4 thành phần chính:
− Dịch vụ vận chuyển (Service Transport): có nhiệm vụ truyền thông điệp giữa các ứng dụng mạng, bao gồm những giao thức như HTTP, SMTP, FTP, JSM và giao thức thay đổi khổi mở rộng BEEP (Blocks Extensible Exchange Protocol)
Trang 35Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
− Thông điệp XML: có nhiệm vụ giải mã các thông điệp theo định dạng XML để có thể hiểu được ở mức ứng dụng tương tác với người dùng Các giao thức truy nhập từ xa XML-RPC, SOAP và REST
− Mô tả dịch vụ: được sử dụng để miêu tả các giao diện chung cho một dịch
vụ Web cụ thể WSDL thường được sử dụng cho mục đích này, nó là một ngôn ngữ mô tả giao tiếp và thực thi dựa trên XM, Truyền tham số và các loại dữ liệu cho các thao tác và chứng năng mà dịch vụ Web cung cấp
− Khám phá dịch vụ: tập trung dịch vụ vào trong một nơi được đăng ký, từ
đó giúp một dịch vụ Web có thể dễ dàng khám phá ra những dịch vụ nào
đã có trên mạng, tốt hơn trong việc tìm kiếm những dịch vụ khác để tương tác Một dịch vụ Web cũng phải tiến hành đăng ký để các ịch vụ khác có thể truy cập và giao tiếp UDDI API thưòng được sử dụng để thực hiện công việc này
1.2.4 Các thành phần của dịch vụ Web [3]
a) XML – eXtensible Markup Language: Là một chuẩn mở do W3C đưa
ra cho cách thức mô tả dữ liệu Định nghĩa các thành phần dữ liệu trên trang Web và cho những tài liệu B2B Về hình thức, XML hoàn toàn có cấu trúc thẻ giống như ngôn ngữ HTML nhưng HTML định nghĩa thành phần được hiển thị như thế nào thì XML lại định nghĩa những thành phần đó chứa cái gì Với XML,
Hình 1.2: Kiến trúc dịch vụ Web
WEB SERVICES UDDI
Trang 36Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
các thẻ có thể được lập trình viên tự tạo ra trên mỗi trang Web và được chọn là định dạng thông điệp chuẩn bởi tính phổ biến và hiệu quả mã nguồn mở
Dịch vụ Web là sự kết hợp của nhiều thành phần khác nhau Sử dụng các tính năng và đặc trưng của các thành phần đó để giao tiếp XML là công cụ chính để giải quyết vấn đề này và là kiến trúc nền tảng cho việc xây dựng một dịch vụ Web, tất cả dữ liệu sẽ được chuyển sang định dạng thẻ XML.Khi đó, các thông tin mã hóa sẽ hoàn toàn phù hợp với các thông tin theo chuẩn của SOAP hoặc XML-RPC và có thể tương tác với nhau trong một thể thống nhất
b) WSDL - Web Service Description Language: WSDL định nghĩa cách
mô tả dịch vụ Web theo cú pháp tổng quát của XML, bao gồm các thông tin:
- Tên dịch vụ
- Giao thức và kiểu mã hóa được sử dụng khi gọi các hàm của dịch vụ Web
- Loại thông tin: thao tác, tham số, những kiểu dữ liệu (có thể là giao diện của dịch vụ Web cộng với tên cho giao diện này)
Một WSDL hợp lệ gồm hai phần: phần giao diện (mô tả giao diện và phương thức kết nối) và phần thi hành mô tả thông tin truy xuất cơ sở dữ liệu
Cả hai phần này sẽ được lưu trong 2 tập tin XML tương ứng là tập tin giao diện dịch vụ và tập tin thi hành dịch vụ Giao diện của một dịch vụ Web được miêu tả trong phần đưa ra cách thức làm thế nào để giao tiếp qua dịch vụ Web Tên, giao thức liên kết và định dạng thông điệp yêu cầu để tương tác với dịch vụ Web được đưa vào thư mục của WSDL
WSDL thường được sử dụng kết hợp với XML Schema và SOAP để cung cấp dịch vụ Web qua Internet Một Client khi kết nối tới dịch vụ Web có thể đọc WSDL để xác định những chức năng sẵn có trên Server Sau đó, Client có thể sử dụng SOAP để lấy ra chức năng chính xác có trong WSDL
WSDL UDDI
Registry
Points to Description
Service Consumer
Finds Services
Describes Service
Communication with XML Messages
Service
Trang 37Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
c) UDDI - Universal Description, Discovery, and Integration: Để có thể
sử dụng các dịch vụ, trước tiên Client phải tìm dịch vụ, ghi nhận thông tin về cách sử dụng và biết được đối tượng nào cung cấp dịch vụ UDDI định nghĩa một số thành phần cho biết các thông tin này, cho phép các Client truy tìm và nhận thông tin được yêu cầu khi sử dụng dịch vụ Web
Cấu trúc UDDI
− Trang trắng - White pages: chứa thông tin liên hệ và các định dạng chính yếu của dịch vụ Web, chẳng hạn tên giao dịch, địa chỉ, thông tin nhận dạng… Những thông tin này cho phép các đối tượng khác xác định được dịch vụ
− Trang vàng - Yellow pages: chứa thông tin mô tả dịch vụ Web theo những loại khác nhau Những thông tin này cho phép các đối tượng thấy được dịch vụ Web theo từng loại với nó
− Trang xanh - Green pages: chứa thông tin kỹ thuật mô tả các hành vi và các chức năng của dịch vụ Web
− Loại dịch vụ - Model: chứa các thông tin về loại dịch vụ được sử dụng Những thông tin về dịch vụ Web được sử dụng và công bố lên mạng sử dụng giao thức này Nó sẽ kích hoạt các ứng dụng để tìm kiếm thông tin của dịch vụ Web khác nhằm xác định xem dịch vụ nào sẽ cần đến nó
d) SOAP - Simple Object Access Protocol: Các dịch vụ Web truy xuất
bằng một giao thức là Simple Object Access Protocol – SOAP Nói cách có thể truy xuất đến UDDI registry bằng các lệnh gọi hoàn toàn theo định dạng của SOAP SOAP là một giao thức giao tiếp có cấu trúc như XML, được xem là cấu trúc của các ứng dụng phân tán được xây dựng từ nhiều ngôn ngữ và các hệ điều
Trang 38Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
hành khác nhau SOAP là giao thức thay đổi các thông điệp dựa trên XML qua mạng máy tính, thông thường sử dụng giao thức HTTP
Client gửi thông điệp yêu cầu đến Server và được Server sẽ gửi những thông điệp trả lời tới Client Cả SMTP và HTTP đều là những giao thức ứng dụng của SOAP nhưng HTTP được sử dụng và chấp nhận sử dụng rộng rãi hơn
Cấu trúc một thông điệp theo dạng SOAP là một văn bản XML bao gồm các phần tử sau:
− Phần tử gốc - Envelop: phần tử bao trùm nội dung thông điệp, khai báo văn bản XML như là một thông điệp SOAP
− Phần tử đầu trang – Header: chứa các thông tin tiêu đề trang, phần tử này không bắt buộc khai báo trong văn bản Header còn có thể mang những dữ liệu chứng thực, chứ ký số, thông tin mã hóa hay cài đặt cho các giao dịch khác
− Phần tử khai báo nội dung chính trong thông điệp - body, chứa các thông tin yêu cầu và thông tin được phản hồi
− Phần tử đưa ra các thông tin về lỗi -fault, cung cấp thông tin lỗi xảy ra trong qúa trình xử lý thông điệp
Có 2 kiểu truyền thông:
− Remote procedure call (RPC): cho phép gọi hàm hoặc thủ tục qua mạng Kiểu này được khai thác bởi nhiều dịch vụ Web
− Document: được biết đến như kiểu hướng thông điệp, cung cấp giao tiếp ở mức trừu tượng thấp, yêu cầu lập trình viên mất công sức hơn
Hai kiểu truyền thông cung cấp các định dạng thông điệp, tham số, lời gọi đến các API khác nhau nên việc sử dụng chúng tùy thuộc vào thời gian và sự phù hợp với dịch vụ Web cần xây dựng
Cấu trúc dữ liệu: Cung cấp những định dạng và khái niệm cơ bản giống như trong các ngôn ngữ lập trình khác như kiểu dữ liệu (int, string, date…) hay những kiều phức tạp hơn như struct, array, vector… Định nghĩa cấu trúc dữ liệu SOAP được đặt trong namespace SOAP-ENC
1.2.5 Quy tắc xây dựng một Web ngữ nghĩa
Web ngữ nghĩa đã giải quyết vấn đề thiếu sót của dịch vụ Web bằng cách thêm ngữ nghĩa vào trong thành phần của dịch vụ Vì vậy không chỉ UDDI có khả năng hỗ trợ người dùng dịch vụ tìm kiếm dịch vụ tự động mà còn giúp cho
Trang 39Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
việc sử dụng dịch vụ một cách tự động trong giai đoạn thiết kế cũng như giai đoạn thực thi của một quy trình nghiệp vụ bên trong kiến trúc hướng dịch vụ
Dịch vụ Web ngữ nghĩa là phương pháp ứng dụng Web ngữ nghĩa vào trong dịch vụ Web Nói cách khác dịch vụ Web ngữ nghĩa là phương pháp mở rộng dịch vụ Web với cách biểu diễn ngữ nghĩa cho nó
Dịch vụ Web ngữ nghĩa mở ra khả năng cho phép tìm kiếm, tổng hợp và gọi thực hiện dịch vụ Web động trong lúc thực thi
Ngôn ngữ biểu diễn ngữ nghĩa cho dịch vụ Web được tổ chức W3C đưa
ra tháng 11 năm 2004 là OWL-S, WSMO , SAWSDL Trong đó WSMO được
đệ trình vào 6/2006 và SAWSDL được đệ trình sau cùng vào 08/2007
Trong các ngôn ngữ biểu diễn ngữ nghĩa cho dịch vụ Web, OWL-S ra đời đầu tiên và cũng là ngôn ngữ có nhiều dịch vụ được ứng dụng rộng rãi, khoảng 1% dịch vụ Web được chú giải ngữ nghĩa, trong đó OWL-S chiếm 65%
1.2.6 Xây dựng một dịch vụ Web
Có 4 giai đoạn chính để xây dựng một dịch vụ Web là xây dựng, triển khai, tiến hành và quản lý, trong đó:
Web (URI, HTML, HTTP)
Web ngữ nghĩa ( RDF, RDF(S), OWL)
Phát triển công nghệ web lên đến tiềm năng phát triển tối đa
Dịch vụ Web (UDDI, WSDL, SOAP)
Dịch vụ Web Thông minh Web động