Ngôn ngữ truy vấn ontology

Một phần của tài liệu đồ án công nghệ thông tin Tiếp cận web ngữ nghĩa và ontology trong việc phát triển ứng dụng quản trị tri thức cho doanh nghiệp (Trang 35)

C Á PHƯƠNG PHÁP DỰA TRÊN ONTOLOGY TRONG QUẢN TRỊ TRI THỨ

I.2.1.5. Ngôn ngữ truy vấn ontology

Mục đích của truy vấn là để cung cấp một truy cập mức cao vào Ontology thông qua các câu hỏi tuân theo 1 ngôn ngữ truy vấn, làm sao để cho người dùng viết và máy

đánh giá được dễ dàng. Truy cập mức cao ở đây nghĩa là các truy vấn được tạo thành theo các thuật ngữ của mô hình dữ liệu hoặc ngữ nghĩa của ngôn ngữ Ontology, nhưng trong tất cả các trường hợp không phụ thuộc vào dạng biểu diễn cụ thể. Ví dụ: một ngôn ngữ truy vấn trên RDF cho phép so khớp các bộ 3, các đường dẫn hay thậm chí các cấu trúc đồ thị phức tạp hơn. Ngôn ngữ truy vấn trên RDFS cho phép truy vấn các thuật ngữ trong ngôn ngữ xây dựng như subclass, instance, domain của các thuộc tính.

Các truy vấn được viết bởi các kỹ sư tri thức kết nối trực tiếp đến Ontology server bằng một ứng dụng truy cập vào Ontology thay cho người dùng. Trong cả 2 trường hợp, truy vần đều được đánh giá bởi một engine truy vấn có trong công cụ các lưu trữ. Một Ontology server có thể cài đặt nhiều ngôn ngữ truy vấn, nhưng nó chỉ thường xem xét một loại ngôn ngữ cụ thể.

Có rất nhiều loại ngôn ngữ truy vấn cho RDF(S), trong khi ngôn ngữ truy vấn cho DAML + OIL và Topic Maps mới bắt đầu phát triển. Ở phần sau đây em xin giới thiệu về ngôn ngữ truy vấn RDF: SPARQL, là ngôn ngữ truy vấn RDF(S) được sử dụng trong đồ án của em.

Ngôn ngữ truy vấn RDF(S): SPARQL.

SPARQL là một ngôn ngữ truy vấn RDF, tên của ngôn ngữ truy vấn này được viết tắt từ “Giao thức đơn giản và ngôn ngữ truy vấn RDF” (Simple Protocol and RDF Query Language). Đây là một chuẩn của W3C, được W3C chính thức đưa ra vào tháng 4 năm 2006 và được chuẩn hóa vào tháng 1 năm 2008.

Như đã đề cập ở phần trên, RDF là mô hình dữ liệu kiểu đồ thị có hướng và được gán nhãn, để mô tả các thông tin trên Web. Chính đặc điểm này đã xác định cú pháp và ngữ nghĩa của SPARQL.

SPARQL có thể sử dụng để mô tả các truy vấn qua các nguồn dữ liệu khác nhau, dù dữ liệu được lưu trữ nguyên dạng là RDF hay được xem như là RDF thông qua lớp trung gian. Kết quả của truy vấn SPARQL có thể là tập kết quả hoặc các đồ thị RDF.

Ngôn ngữ truy vấn SPARQL dựa trên việc so khớp các mô hình đồ thị. Mô hình đồ thị bao gồm các mô hình bộ 3, giống như các bộ 3 RDF, khác ở chỗ có các biến thay cho các term RDF trong các vị trí chủ ngữ, vị ngữ hay tân ngữ. Kết hợp các mô hình bộ 3 này chúng ta được một mô hình đồ thị cơ sở, mà các kết quả nếu có phải so khớp với đồ thị này.

Cú pháp của SPARQL

Sau đây là cú pháp cơ bản của một câu truy vấn SPARQL đơn giản. Các cú pháp khác như: cú pháp về thuật ngữ RDF, cú pháp cho biến truy vấn, cho kiểu dữ liệu Literal, các nút rỗng (blank node) hay các mô hình bộ 3 sẽ được trình bày chi tiết trong phần phụ lục.

Về cơ bản một câu truy vấn SPARQL bao gồm 2 phần: SELECT và WHERE. Mệnh đề SELECT sẽ xác định biến xuất hiện trong kết quả truy vấn. Mệnh đề WHERE cung cấp mô hình đồ thị cơ sở để so khớp với đồ thị dữ liệu.

Ví dụ truy vấn đơn giản tìm tên một người trong dữ liệu ngữ nghĩa của hệ thống: Dữ liệu:

<http://example.org/Person/Person1> <http://purl.org/dc/elements/1.1/name> "Trần Cảnh Toàn". Truy vấn:

WHERE {

<http://example.org/Person/Person1> <http://purl.org/dc/elements/1.1/name> ?name . }

Kết quả truy vấn: name: Trần Cảnh Toàn.

Trong câu truy vấn trên, mô hình đồ thị cơ sở bao gồm một mô hình bộ 3, có biến đơn là ?name tại vị trí TN.

Kết quả của truy vấn là một dãy nghiệm, tương ứng với việc mô hình đồ thị của truy vấn khớp với dữ liệu. Có thể không có, có 1 hay có nhiều kết quả cho 1 truy vấn SPARQL.

Một phần của tài liệu đồ án công nghệ thông tin Tiếp cận web ngữ nghĩa và ontology trong việc phát triển ứng dụng quản trị tri thức cho doanh nghiệp (Trang 35)