Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 15 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
15
Dung lượng
216,19 KB
Nội dung
TẠP CHÍ KHOA HỌC, Đại học Huế, Số 65, 2011 CÁC NGÔN NGỮ TRUY VẤN RDF: ĐÁNH GIÁ TỔNG QUAN VÀ SO SÁNH CÁC ĐẶC TÍNH NGƠN NGỮ Hồng Nguyễn Tuấn Minh Trường Đại học Khoa học, Đại học Huế Hồng Hữu Hạnh Đại học Huế TĨM TẮT Khung ứng dụng RDF xem công cụ để mô tả thông tin tài nguyên cho Web ngữ nghĩa cách linh động RDF sử dụng để biểu diễn thông tin cá nhân, mạng xã hội, siêu liệu tài nguyên số để cung cấp phương tiện tích hợp nguồn thơng tin hỗn tạp Các ngôn ngữ truy vấn RDF SPARQL sử dụng để tạo truy vấn nguồn liệu đa dạng Bài báo trình bày điểm mạnh ngơn ngữ SPARQL, ngữ cảnh phân tích đánh giá với ngơn ngữ truy vấn RDF khác Kết đánh giá tổng hợp để làm rõ ưu điểm ngôn ngữ SPARQL truy vấn siêu liệu Web ngữ nghĩa Giới thiệu Các ngôn ngữ truy vấn RDF Resource Description Framework phân nhóm thành ba “dịng” khác biệt theo khía cạnh mơ hình liệu, tính biểu trưng, hỗ trợ thơng tin lượt đồ, kiểu truy vấn Cơ dịng SPARQL [3] Dịng có nguồn gốc từ ngn ngữ SquishQL, sau phát triển thành RDQL [11] cuối mở rộng thành ngôn ngữ SPARQL Những ngôn ngữ xem RDF liệu ba mà không quan tâm đến lượt đồ hay thông tin ontology trừ điều nêu rõ nguồn RDF SPARQL khuyến nghị tổ chức W3C (một dạng “chuẩn”) cho “ngôn ngữ truy vấn cho RDF” Đặc biệt, SPARQL cho phép: 1) Trích rút đồ thị RDF con, 2) Kiến tạo đồ thị RDF sử dụng liệu đầu vào đồ thị RDF truy vấn, 3) Trả “các mô tả” tài nguyên mà phù hợp với dạng truy vấn, 4) Chỉ định ba hay dạng độ thị truy vấn tuỳ chọn, 5) kiểm tra tồn Một dịng ngơn ngữ RDF, gọi “dịng RQL”, gồm ngôn ngữ RQL [9] mở rộng SeRQL [1] Điểm chung dịng hỗ trợ kết hợp truy vấn liệu lượt đồ Mơ hình liệu RDF sử dụng chệch với mơ hình liệu chuẩn RDF RDFS (RDF Schema), làm chu trình phân cấp bao hàm yêu cầu miền xác định miền giá trị định nghĩa cho thuộc tính Bản thân RQL có nhiều đặc tính tuỳ chọn cấu trúc ngữ nghĩa 131 Điều tạo ngôn ngữ phức tạp dù mạnh điều khơng có tính biểu diễn ngơn ngữ truy vấn RDF khác, đặc biệt ngơn ngữ dịng SPARQL Bên cạnh đó, cịn có số loại ngơn ngữ truy vấn RDF khác sử dụng mơ hình khác, sử dụng luật, ngôn ngữ suy diễn TRIPLE [12] Xcerpt Ngôn ngữ Xcerpt đáng lưu ý kết hợp truy vấn Web chuẩn (HTML/XML), với truy vấn Web ngữ nghĩa (chẳng hạn RDF TopicMaps) cho phép đặc tả truy vấn không đầy đủ dựa dạng (pattern based) Ngôn ngữ truy vấn SPARQL 2.1 Giới thiệu SPARQL phát triển nhóm RDF Data Access Working Group phần hoạt động Semantic Web W3C tổ chức chịu trách nhiệm xây dựng, quản lý đưa chuẩn liên quan đến World Wide Web khuyến nghị vào năm 2008 Định dạng thông thường truy vấn SPARQL là: PREFIX Chỉ định tên cho URI SELECT Trả tất vài giá trị biến theo mệnh đề WHERE CONSTRUCT Trả đồ thị RDF với biến liên quan DESCRIBE Trả “mô tả” tài nguyên tìm ASK Trả kết tìm mẫu đồ thị có hay khơng WHERE danh sách, tức kết nối mẫu (đồ thị) truy vấn OPTIONAL danh sách, tức kết nối mẫu (đồ thị) truy vấn tuỳ chọn AND biểu thức logic (để lọc giá trị) Một câu truy vấn chọn liệu SPARQL SELECT bao gồm mệnh đề chính, mệnh đề SELECT mệnh đề WHERE thành phần khác Mệnh đề SELECT định danh biến mà ứng dụng quan tâm mệnh đề WHERE bao gồm mẫu ba (triple pattern), thành phần khác đề cập đến phần Cú pháp tổng quát SPARQL SELECT liệt kê sau: PREFIX ns: PREFIX : SELECT variables [FROM ] [FROM NAMED ] WHERE { constraints [FILTER] [OPTIONAL] } [ORDER BY variables] [OFFSET/LIMIT n] [DISTINCT] Dữ liệu RDF mô tả theo dạng ba Tập hợp ba RDF tạo đồ thị, gọi đồ thị RDF Ngôn ngữ truy vấn SPARQL lấy thơng tin từ đồ thị RDF, cung cấp tính sau: 132 Chiết xuất thơng tin dạng URI, node trắng (blank node), plain literal typed literal Chiết xuất đồ thị RDF Xây dựng đồ thị RDF dựa thông tin đồ thị truy vấn 2.2 Các khái niệm Định nghĩa 2.1: Một mẫu ba (triple pattern) ba RDF (RDF triple) thành phần (subject, predicate hay object) biến truy vấn Định nghĩa 2.2: Một mẫu đồ thị sở (basic graph pattern) tập mẫu ba Ngôn ngữ SPARQL dựa sở đối sánh mẫu đồ thị (graph pattern) Mẫu đồ thị đơn giản mẫu ba Một định danh URI đặt cặp dấu ‘’ Một giá trị literal đặt cặp dấu (“”) SPARQL cung cấp chế viết tắt Tiếp đầu ngữ định nghĩa QName cung cấp dạng viết làm cho URI ngắn gọn Một node trắng xuất mẫu truy vấn (query pattern) Nó giữ vai trị biến, khơng đề cập kết câu truy vấn hay nơi mẫu đồ thị 2.3 Các mẫu đồ thị (Graph Patterns) 2.3.1 Mẫu đồ thị sở (Basic Graph Pattern) Một mẫu đồ thị sở (basic graph pattern) tập mẫu ba Đối sánh mẫu đồ thị định nghĩa dựa việc kết hợp kết phù hợp từ việc đối sánh mẫu đồ thị sở Định nghĩa 2.3: Một mẫu lời giải (pattern solution) S phần đồ thị GP đồ thị G phép S cho S(GP) đồ thị G 2.3.2 Mẫu đồ thị nhóm (Group Graph Pattern) Trong chuỗi truy vấn SPARQL, mẫu đồ thị nhóm phân định cặp ngoặc {} Ví dụ mẫu đồ thị truy vấn mẫu đồ thị nhóm có mẫu đồ thị sở Mẫu đồ thị sở chứa hai mẫu ba PREFIX foaf: SELECT ?name ?mbox WHERE { ?x foaf:name ?name ?x foaf:mbox ?mbox } 133 2.3.3 Ràng buộc giá trị Với SPARQL ta có thêm vào truy vấn ràng buộc giá trị để đạt kết mong muốn với FILTER Ví dụ: Truy vấn: PREFIX dc: PREFIX ns: SELECT ?title ?price WHERE { ?x ns:price ?price FILTER (?price < 30) ?x dc:title ?title } Nhằm liệt kê kết với giá bé 30 2.3.4 Mẫu đồ thị tùy chọn (Optional Graph Pattern) Qua ví dụ nhận thấy lời giải câu truy vấn phải hoàn toàn phù hợp với thành phần mẫu truy vấn Nhưng với việc thêm vào từ khóa OPTIONAL ta có nhiều kết quả, lời giải pháp thoả phần truy vấn Nhiệm vụ OPTIONAL mẫu truy vấn chọn tất giá trị có mẫu truy vấn Ví dụ: Với liệu: @prefix dc: @prefix ns: :book1 dc:title "SPARQL Tutorial" :book1 ns:price 42 :book2 dc:title "The Semantic Web" :book2 ns:price 23 Câu truy vấn: PREFIX dc: PREFIX ns: SELECT ?title ?price WHERE { ?x dc:title ?title OPTIONAL { ?x ns:price ?price FILTER (?price < 30 )}} Cho kết là: title price "SPARQL Tutorial" "The Semantic Web” 134 23 2.3.5 Mẫu đồ thị kết hợp (Union Graph Pattern) SPARQL cung cấp cách thức kết hợp mẫu đồ thị lại với cách dùng mệnh đề UNION Ví dụ: Truy vấn sử dụng UNION PREFIX dc10: PREFIX dc11: SELECT ?title WHERE { { ?book dc10:title ?title } UNION { ?book dc11:title ?title } } Trường hợp sử dụng truy vấn thông tin biểu diễn lượt đồ khác theo phiên 2.4 RDF Dataset Mơ hình liệu RDF thể thơng tin đồ thị bao gồm ba với subject, predicate object Các kho liệu RDF chứa nhiều đồ thị RDF thông tin ghi đồ thị cho phép ứng dụng để thực truy vấn có liên quan đến thông tin từ nhiều đồ thị Định nghĩa 2.4: Một RDF Datasset đại diện cho tập hợp đồ thị RDF Dataset bao gồm đồ thị mặc định (defaut graph) khơng có có nhiều đồ thị đặt tên (named graph) Trong đồ thị đặt tên định danh URI Đồ thị sử dụng cho việc đối sánh mẫu đồ thị sở đồ thị hoạt động (active graph) Ở phần trước tất truy vấn thực thi đơn đồ thị, điều có nghĩa đồ thị mặc định RDF Dataset đồ thị hoạt động Từ khóa GRAPH dùng để định đồ thị hoạt động đồ thị đặt tên Dataset nằm truy vấn Định nghĩa RDF Dataset không hạn chế mối quan hệ đồ thị đặt tên đồ thị mặc định Thơng tin lặp lặp lại đồ thị khác Có hai ý ta cần xem xét: Để có thơng tin đồ thị mặc định phải bao gồm thông tin gốc đồ thị đặt tên; Nên bao gồm thông tin đồ thị đặt tên đồ thị mặc định Một truy vấn SPARQL đặc tả dataset sử dụng cho việc đối sánh cách sử dụng mệnh đề FROM mệnh đề FROM NAMED Từ khóa FROM FROM NAMED cho phép truy vấn RDF dataset cách tham chiếu URI Mỗi URI sử dụng để cung cấp cho đồ thị đặt tên RDF dataset Nếu khơng có mệnh đề FROM có hay nhiều mệnh đề FROM NAMED có 135 nghĩa dataset chứa mệnh đề đồ thị mặc định rỗng Khi truy vấn tập hợp đồ thị, từ khóa GRAPH sử dụng để đối sánh mẫu ba đồ thị đặt tên GRAPH cung cấp URI để lựa chọn đồ thị hoặc sử dụng biến URI truy vấn RDF dataset Ví dụ: Xét Dataset với hai đồ thị có tên: # Named graph: http://example.org/foaf/aliceFoaf @prefix foaf: @prefix rdf: @prefix rdfs: _:a foaf:name "Alice" _:a foaf:mbox _:a foaf:knows _:b _:b foaf:name "Bob" _:b foaf:mbox _:b foaf:nick "Bobby" _:b rdfs:seeAlso rdf:type foaf:PersonalProfileDocument # Named graph: http://example.org/foaf/bobFoaf @prefix foaf: @prefix rdf: @prefix rdfs: _:z foaf:mbox _:z rdfs:seeAlso _:z foaf:nick "Robert" rdf:type foaf:PersonalProfileDocument Câu truy vấn: PREFIX foaf: SELECT ?src ?bobNick FROM NAMED FROM NAMED WHERE { GRAPH ?src { ?x foaf:mbox ?x foaf:nick ?bobNick } } 136 Cho kết truy vấn: src bobNick http://example.org/foaf/aliceFoaf "Bobby" http://example.org/foaf/bobFoaf "Robert" Bây xét truy vấn khác với mục đích tìm hiểu thông tin với liên kết thông tin mô tả hai đồ thị khác nhau: PREFIX data: PREFIX foaf: PREFIX rdfs: SELECT ?mbox ?nick ?ppd FROM NAMED FROM NAMED WHERE { GRAPH data:aliceFoaf { ?alice foaf:mbox ; foaf:knows ?whom ?whom foaf:mbox ?mbox ; rdfs:seeAlso ?ppd ?ppd a foaf:PersonalProfileDocument } GRAPH ?ppd { ?w foaf:mbox ?mbox ; foaf:nick ?nick } } Trong ví dụ tìm thông tin người qua việc lưu trữ thông tin mối quan hệ họ với nhau, kết truy vấn thu là: mbox nick ppd "Robert" So sánh SPARQL với ngôn ngữ truy vấn RDF Web ngữ nghĩa 3.1 Một số ngôn ngữ truy vấn RDF khác 3.1.1 RQL RQL ngôn ngữ truy vấn cho RDF RDFS Ý tưởng xem nhiều mô hình lượt đồ RDF tập đồ thị kết nối RQL cung cấp tính 137 để điều hướng qua đồ thị lựa chọn cạnh nút cụ thể cho truy hồi RQL hỗ trợ tổng quan hóa biểu thức đường dẫn theo biến nút cạnh đồ thị RDF Sự khác biệt RQL dựa khả kết hợp mềm mại truy vấn liệu lượt đồ cách khai thác phân biệt nhãn đa phân nhóm tài nguyên Một truy vấn RQL xây dựng đặc trưng mệnh đề mà thường thấy SQL: select, from, where select X, @P from {X} @P {Y} where Y like "Pablo" Mệnh đề Select cho phép định chiếu kết truy vấn bạn Trong truy vấn trên, quan tâm đến biến X @P, không quan tâm đến biến Y Mệnh đề From nơi chứa biểu thức đường dẫn Tại đây, biến để định vị trí đồ thị RDF model cách định biểu thức đường dẫn Trong ví dụ này, X Y giới hạn nút đồ thị, @P cung (cạnh) kết nối (các @ tiền tố biến biểu thị biến giới hạn thuộc tính) Vì vậy, cấu trúc tương ứng với statement, nơi mà X subject, @P predicate, Y object Mệnh đề Where tùy chọn sử dụng để ràng buộc giá trị biến bị ràng buộc mệnh đề From Trong ví dụ, chúng tơi muốn trả lại giá trị mà có giá trị cho Y chuỗi “Pablo” Điều tương ứng với lựa chọn tất statement nơi mà “Pablo” object 3.1.2 SeRQL SeRQL ngôn ngữ truy vấn RDF cho Sesame Nó ngơn ngữ truy vấn chuyển đổi có dựa vài ngơn ngữ có sẵn RQL, RDQL,và N3 Những mục tiêu thiết kế hợp cơng việc tốt từ ngôn ngữ truy vấn đưa cách diễn đạt ngôn ngữ truy vấn tốt mà tập trung vào mối quan tâm thực hành SeRQL hỗ trợ biểu thức đường dẫn phổ biến ràng buộc boolean hay tùy chọn phù hợp hai cấu trúc bản: select b from – where construct – from – where Cấu trúc trả kết quen thuộc ràng buộc biến/ bảng Cấu trúc thứ hai trả đồ thị phù hợp Theo nghĩa, truy vấn construct – from –where SeRQl đáp ứng thuộc tính đóng thuộc tính trực giao cho phép kết hợp truy vấn SeRQL khơng an tồn cung cấp chức đệ quy xây dựng sẵn khác SeRQL thực thi có giá trị hệ thống Sesame, số tính truy vấn bị thi hành truy vấn Đáng ý hàm kết hợp (minimun, maximun, average, count) việc lồng truy vấn [7] 138 3.1.3 TRIPLE TRIPLE thể tốt hai dạng ngôn ngữ truy vấn ngôn ngũ luật hệ thống thời gian thực Ngơn ngữ có nguồn gốc từ F Logic Các ba RDF (S, P, O) biểu diễn biểu thức F Logic S[P O] chúng lồng vào Ví dụ: biểu thức S[P1 O1, P2 RDF là: (S,P1,O1), (S,P2,O2) (S,P3,O3) O2[P3 O3]] tương ứng với ba ba TRIPLE không phân biệt truy vấn với luật mà đơn giản luật không đầu nơi mà kết ràng buộc biến tự truy vấn Ví dụ: FORALL X (X [rdfs:label “foo”]) @default:ln truy vấn trả tất tài ngun có nhãn (label) “foo” Vì đầu bảng biến ràng buộc thực được, TRIPLE khơng phải có thuộc tính đóng Cũng thế, TRIPLE cho cảm giác khơng an tồn cho phép luật khơng an tồn ví dụ là: FORALL X ( X[rdfs:label "foo"] ( a[rdfs:label "foo"])@default:ln Trong TRIPLE có tính đầy đủ đóng cho mơ hình liệu việc ánh xạ từ RDF đến TRIPLE khơng phải khơng bị mát Ví dụ node RDF ẩn danh làm rõ TRIPLE có khả đáp ứng đồng thời với nhiều mơ hình RDF mà chúng định danh thơng qua hậu tố @model TRIPLE khơng mã hóa ngữ nghĩa RDF cố định Ngữ nghĩa mong muốn phải định tập luật theo truy vấn TRIPLE không hỗ trợ kiểu liệu cập nhật thành phần thực tế thực 3.1.4 RDQL RDQL ngôn ngữ truy vấn cho RDF mơ hình Jena Mục đích để cung cấp mơ hình truy vấn hướng liệu, “hướng liệu” nghĩa truy vấn thông tin tổ chức mô hình, khơng có kết luận thực RDQL mở rộng ngôn ngữ truy vấn RDF SquishQL Các lớp ngôn ngữ truy vấn xem RDF ba liệu, mà khơng có thơng tin lượt đồ hay ontology, trừ kèm theo rõ ràng mã nguồn RDF RDF cung cấp đồ thị với cạnh có hướng – nút nguồn tài nguyên literal RDQL cung cấp cách để xác định mấu đồ thị mà đối sánh với đồ thị để sinh tập kết đối sánh Nó trả lại danh sách ràng buộc ràng buộc tập cặp tên giá trị giá trị biến 139 Ví dụ: SELECT ?x,?y FROM WHERE (?x,,?y) USING dc for Điều trả lại tất ?x ?y cho biết tên tài nguyên giá trị thuộc tính dc:name cho tài nguyên 3.1.5 N3 (Notation 3) N3 cung cấp cú pháp dựa vào văn cho RDF Vì mơ hình liệu N3 hợp với mơ hình liệu RDF Thêm vào N3 cho phép định nghĩa luật mà biểu diễn sử dụng cú pháp riêng biệt Ví dụ: ?y rdfs:label "foo" => ?y a:QueryResult Các luật sử dụng cho mục đích truy vấn Đối với truy vấn có mục đích phải lưu trữ luật file định sẵn, file sử dụng để liên kết với liệu Lệnh lọc CWM cho phép tự động lựa chọn mà tạo luật N3 chí cịn có thuộc tính trực giao, thuộc tính đóng an tồn, sử dụng N3 làm ngơn ngữ truy vần nặng nề N3 hỗ trợ hai hệ thống tự có sẵn Euler CWM Cả hai hệ thống không làm việc gắn liền tự động với ngữ nghĩa RDF Ngữ nghĩa cung cấp luật tạo người sử dụng [6] 3.2 So sánh đánh giá Trong phần xem xét ngôn ngữ ngữ cảnh so sánh tổng quát chúng để thấy ưu điểm nhược điểm ngôn ngữ Sự so sánh ngôn ngữ truy vấn ngữ nghĩa dựa theo số tiêu chuẩn sau [5] 3.2.1 Hỗ trợ cho mơ hình liệu RDF Vì mơ hình liệu RDF khơng phụ thuộc vào cú pháp mã cụ thể, ngôn ngữ truy vấn thường khơng cung cấp tính cho chức đặc tả đoạn mã truy vấn, chẳng hạn thứ tự đoạn mã RQL ngôn ngữ truy vấn có cung cấp cho hỗ trợ RQL tương thích phần với ngữ nghĩa học thức RDF N3, TRIPLE hỗ trợ ngữ nghĩa học RDF kế thừa theo thứ tự thông qua luật tạo theo ý người dùng Các hệ thống SPARQL hỗ trợ vấn đề chẳng hạn Jena hỗ trợ kế thừa theo thứ tự thông qua suy luận chế luật sở ontology 3.2.2 Các thuộc tính ngơn ngữ truy vấn Thuộc tính đóng (Closure): Thuộc tính đóng địi hỏi kết 140 truy vấn lại thành phần mơ hình liệu Điều có nghĩa truy vấn hoạt động mơ hình liệu đồ thị kết truy vấn lần phải đồ thị N3 SeRQL hỗ trợ cho thuộc tính đóng, SPARQL cung cấp câu lệnh CONSTRUCT cho mục đích Thuộc tính đầy đủ (Adequacy): Một truy vấn gọi đầy đủ sử dụng tất khái niệm mơ hình liệu sở Do thuộc tính bổ sung cho thuộc tính đóng Đối với thuộc tính đóng kết truy vấn khơng bên ngồi mơ hình liệu thuộc tính đầy đủ toàn liệu cần khai thác SPARQL hỗ trợ thuộc đầy đủ Ánh xạ từ mô hình TRIPLE đến mơ hình liệu RDF có có tính đầy đủ khơng hồn chỉnh Tính trực giao (Orthogonality) địi hỏi tất hoạt động sử dụng không phụ thuộc ngữ cảnh sử dụng Trong tất ngôn ngữ, RDQL khơng hỗ trợ tính trực giao Tính an tồn (Safety) địi hỏi truy vấn ngữ pháp trả tập hữu hạn kết tập liệu hữu hạn Các khái niệm tiêu biểu mà làm cho ngơn ngữ trở nên khơng an tồn hàm đệ quy, phủ định hàm dựng sẵn (built – in) RDQLvà N3 ngơn ngữ truy vấn an tồn 3.2.3 Các biểu thức đường dẫn Các biểu thức đường dẫn đưa dạng cú pháp khác tất ngôn ngữ truy vấn RDF Một vài ngôn ngữ truy vấn RDF SeRQL hỗ trợ cách thức để giải thông tin không đầy đủ không quy cách SPARQL hỗ trợ cho không đầy đủ hay không quy cách cách sử dụng cấu trúc OPTIONAL có RQL hỗ trợ phần cho việc tùy chọn ràng buộc biến 3.2.4 Các phép toán đại số Trong mơ hình liệu quan hệ, phép toán đại số quan tâm phép chọn, phép chiếu, phép tích Descarte, phép hợp phép hiệu Ba phép toán đại số phép chiếu, phép chọn tích số hỗ trợ tất ngôn ngữ đề cập Phép hợp hỗ trợ tất ngôn ngũ ngoại trừ RDQL Phép hiệu hỗ trợ RQL, SeRQ SPARQL 3.2.5 Định lượng Một predicate gọi xác định tồn tập hợp tài ngun (an existential predicate) có giá trị thoả mãn predicate Tương tự, predicate gọi phổ biến (universal predicate) tất giá trị thoả mãn predicate Định lượng tồn (existential quantification) hỗ trợ tất ngôn ngữ predicate lựa chọn (selection predicate) có ràng buộc tồn Định lượng phổ biến (universal quantification) hỗ trợ RQL, SeRQL, SPARQL phần TRIPLE 141 3.2.6 Sự tổng hợp gộp nhóm Các hàm tổng hợp tính tốn giá trị vô hướng từ nhiều tập giá trị Một trường hợp đặc biệt kết hợp đếm số lượng thành phần tập hợp mà hỗ trợ RQL N3 Ngoài gộp nhóm cho phép tổng hợp tính tốn nhóm giá trị SPARQL hỗ trợ tính thông qua mệnh đề ORDER BY 3.2.7 Sự đệ quy Các truy vấn đệ quy thường xử lý kịch nơi mà mối quan hệ ngầm hiểu tự nhiên Biểu thuộc tính đưa truy vấn mối quan hệ đối xứng mối quan hệ ngầm định khơng phải hỗ trợ có sẵn RDF TRIPLE N3 hỗ trợ cho đệ quy thông qua luật Đệ quy nguyên nhân làm cho ngôn ngữ truy vấn trở nên khơng an tồn 3.2.8 Reification Reification độc đáo RDF, cho phép xem xét phát biểu RDF tài ngun Refication hỗ trợ số phạm vi tất ngôn ngữ ngoại trừ N3 3.2.9 Collections Container RDF cho phép định nghĩa nhóm thực thể cách sử dụng Collection (là nhóm đóng thực thể) Container Tất ngôn ngữ nghiên cứu hỗ trợ phần khả để truy hồi tập hợp thành phần với thơng tin có thứ tự 3.2.10 Namespace Đưa tập tài nguyên, quan tâm đến truy vấn tất giá trị thuộc tính từ namespace biết hay namespace với pattern biết.Pattern phù hợp namespace hữu dụng nhiều cho liệu RDF phiên hóa, nhiều lượt đồ phiên dựa namespace để mã hóa thơng tin phiên Tất ngôn ngữ truy vấn ngoại trừ TRIPLE Versa hỗ trợ tính này, RDQL hỗ trợ phần cho tính 3.2.11 Các Literal kiểu liệu RDF hỗ trợ kiểu hệ thống lượt đồ XML để tạo typed literal (literal định kiểu) Một ngôn ngữ truy vấn RDF phải hỗ trợ kiểu liệu lượt đồ XML Một kiểu liệu bao gồm không gian từ vựng, khoảng không gian giá trị ánh xạ từ vựng đến giá trị Tất ngôn ngữ truy vấn có hỗ trợ cho khơng gian từ vựng, có RQL, SeRQL có hỗ trợ cho không gian giá trị RDQL hỗ trợ phần cho không gian giá trị 142 3.2.12 Sự kế thừa theo thứ tự (Entailment) Từ vựng lượt đồ RDF hỗ trợ cho kế thừa theo thứ tự cá thơng tin ẩn dấu ví dụ sử dụng mối quan hệ subclass, domain range Tất ngôn ngữ truy vấn hỗ trợ cho kế thừa có thứ tự với mức độ khác 3.2.13 Các thuộc tính mong muốn (Desired Properties) Nhiều ngơn ngữ truy vấn hỗ trợ chức gộp nhóm tổng hợp Đáng ngạc nhiên là, ngoại trừ SPARQL, khơng ngơn ngữ có khả phân loại xếp thông tin đầu ra.Do chất bán cấu trúc RDF, hỗ trợ cho đối sánh tùy chọn quan trọng ngơn ngữ truy vấn RDF ngơn ngữ khác nên hỗ trợ với cú pháp chun dụng SPARQL Nói chung, hỗ trợ ngơn ngữ cho tính đặc tả RDF container, collection, kiểu liệu lượt đồ XML reification nghèo nàn Vì tính mơ hình liệu, mức độ đầy đủ ngôn ngữ thấp Từ so sánh ta có bảng tổng hợp so sánh: Bảng 3.1 Bảng tổng hợp so sánh ngôn ngữ truy vấn Web ngữ nghĩa Các ngôn ngữ RDQL Triple SeRQL N3 RQL SPARQL Tiêu chuẩn so sánh Hỗ trợ mơ hình liệu RDF Tính đóng N Y N Y Y Y N N Y Y N Y Tính đầy đủ N R N N N Y Tính trực giao N Y Y Y Y Y Tính an toàn Y N N Y Y R Biểu thức đường dẫn Y Y Y Y Y Y OPTIONAL path N N Y N R Y Phép hợp (UNION) N Y Y Y Y Y Phép hiệu (DIFFERENCE) Định lượng (Quantification) Sự tổng hợp gộp nhóm N N Y N Y Y N R Y N Y Y N N N Y Y Y Đệ quy N Y N Y N N Reification R R Y N R Y Collections and Containers R R R R R Y 143 Namespace R N Y Y Y Y Lexical Space Y Y Y Y Y Y Value Space R N Y N Y Y Kế thừa có thứ tự R R Y R Y Y Thuộc tính mong muốn N N N N N Y Trong đó: Y: Có hỗ trợ N: Không hỗ trợ R: Hỗ trợ hạn chế Bảng so sánh tổng hợp (Bảng 3.1) với sở phân tích ngơn ngữ truy vấn siêu liệu khác Web ngữ nghĩa, nhận thấy ngơn ngữ SPARQL thừa hưởng đặc tính tốt tất ngơn ngữ khác Việc chọn sử dụng SPARQL cho truy vấn ngữ nghĩa lựa chọn tốt Tuy nhiên SPARQL phải tiếp tục phát triển mở rộng để đáp ứng yêu cầu truy vấn nâng cao Kết luận Bài báo trình bày tóm tắt đặc tính ngơn ngữ truy vấn siêu liệu cho Web ngữ nghĩa SPARQL, đồng thời tiến hành nghiên cứu, phân tích đánh giá ngôn ngữ truy vấn khác Web ngữ nghĩa để tìm điểm mạnh, yếu tương quan với ngôn ngữ SPARQL Bài báo tổng kết phân tích đánh giá ngơn ngữ bảng thơng tin với đặc tính ngôn ngữ truy vấn Web ngữ nghĩa, làm sở cho việc chọn lựa ngôn ngữ truy vấn phù hợp trình phát triển ứng dụng Web ngữ nghĩa tương lai Hướng phát triển báo nghiên cứu mở rộng ngôn ngữ SPARQL để kết hợp với ngơn ngữ luật tăng cường khả tìm kiếm toàn văn (fulltext) liệu web ngữ nghĩa TÀI LIỆU THAM KHẢO [1] Broekstra, J., and A Kampman SeRQL b An RDF Query and Transformation Language Proceedings of the SWAD Europe workshop on Semantic Web Storage and Retrieval, (2003), 20 [2] D Beckett SPARQL query results XML format Technical report, W3C, 2005 [3] Eric Prud'hommeaux, Andy Seaborne SPARQL Query Language for RDF http://www.w3.org/TR/rdf sparql query/ (W3C Recommendation), 2008 [4] Grigoris Antoniou, Frank van Harmelen A Semantic Web Primer MIT Press, 2004 [5] Haase, P., J Broekstra, A Eberhart, and R Volz A Comparison of RDF Languages Proceedings of the 2004 International Semantic Web Conference, LNCS, Vol 3298, (2004), 502 517 144 [6] Hoàng Hữu Hạnh Web ngữ nghĩa: thách thức hướng tiếp cận Tạp chí Khoa học Đại học Huế, Số 48, (2008), 31 40 [7] J Perez, M Arenas, C Gutierrez Semantics and Complexity of SPARQL Proceedings of the 2004 International Semantic Web Conference, LNCS, Vol 4273, (2006), 30 43 [8] James Bailey, Fran¸cois Bry, Tim Furche and Sebastian Schaffert Web and Semantic Web Query Languages: A Survey 2005 [9] Karvounarakis, G., S Alexaki, V Christophides, D Plexousakis, and M.Schol RQL: A Declarative Query Language for RDF Proceedings of the 11th International World Wide Web Conference, (2002), 592 603 [10] Marcelo Arenas, Claudio Gutierrez, Jorge P´erez SPARQL Formalization In Intẻnational Semantic Web Conference Tutorial, 2007 [11] Seaborne, A RDQL: A Query Language for RDF W3C Member Submission http://www.w3.org/Submission/2004/SUBM RDQL 20040109/ (September 10, 2007) [12] Sintek, S.Decker TRIPLE b an RDF query, inference and transformation language Deductive Databases and Knowledge Management, 2001 AN SURVEY ON RDF QUERY LANGAUES: EVALUATION AND COMPARISION ON KEY FEATURES Hoang Nguyen Tuan Minh College of Sciences, Hue University Hoang Huu Hanh Hue University SUMMARY Resource Description Framework (RDF) is regarded as the primary facility to describe the information of Web resources semantically RDF is used to represent a number of data sources ranging from personal information to digital documents and archives RDF is also used as a foundation for the heterogeneous data integration SPARQL language can be used to query different data sources in RDF triple format This paper presents the strengths and weaknesses of SPARQL query language in the context of analysis and evaluation of different RDF query languages The outcome of the evaluation is used to clarify the strong points of SPARQL in Semantic Web information retrieval 145 ... yếu tương quan với ngôn ngữ SPARQL Bài báo tổng kết phân tích đánh giá ngơn ngữ bảng thơng tin với đặc tính ngơn ngữ truy vấn Web ngữ nghĩa, làm sở cho việc chọn lựa ngôn ngữ truy vấn phù hợp... reification nghèo nàn Vì tính mơ hình liệu, mức độ đầy đủ ngôn ngữ thấp Từ so sánh ta có bảng tổng hợp so sánh: Bảng 3.1 Bảng tổng hợp so sánh ngôn ngữ truy vấn Web ngữ nghĩa Các ngôn ngữ RDQL Triple... người sử dụng [6] 3.2 So sánh đánh giá Trong phần xem xét ngôn ngữ ngữ cảnh so sánh tổng quát chúng để thấy ưu điểm nhược điểm ngôn ngữ Sự so sánh ngôn ngữ truy vấn ngữ nghĩa dựa theo số tiêu