CHƯƠNG 1: KIẾN THỨC CƠ SỞ Nội dung chương này sẽ bao gồm giới thiệu chung về công nghệ Web ngữ nghĩa, những khó khăn và ý nghĩa của công nghệ này. Chương này cũng trình bày về các nghiên cứu liên quan như khái niệm, ý nghĩa của Ontology và ngôn ngữ truy vấn. Từ những cơ sở nghiên cứu này ta sẽ có thể xác định rõ hướng nghiên cứu của luận văn.1 Web ngữ nghĩa 1.1 Khái niệm về Web ngữ nghĩa Web ngữ nghĩa không là một phiên bản Web riêng biệt mà là một sự mở rộng của Web hiện tại, theo cách mà các thông tin được xác định ý nghĩa tốt hơn, cho phép máy tính và người cộng tác với nhau một cách tốt hơn. Web ngữ nghĩa được hình thành từ ý tưởng của Tim Berners-Lee, người phát minh ra WWW (World Wide Web), URI (Uniform Resource Identification), HTTP, và HTML.
Web ngữ nghĩa là mạng lưới các nguồn thông tin được liên kết sao cho chúng có thể được xử lý và tím kiếm dễ dàng bởi các máy tính ở phạm vi toàn cầu. Web ngữ nghĩa được xem như là một cách mô tả thông tin rất hiệu quả trên World Wide Web, và cũng được xem là một cơ sở dữ liệu có khả năng liên kết với mạng lưới toàn cầu. Web ngữ nghĩa là phương pháp cho phép người dùng định nghĩa và liên kết dữ liệu một cách có ngữ nghĩa hơn nhằm phục vụ cho máy tính có thể “hiểu” và tìm kiếm được.Ngoài ra Web ngữ nghĩa còn cung cấp môi trường được chia sẻ và xử lý dữ liệu tự động. Ví dụ: Ta cần phải so sánh giá cả để mua một bộ máy vi tính hoặc ta cần tra cứu mẫu của các hãng chế tạo xe máy khác nhau để tìm ra thiết bị có thể thay thế cho các bộ phận bị hư hỏng.
Các thông tin mà ta thu thập được trực tiếp trên các Web có thể trả lời các câu hỏi này nhưng cần con người có sự phân tích ý nghĩa của dữ liệu từ chúng và sự liên quan với yêu cầu đề ra và không thể xử lý tự động được bằng máy tính. Với Web ngữ nghĩa ta có thể giải quyết vấn đề này bằng 2 cách: 4 Thứ nhất: Web ngữ nghĩa sẽ mô tả chi tiết những dữ liệu theo cách riêng. Vì vậy ta không cần quan tâm đến các định dạng (format) hay hình ảnh, quảng cáo trên trang Web để tìm ra sự liên quan của các thông tin. Thứ hai: Web ngữ nghĩa cho phép chúng ta tạo ra một tệp mô tả các mối liên hệ giữa những tập dữ liệu khác nhau.
Ví dụ: chúng ta có thể tạo ra một liên kết có ngữ nghĩa giữa cột mã số quốc gia (zip code) trong cơ sở dữ liệu chung với trường “zip” ở trên giao diện nhập liệu nếu chúng có chung ý nghĩa. Điều này cho phép máy tính có thể theo các đường liên kết và có thể tích hợp dữ liệu từ nhiều nơi khác nhau. Sự liên kết các nguồn khác nhau (khái niệm, hình ảnh, video, tài liệu,…) với tập các mối quan hệ mới giữa các nguồn dữ liệu, cho phép có thể mở rộng Web thành một môi trường mới, tạo ra các mối liên hệ ngữ cảnh, điều mà các Web hiện tại không có.2 Kiến trúc Web ngữ nghĩa Web ngữ nghĩa là tập hợp của các ngôn ngữ. Các lớp Web ngữ nghĩa sử dụng để có thể đảm bảo độ an toàn và các giá trị của thông được trở nên tốt nhất.
Kiến trúc Web ngữ nghĩa 5 - Lớp Unicode & URI: Bảo đảm việc sử dụng các tập kí tự quốc tế và cung cấp các phương tiện nhằm định danh đối tượng trong Web ngữ nghĩa. URI đơn giản chỉ là một định danh Web giống như các chuỗi bắt đầu bằng “http” hay “ftp” mà bạn thường xuyên thấy trên mạng (ví dụ: http://www. Bất kỳ ai cũng có thể tạo một URI, và có quyền sở hữu chúng. Vì vậy đã hình thành nên nền tảng để xây dựng một hệ thống mạng toàn cầu thông qua chúng.
- Lớp XML cùng với những định nghĩa về không gian tên (namespace) và lược đồ (schema) để bảo đảm rằng chúng ta có thể tích hợp các định nghĩa về Web ngữ nghĩa với các chuẩn XML khác. - Lớp RDF và RDFS: có thể tạo các phát biểu (statement) với những bộ từ vựng và định nghĩa của URI để có thể mô tả các đối tượng. Đây là lớp lớp quan trọng nhất trong kiến trúc của hệ thống Web ngữ nghĩa, từ đó chúng ta có thể gán các kiểu cho các tài nguyên và liên kết. - Lớp Ontology: thực hiện định nghĩa mối liên hệ giữa các khái niệm với nhau, hỗ trợ các bộ từ vựng.
Bản thể luận trong logic (Ontology) định nghĩa bộ từ vựng mang tính thông thường và phổ biến, cho phép các nhà nghiên cứu chia sẻ thông tin của một hay nhiều lĩnh vực. - Lớp Digital Signature: dùng để xác định một chủ thể nhất định của tài liệu (ví dụ như tác giả hay nhan đề của một cuốn sách). - Các lớp Logic, Proof, Trust: lớp logic cho phép quy định các luật (rule) thi hành các luật và cùng với lớp thử nghiệm (proof) và lớp chứng nhận (trust) đánh giá nhằm quyết định nên hay không chấp nhận những vấn đề đã được thử nghiệm.1 Giới thiệu RDF RDF (Resource Description Framework) hay khung mô tả tài nguyên, là nền tảng cho việc biểu diễn các dữ liệu trong lĩnh vực Web có ngữ nghĩa. RDF là một tập hợp nhiều nguyên tắc dành cho ngôn ngữ đánh dấu, cung cấp mô hình dữ liệu và các 6 cú pháp đơn giản với các hệ thống độc lập.
Đồng thời, nó được thiết kế để có thể đọc được thông tin và hệ thống máy tính có thể hiểu được, chứ không đơn giản là chỉ để trình bày dữ liệu cho người dùng cuối. Biểu diễn thông tin theo mô hình RDF gồm một phát biểu (statement) ở dạng cấu trúc bộ ba (triple) với thành phần chính là: (Subject, Predicate, Object). Trong đó: • Subject miêu tả đối tượng đóng vai trò là chủ thể. • Predicate (property) là thuộc tính hoặc quan hệ của chủ thể.
• Object là giá trị đối tượng hay thuộc tính của chủ thể đã nêu. Object có thể là một giá trị nguyên thủy như số chuỗi kí tự, số nguyên,. hoặc cũng có thể là một tài nguyên nhất định. Ví dụ sau minh họa cho một triple: (person , name , “Dương” ) Subject Predicate Object Hình 1.
Mô hình bộ ba RDF (RDF triple) Phát biểu trên mô tả một chủ thể (subject) person có thuộc tính (property) name với giá trị là Dương (object). Phát biểu có thể được tạm hiểu là: person có tên là Dương.1 Đồ thị RDF Xét phát biểu: http://www.html has a student whose value is Duong. Thành phần của phát biểu trên gồm: Chủ ngữ là: URL http://www. Vị từ là: student.
7 Tân ngữ là: Duong. Bởi tính tổng quát, RDF sử dụng những URI khác nhau để xác định những chủ ngữ, vị từ và tân ngữ trong một phát biểu. RDF mô tả những phát biểu gồm có một chủ ngữ (subject), vị từ (predicate) và tân ngữ (object): Chủ ngữ: http://www. Vị từ: http://purl.org/dc/elements/1.
Tân ngữ: http://www. URI thường được sử dụng để xác định không chỉ chủ ngữ của phát biểu trên, mà còn xác định vị từ và tân ngữ, thay vì sử dụng từ “student” và “Duong”, theo một cách riêng biệt. Đồ thị RDF là tập hợp của các bộ ba hợp lại tạo thành. Các chủ ngữ các là các nút trong đồ thị, trong cung đồ thị là vị từ và tân ngữ trong bộ ba.
Bộ ba được mô tả dạng nút - cung - nút. Hướng của các đồ thị rất quan trọng và luôn bắt đầu từ chủ ngữ qua vị từ đến tân ngữ. Vị từ Chủ ngữ Tân ngữ Hình 1. Mối quan hệ giữa các thành phần trong bộ ba RDF Vì thế phát biểu RDF ở trên được biểu diễn dưới dạng đồ thị như hình sau: Hình 1.2 Cú pháp RDF/XML Để biểu diễn những phát biểu RDF trong một cách thức để máy có khả năng xử lý được, RDF sử dụng rất nhiều ngôn ngữ trong đó có ngôn ngữ XML.
XML (Extensible Markup Language) là ngôn ngữ đánh dấu mở rộng. RDF định nghĩa ra một loại ngôn ngữ đánh dấu XML đặc biệt, được biết giống như RDF/XML, để sử dụng trong việc biểu diễn các thông tin của bộ ba trong RDF. Như phần trước đã giới thiệu một đồ thị được xem là một tập những đường đi của các nút, cung vị từ, nút, cung vị từ, nút, cung vị từ,… chúng bao bọc toàn đồ thị. Trong RDF/XML điều này trở thành sự nối tiếp liên tục của các phần tử bên trong các phần tử mà xen kẽ giữa các phần tử đối với những nút và cung vị từ.
Điều này được gọi là một loạt những nút/cung. Nút ở vị trí bắt đầu của chuỗi nối tiếp trở thành phần tử ở ngoài cùng, cung vị từ tiếp theo trở thành một phần tử con. Cú pháp cơ bản RDF: [1] RDF ::=[‘<rdf:RDF>’] description* [‘</rdf:RDF>’] [2] description ::=’<rdf:Description’ idAboutAttr?’>’ propertyEIl* ‘</rdf:Description>’ [3] idAboutAttr ::= idAttr | aboutAttr [4] aboutAttr ::= ‘about’=“tham chiếu URI” [5] idAttr ::= ‘ID’ = “IDsymbol” [6] propertyEIT ::= ‘<’propName‘>’ value ‘</’propName‘>’|‘<’ propName resourceAttr ‘/>’ [7] propName ::= QName [8] value ::= description | string [9] resource ::= resource = “tham chiếu URI” [10] QName ::= [ Nsprefix ‘:’] name [11] URI ::= string, interpreted per [12] IDdsymbol ::= (bất kỳ ID nào hợp lệ của XML) [13] name ::= (bất kỳ tên hợp lệ nào của XML) [14] Nsprefix ::= (bất kỳ tiếp đầu ngữ namspace hợp lệ nào) [15] string ::= (bất kỳ chuỗi nào) Ví dụ: Xét phát biểu sau: ex:index.html exterms:DOB “March 22, 1996”. Cú pháp RDF/XML: 1.
<rdf:RDF xmlns:rdf=http://www.org/1999/02/22-rdf-syntax-ns 3. xmlns:exterms=”http://www. <rdf:Description rdf:about=” http://www. <exterms:DOB>March 22, 1996</exterm:DOB> 9 6.
</rdf:RDF> Giải thích cụ thể của phát biểu trên như sau: Dòng 1: khai báo XML, cho ta biết phiên bản XML được sử dụng và nội dung theo sau là dựa trên cú pháp XML. Dòng 2 và 3: với thẻ rdf:RDF, cho ta biết rằng nội dung XML tiếp theo ( bắt đầu từ đây cho đến </rdf:RDF> trong dòng 7) mô tả của RDF. Từ khóa trên xác định tài liệu được biểu diễn dưới dạng RDF. Tiếp theo là phần khai báo namespace của XML được sử dụng trong các tài liệu, tùy vào nhu cầu cũng như mục đích sử dụng mà ta có thể định nghĩa các namespace khác nhau cho từng tài liệu.
Dòng 4, 5, 6: là các phát biểu RDF. Mô tả phát biểu RDF/XML với rdf:Description, và rdf:about, đây chính là chủ ngữ của phát biểu (http://www. Thẻ bắt đầu rdf:Description trong dòng 4 cho biết bắt đầu mô tả về một tài nguyên, và tiếp tục định danh các tài nguyên dùng thuộc tính rdf:about để chỉ ra URI của chủ ngữ tài nguyên.