rdf

11
RDF( Resources Description Framework) – Nền tảng của web ngữ nghĩa Ban đầu Web được tạo ra để con người thao tác: đọc, hiểu... Mặc dù máy có thể đọc được mọi thứ trên Web, nhưng nó không hiểu được dữ liệu trên Web. Giải pháp được đưa ra là dùng meta data mô tả dữ liệu trên web để máy có thể hiểu được chúng. Meta data là một dạng dữ liệu dùng để mô tả dữ liệu khác. Hay nói cách khác meta data là những thông tin mô tả tài nguyên trên web. Chẳng hạn như, sách là một loại tài nguyên trên web ( http://www.amazon.com/Spring.htm ), khi đó các thông tin mô tả cho tài nguyên này: tên tác giả, tên tựa sách, ngày xuất bản,... chính là meta data. RDF là nền tảng của Semantic Web, là linh hồn của Semantic Web và xử lý meta data. RDF cho phép trao đổi thông tin giữa các ứng dụng trên Web mà máy có thể hiểu được. Nếu XML cung cấp cú pháp để mã hóa dữ liệu, thì RDF là một cơ cấu chỉ ra điều gì đó về dữ liệu. Như tên gọi, RDF là một mô hình để biểu diễn dữ liệu về “mọi thứ trên web”. Mọi thứ ở đây chính là các tài nguyên trong RDF vocabulary. Mô hình dữ liệu cơ sở của RDF thì đơn giản, bên cạnh tài nguyên (resources) RDF còn chứa thuộc tính (properties) và câu phát biểu (statements). Một property mà 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 statament 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 đó. 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 (literal value) hay dạng text tùy ý (free text). RDF sử dụng URI để xác định các tài nguyên. RDF mô tả các tài nguyên bằng các thuộc tính và giá trị của thuộc tính. Ví dụ về việc sử dụng RDF Mô tả thuộc tính của các sản phẩm trong shop, ví dụ như giá, còn hàng hay không

Upload: nghia-nguyen

Post on 22-Oct-2014

286 views

Category:

Documents


6 download

TRANSCRIPT

RDF( Resources Description Framework) – Nền tảng của web ngữ nghĩa

Ban đầu Web được tạo ra để con người thao tác: đọc, hiểu... Mặc dù máy có thể đọc được mọi thứ trên Web, nhưng nó không hiểu được dữ liệu trên Web. Giải pháp được đưa ra là dùng meta data mô tả dữ liệu trên web để máy có thể hiểu được chúng. Meta data là một dạng dữ liệu dùng để mô tả dữ liệu khác. Hay nói cách khác meta data là những thông tin mô tả tài nguyên trên web. Chẳng hạn như, sách là một loại tài nguyên trên web ( http://www.amazon.com/Spring.htm), khi đó các thông tin mô tả cho tài nguyên này: tên tác giả, tên tựa sách, ngày xuất bản,... chính là meta data. RDF là nền tảng của Semantic Web, là linh hồn của Semantic Web và xử lý meta data. RDF cho phép trao đổi thông tin giữa các ứng dụng trên Web mà máy có thể hiểu được.

Nếu XML cung cấp cú pháp để mã hóa dữ liệu, thì RDF là một cơ cấu chỉ ra điều gì đó về dữ liệu. Như tên gọi, RDF là một mô hình để biểu diễn dữ liệu về “mọi thứ trên web”. Mọi thứ ở đây chính là các tài nguyên trong RDF vocabulary. Mô hình dữ liệu cơ sở của RDF thì đơn giản, bên cạnh tài nguyên (resources) RDF còn chứa thuộc tính (properties) và câu phát biểu (statements). Một property mà 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 statament 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 đó. 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 (literal value) hay dạng text tùy ý (free text).

RDF sử dụng URI để xác định các tài nguyên. RDF mô tả các tài nguyên bằng các thuộc tính và giá trị của thuộc tính.

Ví dụ về việc sử dụng RDF

Mô tả thuộc tính của các sản phẩm trong shop, ví dụ như giá, còn hàng hay không

Mô tả lịch trình cho các sự kiện web

Mô tả thông tin về trang web

Mô tả nội dung và đánh giá cho những hình ảnh của web

Mô tả nội dung cho Search engines

Mô tả thư viện điện tử

...

Mô hình RDF

Mô hình cơ bản của RDF gồm ba đối tượng sau:

Tài nguyên (Resources): là tất cả những gì được mô tả bằng biểu tức RDF. Nó có thể là một trang Web, ví dụ như http://www.ptit.edu.vn/giao-vu.htm , cũng có thể là một phần của trang Web, hoặc là một tập các trang Web...

Thuộc tính (Properties): thuộc tính, đặc tính, hoặc quan hệ dùng để mô tả tính chất của tài nguyên.

Phát biểu (Statements): mỗi phát biểu gồm 3 phần: Subject (Tài nguyên): địa chỉ hay vị trí tài nguyên muốn mô tả, thông thường thì đây

là chuỗi định URL hoặc URI. Prediacate( Vị ngữ): xác định tính chất của tài nguyên. Object (Bổ ngữ): nội dung gán cho thuộc tính.

Mỗi một phát biểu (subject, predicate, object) còn gọi là một bộ ba (triple).

Ví dụ: http://www.example.org/index.html has a creator whose value is John Smith

Phát biểu trên được phân ra thành các phần sau:

Subject http://www.example.org/index.htmlPredicate http://purl.org/dc/elements/1.1/creator

Object http://www.example.org/staffid/85740

Phát biểu trên được biểu diễn dưới dạng một tripple như sau:

<http://www.example.org/index.html> <http://purl.org/dc/elements/1.1/creator> <http://www.example.org/staffid/85740>

Đồ thị RDF (RDF Graph)

Tập các triple hợp lại tạo thành đồ thị RDF( RDF Graph). Các node trong đồ thị có thể là các subject và object trong triple và các cung (arc) trong đồ thị là các predicate. Cho nên một triple còn có thể được mô tả dưới dạng node-arc-node. Hướng của đồ thị rất quan trọng. Cung của đồ thị luôn bắt đầu từ subject đến object.

Predicate

Ví dụ: Ta có các phát biểu sau cho cùng một subject

http://www.example.org/index.html has a creation-date whose value is August 16, 1999

http://www.example.org/index.html has a language whose value is English

Subject Object

Được phân ra thành các thành phần sau:

Subject Predicate Objecthttp://www.example.org/

index.htmlhttp://purl.org/dc/elements/

1.1/creatorhttp://www.example.org/staffid/85740

http://www.example.org/index.html

http://www.example.org/terms/creation-date

August 16, 1999

http://www.example.org/index.html

http://purl.org/dc/elements/1.1/language

En

Lúc này các phát biểu được biểu diễn dưới một đồ thị như sau:

http://www.example.org/terms/creation-date

http://purl.org/dc/elements/1.1/creator

http://purl.org/dc/elements/1.1/language

Cấu trúc RDF/XML

RDF dựa trên cú pháp XML. 

Ví dụ : Xét phát biểu ex:index.html exterms:creation-date "August 16, 1999" . Cú pháp RDF/XML để biểu diễn cho phát biểu trên như sau:

1. <?xml version="1.0"?> 

http://example.org/index.html

http://www.example.org/staffid/85740August 16,1999

EN

2. <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 3. xmlns:exterms="http://www.example.org/terms/"> 4. <rdf:Description rdf:about="http://www.example.org/index.html"> 5. <exterms:creation-date>August 16, 1999</exterms:creation-date> 6. </rdf:Description> 7. </rdf:RDF>

Trong đó:  Dòng 1: là khai báo XML, cho biết nội dung theo sau dựa trên cú pháp XML và phiên bản XML được dùng. Dòng 2 và 3: bắt đầu với thẻ rdf:RDF , cho biết rằng nội dung XML tiếp theo mô tả RDF. Từ khóa này xác định tài liệu này được biểu diễn dưới dạng RDF. Tiếp theo là phần khai báo XML namespace được sử dụng trong tài liệu, tùy vào nhu cầu và mục đích sử dụng mà ta có thể dùng các namespace khác nhau cho từng tài liệu.  Dòng 4, 5, 6: mô tả những mệnh đề RDF. Để mô tả bất kỳ phát biểu nào dạng RDF/XML có thể dùng rdf:Description, và rdf:about , đây chính là subject của phát biểu. Thẻ bắt đầu rdf:Description trong dòng 4 cho biết bắt đầu mô tả về một resource, và tiếp tục định danh resource này dùng thuộc tính rdf:about để chỉ ra URI của subject resource. Dòng 5 cung cấp 1 phần tử thuộc tính, với Qname exterms:creation-date như là thẻ của nó. Nội dung của phần tử thuộc tính này là object của statement, có giá trị là kiểu plain literal “August 19, 1999 “.  Dòng 7: cho biết kết thúc của thẻ rdf:RDF bắt đầu ở dòng 2 và cũng là thẻ kết thúc của tài liệu RDF.

Trong tài liệu RDF, tất cả các phần tử có tiếp đầu ngữ là rdf được dùng để mô tả tài nguyên. Chúng sử dụng một không gian tên được tổ chức W3C qui định: http://www.w3.org/1999/02/22-rdf-syntax-ns

Ở ví dụ trên ta chỉ mô tả tài liệu cho một phát biểu đơn giản, với một tài liệu

gồm nhiều phát biểu, việc mô tả nó cũng thật sự đơn giản:

Ví dụ:

ex:index.html exterms:creation-date “August 16,1999" .

ex:index.html dc:language "en" .

ex:index.html dc:creator exstaff:85740

Cú pháp RDF được mô tả như sau:

<?xml version="1.0"?>

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

xmlns:dc="http://purl.org/dc/elements/1.1/"

xmlns:exterms="http://www.example.org/terms/">

<rdf:Description rdf:about="http://www.example.org/index.html">

<exterms:creation-date>August 16, 1999</exterms:creation-date>

</rdf:Description>

<rdf:Description rdf:about="http://www.example.org/index.html">

<dc:language>en</dc:language>

</rdf:Description>

<rdf:Description rdf:about="http://www.example.org/index.html">

<dc:creator rdf:resource="http://www.example.org/staffid/85740"/>

</rdf:Description>

Như vậy với một phát biểu ta có thể dùng từ khóa rdf:Description để mô tả cho nó. Tuy nhiên ta thấy 3 phát biểu trên có cùng một subject (http://www.example.org/index.html) nên ta có thể gộp 3 phát biểu này lại với nhau dùng một thẻ rdf:Description chung như sau:

1. <?xml version="1.0"?>

2. <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

3. xmlns:dc="http://purl.org/dc/elements/1.1/"

4. xmlns:exterms="http://www.example.org/terms/">

5. <rdf:Description rdf:about="http://www.example.org/index.html">

6. <exterms:creation-date>August 16, 1999</exterms:creation-date>

7. <dc:language>en</dc:language>

8. <dc:creator rdf:resource="http://www.example.org/staffid/85740"/>

9. </rdf:Description>

10. </rdf:RDF>

Ví dụ:

Nghĩa, Lan, Hùng, Đạt, Linh là sinh viên năm thứ tư khoa Công nghệ thông tin, Học viện Công nghệ Bưu chính Viễn thông. Nghĩa đang học môn công nghệ phần mềm. Lan và Hùng đang học môn trí tuệ nhân tạo. Tài liệu của môn học công nghệ phần mềm là cuốn sách Introduction to software engineering của Schach. Tài liệu của môn học trí tuệ nhân tạo là cuốn Artificial Intelligence cuả Russell và Norvig. Nghĩa có điểm môn Vi xử lý và Lập trình C là 9. Lan và Hùng có điểm Vi xử lý và Lập trinh C là 5, Đạt và Linh có điểm Tương tác người máy là 5

<?xml version="1.0"?>

<rdf:RDF

xmlns:rdf = "http://www.w3.org/1999/02/22-rdf-syntax-ns#"

xmlns:s= "http://ptit.edu.vn/students #"

xmlns:tl= "http://ebook.com#"

xmlns:monhoc= "http://ptit.edu.vn/monhoc#">

<rdf:Description rdf:about="http://ptit.edu.vn/courses/2008">

<s:students>

<rdf:Bag>

<rdf:li rdf:resource= "http://ptit.edu.vn/students/Nghia"/>

<rdf:li rdf:resource="http://ptit.edu.vn/students/Lan"/>

<rdf:li rdf:resource="http://ptit.edu.vn/students/Hung"/>

<rdf:li rdf:resource="http://ptit.edu.vn/students/Dat"/>

<rdf:li rdf:resource="http://ptit.edu.vn/students/Linh"/>

</rdf:Bag>

</s:students>

</rdf:Description>

<rdf:Description rdf:about= "http://ptit.edu.vn/monhoc/cnpm">

<monhoc:student>Nghia</monhoc:student>

<monhoc:tailieu>Introduction to software engineering</monhoc:tailieu>

</rdf:Description>

<rdf:Description rdf:about= "http://ebook.com/Introductiontosoftwareengineering">

<tl:tacgia>Schach</tl:tacgia>

</rdf:Description>

<rdf:Description rdf:about= "http://ptit.edu.vn/monhoc/ttnt">

<monhoc:student>Lan,Hung</monhoc:student>

<monhoc:tailieu>Artificial Intelligence</monhoc:tailieu>

</rdf:Description>

<rdf:Description rdf:about = "http://ebook.com/ArtificialIntelligence">

<tl:tacgia>Russell, Norvig</tl:tacgia>

</rdf:Description>

<rdf:Description rdf:about= "http://ptit.edu.vn/students/Nghia">

<s:monhoc>Vi xu ly, Lap trinh</s:monhoc>

<s:diem>9</s:diem>

</rdf:Description>

<rdf:Description rdf:about="http://ptit.edu.vn/students">

<s:student>Lan, Hung</s:student>

<s:monhoc>Vi xu ly, Lap trinh </s:monhoc>

<s:diem>5 </s:diem>

</rdf:Description>

</rdf:RDF>

Biểu diễn Graph

http://ptit.edu.vn/students#students

courses/2008

http://ptit.edu.vn/students/Nghia

Nghia Lan Hung