1. Trang chủ
  2. » Luận Văn - Báo Cáo

Nghiên cứu và ứng dụng các nền tảng phát triển hệ thống ngữ nghĩa mở

82 17 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 82
Dung lượng 2,24 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Mục đích nghiên cứu của luận văn Luận văn có 4 nhiệm vụ cụ thể như sau: Tìm hiểu công nghệ Web ngữ nghĩa và vai trò trong các hệ thống thông tin hiện đại.. Máy truy vấn Các công cụ tru

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

PGS.TS CAO TUẤN DŨNG

HÀ NỘI – 2019

Trang 2

LỜI CAM ĐOAN

Tôi – Nguyễn Xuân Cường – cam kết luận văn là công trình nghiên cứu của bản thân tôi dưới sự hướng dẫn của PGS.TS Cao Tuấn Dũng

Các kết quả nêu trong luận văn là trung thực, không phải là sao chép toàn văn của bất kỳ công trình nào khác

Hà Nội, ngày 27 tháng 04 năm 2019

Học viên

Nguyễn Xuân Cường

Trang 3

LỜI CAM ĐOAN 2

DANH MỤC CÁC TỪ VIẾT TẮT VÀ THUẬT NGỮ 5

DANH MỤC HÌNH 7

DANH MỤC BẢNG 8

MỞ ĐẦU 10

1 Mục đích nghiên cứu của luận văn 10

2 Nội dung của luận văn 10

3 Các đóng góp khoa học của luận văn 10

Chương 1: Kiến thức nền tảng 11

1.1 Tổng quan Web ngữ nghĩa 11

1.1.1 Khái niệm 11

1.1.2 Kiến trúc của Web ngữ nghĩa 11

1.1.3 Vai trò của các thành phần trong Web ngữ nghĩa 12

1.1.4 Ontology [7] 15

1.1.5 Metadata [9] 17

1.1.6 SPARQL [5] 17

1.2 Bài toán phát triển hệ thống ngữ nghĩa 18

1.2.1 Mô hình phát triển hệ thống Web ngữ nghĩa 18

1.2.2 Mô hình phát triển hệ thống tìm kiếm ngữ nghĩa 20

1.3 Tiểu kết chương 21

Chương 2: Các nền tảng phát triển hệ thống ngữ nghĩa mở 22

2.1 Vai trò của các nền tảng ngữ nghĩa mở 22

2.2 Nền tảng dotnetRDF 23

2.2.1 Tổng quát về dotnetRDF 23

2.2.2 Kiến trúc 24

2.2.3 Khả năng ứng dụng của dotnetRDF 27

2.3 Nền tảng Open Semantic Framework (OSF) 27

2.3.1 Tổng quát về OSF 27

2.3.2 Kiến trúc của OSF 28

2.3.3 Khả năng ứng dụng của OSF 36

2.4 Nền tảng Open Semantic Search (OSS) 39

2.4.1 Tổng quát về OSS 39

2.4.2 Kiến trúc của OSS 42

2.4.3 Khả năng ứng dụng của OSS 46

2.5 Đánh giá các nền tảng ngữ nghĩa mở 47

Trang 4

2.6 Tiểu kết chương 48

Chương 3: Thử nghiệm ứng dụng quản lý thông tin văn bản sử dụng Open Semantic Search 49

3.1 Bài toán quản lý thông tin văn bản 49

3.2 Các thành phần trong ứng dụng 50

3.3.1 Django Framework 50

3.3.2 ETL 54

3.3.3 Solr 58

3.3.4 Xây dựng ứng dụng thử nghiệm 64

3.3 Các kết quả 73

3.4 Tiểu kết chương 75

Chương 4 KẾT LUẬN 77

TÀI LIỆU THAM KHẢO 78

PHỤ LỤC 80

Trang 5

DANH MỤC CÁC TỪ VIẾT TẮT VÀ THUẬT NGỮ

Từ viết tắt, thuật ngữ Từ viết đầy đủ

OSF Open Semantic Framework

OSS Open Semantic Search

CMA Content Management Application

CDA Content Delivery Application

URI Uniform Resource Identifier

CRUD Create Read Update Delete

HTML Hypertext Markup Language

API Application Programming Interface

CSR Cross-Site Scripting

CSRF Cross-Site Request Forgery

RDF Resource Description Framework

RDFS Resource Description Framework Schema OWL Web Ontology Language

SPQRQL SPARQL Protocol and Query Language

OSF Open Semantic Framework

OSS Open Semantic Search

RIF Rule Interchange Format

URL Uniform Resource Locator

JSON JavaScript Object Noattion

JSON-LD JavaScript Object Noattion for Linked Data

RDFa Resource Description Framework in Attributes CMS Content Managerment System

WOA Web-Oriented Architecture

HTTP HyperText Transfer Protocol

SKOS Simple Knowledge Organization System

UML Unified Modeling Language

XML eXtensible Markup Language

UI User Interface

Trang 6

MVT Models Views Temples

DBA Database Administrator

DIH Data Import Handler

ETL Extract Transform Load OCR Optical Character Recognition

Trang 7

DANH MỤC HÌNH

Hình 1-1 Kiến trúc tầng công nghệ ngữ nghĩa [2] 12

Hình 1-2 Đồ thị ví dụ RDF 13

Hình 1-3 Các mức độ ngữ nghĩa [8] 16

Hình 1-4 Mô hình triển khai một ứng dụng ngữ nghĩa [10] 19

Hình 1-5 Kiến trúc một máy tìm kiếm [11] 20

Hình 2-1 Quá trình phát triển của các thế hệ Web [12] 23

Hình 2-2 Dự án lõi của dotnetRDF 24

Hình 2-3 Chi tiết project dotnetRDF 25

Hình 2-4 Các lớp trong DataTable của dotnetRDF 25

Hình 2-5 Các lớp của Virtuoso 25

Hình 2-6 Các class trong Fulltext 26

Hình 2-7 Truy vấn SPIN 26

Hình 2-8 Web trong dotnetRDF 27

Hình 2-9 Kiến trúc tầng của OSF [14] 29

Hình 2-10 Kiến trúc tầng chi tiết của OSF [15] 30

Hình 2-11 Giao diện OSS 42

Hình 3-1 Mô hình MVT (Models – Views – Templates) trong Django [22] 51

Hình 3-2 Chuyển đổi từ Model sang Bảng trong cơ sở dữ liệu [22] 52

Hình 3-3 Kiến trúc của Solr [18] 59

Hình 3-4 Tải dữ liệu vào Solr [18] 60

Hình 3-5 Sơ đồ trình tự trong ứng dụng 67

Hình 3-6 Các thành phần chính trong ứng dụng 69

Hình 3-7 Các mô-đun trong OSS 70

Hình 3-8 Mô-đun crawler trong OSS 70

Hình 3-9 Ánh xạ các OntoNotes5 SpaCy 71

Hình 3-10 Kết quả thực thể PERSON 71

Hình 3-11 Giao diện tìm kiếm theo tác giả 73

Hình 3-12 Kết quả tìm kiếm được tài liệu theo tác giả là Eduard Hovy 73

Hình 3-13 Một số tổ chức được nhận diện 74

Trang 8

DANH MỤC BẢNG

Bảng 2-1 Các dịch vụ Web trong OSF 32

Bảng 2-2 Các dự án chính trong OSS [16] 41

Bảng 2-3 Bảng đánh giá các nền tảng 48

Bảng 3-1 Bảng chú thích tên thực thể trong OntoNotes 5 [17] 57

Bảng 3-2 Cấu trúc thư mục trong Solr 61

Bảng 3-3 Bảng một số thuộc tính cơ bản trong các trường của schema.xml 62

Bảng 3-4 Các thành phần cơ bản quan trọng trong schema.xml 62

Bảng 3-5 Bảng cấu các tham số cơ bản trong cấu hình solrconfig.xml 63

Bảng 3-6 Một số API được sử dụng trong Solr 64

Bảng 3-7 Các trường hợp sử dụng trong ứng dụng 65

Bảng 3-8 Bảng Senario của ứng dụng 66

Bảng 3-9 Thông tin cấu hình trong solrconfig.xml 68

Bảng 3-10 Cấu hình các plugin quan trọng trong ETL 68

Bảng 3-11 Bảng các API tìm kiếm được sử dụng trong Thử nghiệm 72

Bảng 3-12 Kết quả tìm kiếm 74

Bảng 3-13 Đánh giá kết quả thử nghiệm 75

Trang 9

LỜI CẢM ƠN

Để có thể hoàn thành luận văn tốt nghiệp này, em xin chân thành cảm ơn thầy hướng dẫn luận văn tốt nghiệp, PGS.TS Cao Tuấn Dũng, bộ môn Công nghệ phần mềm, trường đại học Bách Khoa Hà Nội Thầy đã nhiệt tình hướng dẫn, truyền đạt những kiến thức cần thiết và định hướng cho em trong quá trình thực hiện đề tài

Em xin chân thành cảm ơn các thầy cô giáo ở bộ môn Công nghệ phần mềm, trường Đại học Bách Khoa Hà Nội

Dù đã cố gắng nhưng luận văn chắc chắn không tránh khỏi thiếu sót, em rất mong nhận được ý kiến đóng góp của các thầy cô

Em xin chân thành cảm ơn!

Trang 10

MỞ ĐẦU

1 Mục đích nghiên cứu của luận văn

Luận văn có 4 nhiệm vụ cụ thể như sau:

Tìm hiểu công nghệ Web ngữ nghĩa và vai trò trong các hệ thống thông tin hiện đại Nghiên cứu, tổng hợp thông tin về các nền tảng phát triển công nghệ ngữ nghĩa mở, đánh giá khả năng ứng dụng triển khai, ưu nhược điểm

Lựa chọn nền tảng – xây dựng thử nghiệm các tính năng xử lý thông tin với hỗ trợ ngữ nghĩa

Đề xuất hoặc đưa ra các hướng dẫn, kinh nghiệm triển khai các hệ thống với công nghệ ngữ nghĩa sử dụng các nền tảng mở

2 Nội dung của luận văn

Nội dung luận văn bao gồm 4 chương:

Chương 1: Tổng quan về Web ngữ nghĩa và bài toán phát triển hệ thống Web ngữ nghĩa Chương này tìm hiểu lý thuyết về Web ngữ nghĩa các khái niệm chính của Web ngữ nghĩa, tham khảo một số mô hình hệ thống ứng dụng Web ngữ nghĩa đã được nghiên cứu

Chương 2: Các nền tảng phát triển hệ thống ngữ nghĩa mở Chương này tìm hiểu về các nền tảng hỗ trợ lập trình, xây dựng hệ thống ngữ nghĩa như dotnetRDF, Open Semantic Search, Open Semantic Framework

Chương 3: Thử nghiệm ứng dụng quản lý thông tin văn bản sử dụng Open Semantic Search Chương này sẽ sử dụng nền tảng Open Semantic Search để phân tích tài liệu, thực hiện tìm kiếm các tài liệu đã được đưa vào phân tích

Chương 4 Kết luận

3 Các đóng góp khoa học của luận văn

Luận có hai đóng góp như sau:

Dựa trên các nghiên cứu về ba nền tảng dotnetRDF, Open Semantic Framework, Open Semantic Search đưa ra những đánh giá cụ thể về các nền tảng trên giúp các nhà phát triển có lựa chọn thích hợp với từng trường hợp sử dụng

Đưa ra các kinh nghiệm sử dụng triển khai nền tảng Open Semantic Search trong việc tìm kiếm tài liệu văn bản

Trang 11

Chương 1: Kiến thức nền tảng 1.1 Tổng quan Web ngữ nghĩa

1.1.1 Khái niệm

Theo tác giả Tim-Berners-Lee trong một bài báo công bố năm 2001 với tiêu đề “The Semantic Web” Web ngữ nghĩa được định nghĩa như sau: “Web ngữ nghĩa (Semantic Web) không phải là một Web mới mà là phần mở rộng của Web hiện tại trong đó những thông tin được cung cấp có ý nghĩa rõ ràng hơn, cho phép con người và máy tính hợp tác làm việc tốt hơn” [1]

Trên cơ sở định nghĩa của tác giả Tim-Berners-Lee, Web ngữ nghĩa giúp làm rõ hơn hai vấn đề Một là, các thông tin sẽ được cung cấp rõ ràng hơn, thể hiện được các mối quan hệ, ràng buộc giữa chúng Hai là, giúp máy tính có thể hiểu được từ đó làm tăng

sự tương tác giữa con người với máy tính Máy tính có thể hiểu được các tài liệu ngữ nghĩa, dữ liệu không phải lời nói của con người hay các bài viết

1.1.2 Kiến trúc của Web ngữ nghĩa

Ngày nay, những công nghệ nền tảng cho phát triển công nghệ Web ngữ nghĩa đã được hoàn thiện, dựa trên những nghiên cứu các nhà khoa học đã đưa ra được kiến trúc công nghệ Web ngữ nghĩa, hình 1-1 dưới đây thể hiện kiến trúc của Web ngữ nghĩa Kiến trúc của công nghệ Web ngữ nghĩa bao gồm ba tầng chính: Tầng đáy chứa các công nghệ cơ bản của Web ngữ nghĩa như là URI, Unicode, XML Tầng trung gian chứa các công nghệ tiêu chuẩn của W3C cho phép xây dựng ứng dụng Web ngữ nghĩa như: RDF, RDFS, OWL, SPARQL, RIF Tầng trên cùng là những công nghệ chưa được chuẩn hóa hoặc chưa được triển khai hiện thực hóa: Cryptography, Trust, Giao diện người sử dụng Mỗi tầng, mỗi thành phần trong các tầng đều có những vai trò nhất định giúp hình thành nên công nghệ Web ngữ nghĩa Ở trong phần tiếp theo của chương tác giả giới thiệu về chức năng vai trò của các thành phần trong từng lớp của công nghệ Web ngữ nghĩa

Trang 12

Hình 1-1 Kiến trúc tầng công nghệ ngữ nghĩa [2]

1.1.3 Vai trò của các thành phần trong Web ngữ nghĩa

UNICODE [2]

Là một bảng mã chuẩn chung có đủ các ký tự thống nhất sự giao tiếp trên tất cả các quốc gia, đáp ứng tính nhất quán toàn cầu của Web

Trang 13

URI [2]

Một URI là một kí hiệu nhận dạng Web đơn giản Là một xâu ngắn cho phép nhận dạng tài nguyên Web như: với các xâu bắt đầu với "http:" hoặc "ftp:" thường xuất hiện trên World Wide Web Bất kỳ một người nào cũng có thể tạo một URI và sở hữu các URI, URI là một công nghệ cơ sở để xây dựng một hệ thống Web toàn cầu Hệ thống World Wide Web được xây dựng trên các URI URL (Uniform Resource Locator) là một dạng đặc biệt của URI và là một địa chỉ trên mạng URIref (URI reference) là một URI cùng với một phần nhận dạng tuỳ ý ở cuối

Ví dụ, URIref:"http://www.example.org/Books#Ontology" bao gồm một URI:

"http://www.example.org/Books" và một phần nhận dạng "Ontology" được cách nhau bởi kí hiệu #

Theo như quy ước, các không gian tên là những tài nguyên mà tạo ra các đa tài nguyên, thường là những URI được kết thúc bởi kí hiệu # Ví dụ:

"http://www.example.org/Books#" là một không gian tên Các tài nguyên không

có URIref thì được gọi là các nút trắng; một nút trắng chỉ ra sự tồn tại của tài nguyên không có sự đề cập rõ ràng về tham chiếu URIref của tài nguyên

XML [2]

Cung cấp những cú pháp cho nội dung trong các tài liệu, nhưng không liên quan đến ngữ nghĩa với ý nghĩa của nội dung trong đó Ngoài XML thì thực tế có thể sử dụng các Turtle, mặc dù chưa được chuẩn hóa

RDF [3]

RDF được W3C giới thiệu để cung cấp một cú pháp chuẩn để tạo, thay đổi

và sử dụng các chú thích trong Web ngữ nghĩa Một mệnh đề RDF là một bộ ba có

dạng: [chủ đề thuộc tính đối tượng] Trong đó, chủ đề là tài nguyên mà được mô tả bằng thuộc tính và đối tượng Thuộc tính thể hiện mối quan hệ giữa chủ đề và đối tượng Còn đối tượng ở đây có thể là một tài nguyên hoặc một giá trị Ba thành phần

trên trong RDF đều là các URI

Hình 1-2 Đồ thị ví dụ RDF

Trang 14

Ví dụ về một RDF

<?xml version="1.0"?>

<RDF>

<Description about="https://www.w3schools.com/rdf">

<author>Jan Egil Refsnes</author>

<homepage>https://www.w3schools.com</homepage>

</Description>

</RDF>

Ý nghĩa của các thành phần trong ví dụ trên như sau: Tài nguyên có thông tin mô tả trong : https://www.w3schools.com/rdf, thuộc tính mô tả về: <homepage>, giá trị của thuộc tính mô tả về: https://www.w3schools.com

Một mệnh đề RDF có thể là: Tác giả của https://www.w3schools.com/rdf là Jan Egil Refsnes Trang chủ của https://www.w3schools.com/rdf là https://www.w3schools.com

RDFS [4]

RDFS là một ngôn ngữ có mục đích chung để biểu diễn các từ vựng RDF đơn giản trên Web Các công nghệ định nghĩa từ vựng khác như OWL hoặc SKOS được xây dựng dự trên RDFS và cung cấp ngôn ngữ để xác định các bản thể luận dựa trên Web

có cấu trúc, cho phép tích hợp và khả năng tương tác dữ kiệu cộng đồng mô tả phong phú hơn RDFS cung cấp các định nghĩa về: lớp tài nguyên, quan hệ giữa các lớp, các thuộc tính mà các lớp trên có mối quan hệ giữa các thuộc tính

OWL [2]

OWL thêm các từ vựng để mô tả các thuộc tính và các lớp: trong số các từ vựng, mối quan hệ giữa các lớp: các thuộc tính phong phú hơn, các đặc tính của thuộc tính, liệt kê các lớp

SPARQL [5]

Là một giao thức, một ngôn ngữ truy vấn cho các nguồn dữ liệu Web ngữ nghĩa như RDF, OWL, SPARQL cho phép truy vấn đến các bộ ba, các liên từ

Trang 15

RIF [6]

Là một định dạng trao đổi qui tắc W3C Đó là một ngôn ngữ XML cho việc thể hiện ngôn ngữ Web mà máy tính có thể thực thi RIF cung cấp nhiều phiên bản nó bao gồm phương ngữ cơ bản (RIF- BLD) và phương ngữ quy tắc sản xuất (RIF-PRD)

Proof [2]

Tầng này đưa ra các luật để suy luận Cụ thể từ các thông tin đã có ta có thể

suy ra các thông tin mới Ví dụ: A là cha của B, A là em trai C thì khi đó ta có thông tin mới là C là bác của B Để có được các suy luận này thì cơ sở là FOL

(First-Order-Logic) Và tầng này hiện nay các nhà nghiên cứu đang xây dựng các ngôn ngữ luật cho nó như: SWRL, RuleML

Trust [2]

Đảm bảo tính tin cậy của các ứng dụng trên Web ngữ nghĩa Ví dụ: có một

người bảo x là xanh, một người khác lại nói x không xanh, như thế Web ngữ nghĩa

là không đáng tin cậy? Câu trả lời ở đây được xem xét trong các ngữ cảnh Mỗi ứng dụng trên Web ngữ nghĩa sẽ có một ngữ cảnh cụ thể, chính vì thế các mệnh đề trên có thể nằm trong các ngữ cảnh khác nhau khi đó ngữ nghĩa tương ứng khác nhau nên các mệnh đề đó vẫn đúng, đáng tin cậy trong ngữ cảnh của nó Để có được sự chứng minh về độ tin cậy thì các lập luận được áp dụng là không đơn điệu và

có các cơ chế kiểm tra chứng minh kết hợp với công nghệ chữ ký điện tử để xác nhận độ tin cậy Các ngôn ngữ chứng minh là ngôn ngữ cho ta chứng minh một mệnh đề là đúng hay sai

Cryptography [2]

Giúp đảm bảo và xác thực các nguồn dữ liệu trong các trang Web ngữ nghĩa là đáng tin cậy bằng cách ứng dụng chữ ký số vào trong các tuyên bố RDF Đây là một thành phần vô cùng quan trọng của một ứng dụng Web ngữ nghĩa, nó không chỉ đảm bảo về tính an toàn tin cậy mà còn cả tính toàn vẹn của thông tin

1.1.4 Ontology [7]

Một Ontology là những định nghĩa các từ vựng chung cho các nhà nghiên cứu người

mà cần để chia sẻ thông tin trong một miền, lĩnh vực Bao gồm các định nghĩa cơ bản

mà máy tính có thể hiểu được trong một miền lĩnh vực và các mối quan hệ giữa chúng

Trang 16

Các thành phần chính của Ontology bao gồm: Cá nhân (Individual): là các các thể hoặc các đối tượng (đối tượng cơ bản) Lớp (Class): là các bộ, bộ sưu tập, khái niệm hoặc các loại đối tượng

Các thuộc tính: thuộc tính, tính năng, đặc điểm hoặc tham số mà các đối tượng (và lớp) có thể có: Quan hệ là cách mà các lớp và các đối tượng có thể liên quan với nhau Thuật ngữ chức năng: các cấu trúc phức tạp được hình thành từ các mối quan hệ nhất định có thể được sử dụng thay cho một thuật ngữ cá nhân trong một tuyên bố hạn chế:

mô tả chính thức về những gì phải đúng để một số khẳng định là được chấp nhận làm đầu vào Quy tắc: các câu dưới dạng câu if then (tiên đề) mô tả suy luận logic có thể được rút ra từ một khẳng định trong một hình thức cụ thể Tiên đề: các xác nhận (bao gồm các quy tắc) ở dạng logic cùng nhau bao gồm lý thuyết tổng thể bản thể luận mô

tả trong lĩnh vực ứng dụng của nó Định nghĩa này khác với định nghĩa của "tiên đề" trong ngữ pháp khái quát và logic hình thức Trong các ngành này, tiên đề chỉ bao gồm tuyên bố khẳng định là một kiến thức tiên nghiệm Như được sử dụng ở đây, "tiên đề" cũng bao gồm lý thuyết xuất phát từ các phát biểu tiên đề Sự kiện: thay đổi thuộc tính hoặc quan hệ

Các mức độ của Web ngữ nghĩa được thể hiện ở hình dưới, mức độ ngữ nghĩa tăng dần từ thấp đến cao Ở mức thấp nội dung chỉ được thể hiện bằng XML cao hơn nữa là các RDF và OWL

Hình 1-3 Các mức độ ngữ nghĩa [8]

Trang 17

1.1.5 Metadata [9]

Metadata (siêu dữ liệu) là dữ liệu [thông tin] cung cấp thông tin về dữ liệu khác Có các loại siêu dữ liệu như: siêu dữ liệu mô tả, siêu dữ liệu cấu trúc, siêu dữ liệu quản trị, siêu dữ liệu tham chiếu, siêu dữ liệu thống kê

Siêu dữ liệu mô tả mô tả một tài nguyên cho các mục đích khám phá và nhận dạng

có thể bao gồm các yếu tố như tiêu đề, trừu tượng, tác giả và từ khóa

Siêu dữ liệu cấu trúc là siêu dữ liệu về các thùng chứa dữ liệu và cho biết cách các đối tượng ghép được kết hợp với nhau, ví dụ: cách các trang được sắp xếp để tạo thành các chương Mô tả các loại, phiên bản, mối quan hệ và các đặc tính khác của vật liệu

kỹ thuật số

Siêu dữ liệu quản trị cung cấp thông tin để giúp quản lý tài nguyên, chẳng hạn như thời điểm và cách thức được tạo, loại tệp và thông tin kỹ thuật khác và ai có thể truy cập vào tài nguyên đó Siêu dữ liệu tham chiếu mô tả nội dung và chất lượng của dữ liệu thống kê siêu dữ liệu thống kê cũng có thể mô tả các quy trình thu thập, xử lý hoặc tạo dữ liệu thống kê; siêu dữ liệu như vậy cũng được gọi là dữ liệu quá trình

Siêu dữ liệu có cú pháp thể hiện là các quy tắc để cấu trúc lên các trường hoặc thành phần của siêu dữ liệu Lược đồ siêu dữ liệu được thể hiện bằng ngôn ngữ đánh dấu hoặc các ngôn ngữ lập trình Các siêu dữ liệu thường hay được thể hiện thông qua HTML, XML, RDF

1.1.6 SPARQL [5]

SPARQL là giao thức truy cập dữ liệu và ngôn ngữ truy vấn RDF tiêu chuẩn được giới thiệu bởi W3C để dễ dàng truy cập vào các tài liệu RDF trong Web ngữ nghĩa Được định nghĩa trong kết nối với mô hình dữ liệu RDF và hoạt động với bất kỳ nguồn

dữ liệu nào có thể được biểu thị bằng RDF Truy vấn SPARQL ngôn ngữ cung cấp cú pháp và ngữ nghĩa để nhận thông tin từ đồ thị RDF SPARQL cung cấp một số phương tiện để trích xuất thông tin trong nhiều các hình thức như URI, các nút trống và các ký

tự đơn giản SPARQL cũng có các phương tiện để trích xuất các biểu đồ con RDF và xây dựng các biểu đồ RDF mới sử dụng thông tin trong các truy vấn Kết hợp các mẫu biểu đồ là cơ sở của ngôn ngữ truy vấn SPARQL

Các mẫu biểu đồ cơ bản đơn giản nhất có thể là một mẫu ba như bộ ba RDF với các biến thay vì chủ đề, vị ngữ và đối tượng Những mẫu biểu đồ có thể được sử dụng làm mẫu cơ bản cho biểu đồ RDF để truy xuất truy vấn các kết quả Không có suy luận trong ngôn ngữ truy vấn SPARQL và nó chỉ truy vấn thông tin trong đồ thị RDF

Trang 18

Để tìm „name‟ của nhân viên trong đồ thị trên thì có thể sử dụng câu truy vấn nhu

sau: PREFIX foaf: SELECT ?name WHERE { foaf:name ?name } Trong câu truy vấn

ở trên thì một PREFIX foaf định nghĩa một không gian tên của từ vựng http://xmlns.com/foaf/0.1/ , mệnh đề SELECT xác định „name‟ trong câu điều kiện

WHERE và đưa ra kết quả:

name Bod

1.2 Bài toán phát triển hệ thống ngữ nghĩa

1.2.1 Mô hình phát triển hệ thống Web ngữ nghĩa

Khi thực hiện đề tài tác giả đã tìm hiểu và tham khảo những để tài nghiên cứu về công nghệ Web ngữ nghĩa đã được nghiên cứu trước đây từ đó tìm ra những mô hình những kết quả của các nghiên cứu đó trong bài luận văn Một trong những nghiên cứu

đó là An Information Food Chain for Advanced Applications on the WWW của các tác

giả Stefan Decker, Jan Jannink, Prasenjit Mitra, Gio Wiederhold được thể hiện tại

Proc 4th European Conference on Research and Advanced Technology for Digital Libraries, Springer LCNS Vol.1923, 2000, trang 490-498 Tác giả đã tham khảo mô

hình triển khai ứng dụng trong bài viết

Trang 19

Hình 1-4 Mô hình triển khai một ứng dụng ngữ nghĩa [10]

Ontology Construction Tool

Ontology là một thành phần quan trọng trong việc xây dựng các hệ thống ngữ nghĩa,

vì thế là thành phần đầu tiên trong chuỗi các thành phần của mô hình Để giảm chi phí xây dựng các ontology thì các công cụ trợ giúp xây dựng ontology nhanh chóng giảm chi phí tối đa

Web-Page Antotation Tool

Từ các ontology được xây dựng thì một hệ thống ngữ nghĩa cần có các công cụ để tạo ra các chú thích ngữ nghĩa, các chú thích ngữ nghĩa là một thành phần giúp cho hệ thống có ngữ nghĩa hơn Các công cụ chú thích ngữ nghĩa giúp nhanh chóng có được các chú thích ngữ nghĩa từ các ontology đã được thiết kế trước đó, ngày nay sự phát triển nhanh của công nghệ các công cụ chú thích ngữ nghĩa đã có thể được thực hiện tự động giúp tạo ra các chú thích rất nhanh chóng

Trang 20

Inference Engine

Các máy suy luận sẽ tổng hợp thông tin từ nhiều nguồn dữ liệu để tạo ra các ứng dụng mới và khai thác giá trị thông tin nhiều nhất có thể Các công nghệ suy luận để cho phép ontology tạo ra mối liên hệ với các thông tin khác Một hệ thống suy luận cung cấp các phương tiện cho hiệu quả cho một lý luận

Semantic Community Portal Site

Các cổng thông tin cộng đồng ngữ nghĩa hoạt động giống như một cổng thông tin Những người sử dụng sẽ truy cập đến cổng thông tin và sử dụng các thông tin ngữ nghĩa của hệ thống

1.2.2 Mô hình phát triển hệ thống tìm kiếm ngữ nghĩa

Sự tăng trưởng nhanh chóng về số lượng các trang Web làm cho nhu cầu tìm kiếm thông tin tăng theo Trong những năm 2000 đã có những hơn 3200 máy tìm kiếm trên Web Số tài liệu, chỉ mục của máy tìm kiếm tăng lên theo hàng năm Ngày nay, GOOGLE đứng đầu thế giới về máy tìm kiếm đã lập chỉ mục cho hơn 30 nghìn tỷ trang Web Mặc dù các máy tìm kiếm có những sự khác biệt với nhau nhưng một máy tìm kiếm sẽ có 4 thành phần chính như: Bộ thu thập, lập chỉ mục, một máy truy vấn, một kho lưu trữ trang

Hình 1-5 Kiến trúc một máy tìm kiếm [11]

Trang 21

Bộ thu thập

Bộ thu thập thông tin là một chương trình máy tính duyệt các trang Web Bằng việc

sử dụng các URL để sao chép và lưu trữ nội dung của các trang Web được chỉ định bởi các URL đã cho Bộ thu thập thông tin sẽ trích xuất các URL xuất hiện trong các trang Web

Lập chỉ mục

Lấy tất cả các “từ”(word) từ mỗi tài liệu trong các kho tài liệu lưu trữ các trang và ghi lại các URL tại mỗi nơi xảy ra Kết quả thu được là một cơ sở dữ liệu rất lớn cung cấp các URL trỏ đến các trang Trong cơ sở dữ liệu cũng có thể chứa các thông tin như

là liên kết giữa các tài liệu, URL đến các tài liệu, định dạng tài liệu và vị trí của các liên quan khác

Máy truy vấn

Các công cụ truy vấn Web nhận được các yêu cầu tìm kiếm từ người dùng, các truy vấn được chia thành các thuật ngữ và cũng tìm kiếm các thuật ngữ này trong cơ sở dữ liệu là các bộ chỉ mục, bộ truy vấn truy xuất đến các tài liệu phù hợp với cá điều kiện phù hợp với câu truy vấn và trả về kết quả cho người dùng

Kho lưu trữ trang

Trong quá trình thu thập thông tin các trang Web được lưu trữ trong các kho lưu trữ, Máy tìm kiếm sẽ xếp hạng các tài liệu trước khi trả kết quả về cho người dùng, các xếp hạng này là tính điểm tương đồng giữa các câu truy vấn và tài liệu Các điểm tương đồng càng cao thì thứ hạng của một tài liệu càng cao

Web truyền thống và Web ngữ nghĩa có những sự khác nhau, nếu như Web truyền thống tài liệu trong HTML, còn các tìm kiếm ngữ nghĩa là ở siêu dữ liệu ngữ nghĩa được thể hiện trong các tài liệu RDF, OWL

Trang 22

Chương 2: Các nền tảng phát triển hệ thống ngữ nghĩa mở

2.1 Vai trò của các nền tảng ngữ nghĩa mở

Công nghệ đang ngày càng phát triển, hàng ngày, hàng tháng luôn có những phát hiện mới, những ý tưởng về công nghệ mới ra đời, sự phát triển nhanh của hạ tầng phần cứng, mức độ tích hợp của các vi xử lý tăng nhanh chóng, máy tính và các thiết bị thông minh trở nên phổ biến Tất cả các lĩnh vực, tất cả các hoạt động từ nghiên cứu khoa học đến sinh hoạt đời thường của con người đều có những đóng góp của các thiết

bị điện tử thông minh có khả năng lưu trữ, phân tích những hành vi, hoạt động của con người trong cuộc sống Điều này sinh ra những bài toán mới mà con người cần giải quyết, những công nghệ Big-Data, AI (Artificial Intelligence), IoT (Internet of Thing),

… những bài toán liên quan đến việc chia sẻ sử liệu, xử lý siêu dữ liệu, kết nối các nguồn dữ liệu, phân tích dữ liệu, … rất cần sự hỗ trợ của các nền tảng công nghệ Công nghệ Web ngữ nghĩa ra đời cũng nhằm giải quyết một phần trong các bài toán trên Tác giả Nova trong một nghiên cứu được công bố vào tháng hai năm 2007 đã đưa những nhận định đánh giá về tương lại phát triển của công nghệ Web trong đó vai trò của Web nghữ nghĩa là rất quan trọng, là hạt nhân của thế hệ Web 3.0 Theo tác giả trong giai đoạn thập niên đầu tiên của thế kỷ là sự phát triển mạnh mẽ các nền tảng Web ngữ nghĩa như RDF, OWL, SPARQL,… tạo tiền đề cho những giai đoạn tiếp theo

là giai đoạn của Web 3.0 (Web ngữ nghĩa) từ những năm 2010 đến 2020 hoặc có thể lâu hơn công nghệ Web ngữ nghĩa dần đi vào cuộc sống Những công ty hoặc những tổ chức bắt đầu có những nghiên cứu ứng dụng công nghệ Các nền tảng dành cho Web ngữ nghĩa dần dần hình thành Những nền tảng ngữ nghĩa mở phát triển rất nhanh chóng đưa ra những trợ giúp hoặc giải quyết một phần bài toán ngữ nghĩa Vì thế mà vai trò của các nền tảng ngữ nghĩa mở ngày càng trở lên quan trọng Các thư viện các

bộ công cụ được tích hợp giúp ích rất nhiều cho các nhà phát triển, các doanh nghiệp

có thể thử nghiệm, ứng dụng ngay công nghệ ngữ nghĩa vào bài toán thực tế

dotnetRDF là một nền tảng mã nguồn mở được phát triển từ những năm 2013 cung cấp cho các nhà phát triển những khả năng tương tác dữ liệu ngữ nghĩa RDF, OWL, các truy vấn SPARQL, … giúp các nhà phát triển xây dựng các ứng dụng nghĩa nghĩa nhanh chóng trên hệ điều hành Windows

Open Semantic Framework là một nền tảng ngữ nghĩa mở được viết bằng ngôn ngữ PHP với mục tiêu là xây dựng công cụ phát triển ngữ nghĩa trên các hệ điều hành là Cent OS 6 và Cent OS7, Ubuntu 14.04

Trang 23

Đối với Open Semantic Search là một nền tảng ngữ nghĩa mở cung cấp rất nhiều API, tính năng tìm kiếm mạnh mẽ hỗ trợ các nhà phát triển xây dựng các hệ thống tìm kiếm ngữ nghĩa, tìm kiếm tích hợp thông tin…

Hình 2-1 Quá trình phát triển của các thế hệ Web [12]

Một cách tổng quát các nền tảng ngữ nghĩa mở là các mã nguồn mở nhằm mục tiêu xây dựng các hệ thống ngữ nghĩa trở nên nhanh chóng tiện lợi hơn, giúp các nhà phát triển giảm bới chi phí thời gian xây dựng, tích hợp hệ thống

2.2 Nền tảng dotnetRDF

2.2.1 Tổng quát về dotnetRDF

dotNetRDF là một thư viện mã nguồn mở cho các ứng dụng sử dụng nền tảng NET như Winform, WPF, Web Được phát triển bởi một nhóm tác giả: Rov Vesse, Ron Michael Zettlemoyer, Khalil Ahmed, Graham Moore, Tomasz Pluskiewicz, mục tiêu cung cấp mạnh mẽ, linh hoạt các API để làm việc với RDF và SPARQL, trợ giúp khai thác dữ liệu ngữ nghĩa, giúp cho việc khai thác truy vấn dữ liệu ngữ nghĩa trở lên đơn giản dễ sử dụng hơn Nền tảng hỗ trợ chính của dotNetRDF là những framework NET như: NET 4.0, NET 4.0 Client Profile, NET Standard 1.4, NET Standard 2.0 [13]

Trang 24

Để hỗ trợ người lập trình viên dễ dàng cài đặt cũng như sử dụng thì dotNetRDF đã cung cấp thư viện trên Nuget với những gói chính như sau: dotNetRDF, dotNetRDF.Data, dotNetRDF.Data.Virtuoso, dotNetRDF.Query, dotNetRDF.Query, dotNetRDF.Web

Với việc chỉ hỗ trợ các nền tảng NET thì dotNetRDF chỉ có thể được triển khai ứng dụng trên hệ điều hành là Windows, với ứng dụng Web thì việc hosting cũng bắt buộc phải sử dụng IIS trên gắn liền với hệ điều hành Windows Điểm thuận lợi là dễ dàng cài đặt vào dự án do các thư viện của dotnetRDF có sẵn trên hệ thống quản lý thư viện Nuget và lập trình viên có thể sử dụng nhiều công cụ rất tốt để phát triển như Visual Studio, Visual Studio Code

Trong mỗi project được tổ chức thành các nhóm chức năng, các lớp được triển khai trong đó Ví dụ ở trong dotnetRDF sẽ có các chức năng như Ontology, Query…

Trang 25

dotnetRDF

dotNetRDF project cung cấp các thư

viện lõi những thư viện này nhằm mục

đích viết và đọc RDF, quản lý và truy vấn

dữ liệu RDF trong bộ nhớ

Hiện tại dotnetRDF có thể hỗ trợ được

một số định dạng RDF như : NTriples,

Turle, Notation 3, RDF/XML,

RDF/JSON, RDFa 1.0, TriG, TriX,

NQuads (NTriples plus), JSON-LD (1.0

và 1.1)

Hình 2-3 Chi tiết project dotnetRDF

dotNetRDF.Data.DataTables

Hỗ trợ tương tác với cơ sở dữ liệu,

quản lý các bộ ba của từng hàng (row)

trong cơ sở dữ liệu Quản lý các kết quả

trả về từ câu truy vấn SPARQL

Hình 2-4 Các lớp trong DataTable của

dotnetRDF

dotNetRDF.Data.Virtuoso

Hỗ trợ kết nối với Virtuoso, hỗ trợ thực hiện

việc giao tiếp với các Bnode trong Virtuoso

Quản lý việc truy nhập đến Native Virtuoso,

cho phép người sử dụng tạo ra các bất ký class

nào có giao diện (interface) hỗ trợ Virtuoso

Tương tác với cơ sở dữ liệu của Virtuoso, tự

động gắn ID cho Blank Bnode của Virtuoso

Đọc dữ liệu từ các đồ thị RDF Hình 2-5 Các lớp của Virtuoso

Trang 26

dotNetRDF.Query.FullText

Hỗ trợ tìm kiếm nội dung ngữ

nghĩa: cung cấp các hàm giúp đánh

chỉ mục tài liệu trong cơ sở dữ liệu,

tối ưu hóa các câu truy vấn Thực

hiện các câu truy vấn tìm kiếm

SPARQL

Hình 2-6 Các class trong Fulltext

dotNetRDF.Query.Spin

SPIN (SPARQL Inferencing Nation) [8]

là một tiêu chuẩn được định nghĩa bởi W3C

thể hiện các quy tắc và các ràng buộc trong

các mô hình Web ngữ nghĩa SPIN cung cấp

các mô hình hóa meta cho phép người dùng

xác định được các hàm truy vấn SPARQL và

các mẫu truy vấn của riêng người dùng

SPIN có thể được dùng để triển khai tính

hợp lệ của dữ liệu tùy theo yêu cầu định

dạng của người sử dụng

SPIN có thể kiểm tra sự ràng buộc với

ngữ nghĩa Các ràng buộc được chỉ định bởi

câu truy vấn SPARQL ASK hoặc các mẫu

truy vấn tương ứng

SPIN kết hợp với ngôn ngữ hướng đối

tượng, ngôn ngữ truy vấn và các quy tắc cơ

bản của hệ thống để mô tả một đối tượng dữ

liệu Web SPIN sẽ định nghĩa một tập hợp

các thuộc tính RDF

Hình 2-7 Truy vấn SPIN

dotNetRDF.Web

Trang 27

Cung cấp các khả năng đọc dữ liệu, truy vấn

SPQARQL, các dịch vụ SPARQL,… từ phía

Server Giúp cho việc xây dựng một trang Web

ngữ nghĩa dễ dàng hơn

dotnetRDF.Web cho phép thực hiện các

handler với nhiều truy vấn hoặc nội dung

Website, Quản lý các ký tự đại diện hoặc các

Graph

dotnetRDF.Web có vai trò quan trọng trọng

việc xây dựng các trang Web bằng nền

tảng NET như ASP.NET

Hình 2-8 Web trong dotnetRDF

2.2.3 Khả năng ứng dụng của dotnetRDF

dotnetRDF nhắm đến mục đích là hỗ trợ các nhà phát triển khai thác công nghệ ngữ nghĩa bằng cách cung cấp linh hoạt các API cho việc làm việc với RDF và SPARQL trong môi trường NET vì thế khả năng ứng dụng chính của dotnetRDF là lập trình xây dựng các ứng dụng ngữ nghĩa cơ bản như: khai thác, sử dụng ontology, sử dụng dữ liệu ngữ nghĩa, tích hợp dữ liệu các ứng dụng ngữ nghĩa hoặc tìm kiếm thông tin ngữ nghĩa bằng truy vấn SPARQL

dotnetRDF đặc biệt phù hợp với những ứng dụng ngữ nghĩa yêu cầu triển khai trên

hệ điều hành là Windows và sử dụng ngôn ngữ lập trình là C#, VB, VB.Net, hầu hết các mã nguồn mở cho công nghệ ngữ nghĩa đều được xây dựng bằng các ngôn ngữ như: Java, Python, PHP Một công cụ hỗ trợ tốt cho công nghệ ngữ nghĩa viết hỗ cho các nền tảng NET là rất ít, đây cũng là một ưu điểm của dotnetRDF

2.3 Nền tảng Open Semantic Framework (OSF)

2.3.1 Tổng quát về OSF

OSF là một bộ phần mềm tích hợp sử dụng công nghệ ngữ nghĩa cho việc quản lý tri thức OSF có một tầng kiến trúc kết hợp các phần mềm mã nguồn mở đang tồn tại với việc bổ sung các thành phần mã nguồn mở OSF được thiết kế như là một nền tảng tích hợp nội dung cho phép truy nhập thông qua Web, cung cấp những khả năng quản lý tri thức cho các doanh nghiệp, OSF được cung cấp giấy phép bởi Apache 2

Trang 28

OSF có nhiều ứng dụng từ tích hợp thông tin doanh nghiệp đến những mạng lưới hợp tác và các chính phủ mở Hệ thống cũng cấp như: Tích hợp tất các nội dung và kiểu dữ liệu; Quản lý tri thức; Tìm kiếm ngữ nghĩa cho doanh nghiệp; Phân tán, truy nhập dữ liệu khác nhau và phân quyền sử dụng; Phát hành và quản lý thông tin

OSF có thể tích hợp và quản lý tất cả những loại nội dung như: các tài liệu phi cấu trúc, các tệp tin bán cấu trúc, bảng tính và những dữ liệu có cấu trúc - sử dụng nhiều công cụ lập chỉ mục và quản lý dữ liệu tốt nhất Tất cả các nội dung bên ngoài được chuyển đổi sang mô hình dữ liệu chuẩn RDF, cho phép các công cụ và phương pháp cho việc gắn thẻ và quản lý tất cả nội dung Ontology cung cấp lược đồ và các từ vựng phổ biến để tích hợp qua các bộ dữ liệu khác nhau Những tính năng này có thể được xếp thành các lớp trên các tài nguyên thông tin hiện có cho các mức độ tích hợp và kết nối chưa từng có Tất cả những thông tin trong OSF có thể được tìm kiếm và tìm kiếm

kĩ lưỡng, với những bộ kết quả có sẵn cho việc xuất ra nhiều định dạng khác nhau và dưới dạng dữ liệu đã được liên kết

Một bộ OSF bao gồm có nhiều lớp Trong cấu hình chuẩn, có tích hợp chặt chẽ với Drupal 7 và các mô-đun của Drupal cho phép sử dụng OSF với các giao diện chuẩn Drupal và các cấu trúc Tất cả các tương tác với OSF diễn ra thông qua một lớp với gần

30 dịch vụ Web và các API liên quan Một lớp OSF cung cấp chức năng quản lý RDF, OWL sử dụng Virtuoso(RDF), Solr(search), OWL API (ontologies) và GATE(tagging and NLP) Bên cạnh Drupal và các công cụ, tất cả các phần tử OSF và các dịch vụ Web được phát triển để đạt được cấu trúc hoàn chỉnh của một Open Semantic Framework

2.3.2 Kiến trúc của OSF

OSF có mô hình kiến trúc khá đơn giản là dựa trên kiến trúc hướng Web: WOA (Web-oriented archirtecture), được cung cấp gần 30 chức năng, các chức năng được truy nhập trực tiếp thông qua các API hoặc tập lệnh hoặc các tiện ích như URL, cũng

có thể được điều khiển bằng việc sử dụng hệ thống quản lý nội dụng CMS (Content Management System) Các API được xây dựng bằng chuẩn RESTful với đầy đủ các chức năng CRUD (Create, Read, Update, Delete)

Kiến trúc hướng Web (WOA) trong OSF có một số đặc trưng nổi bật như: Dữ liệu được thể hiện giống như dữ liệu liên kết (link data) Các SPARQL và API được thiết

kế theo chuẩn RESTful Kiến trúc tổng thể là mô-đun phân tán và tập trung WOA được xây dựng dưa trên việc tuân thủ đầy đủ về các tiêu chuẩn mở W3C điều này nhằm đảm bảo tính tương tác cao của các trang Web

Trang 29

Trong OSF cung cấp chuẩn về lưu trữ nội dung, quản lý môi trường có thể truy nhập Web, có thể mở rộng (scaleable) và được phân tán Các nội dung trong OSF có thể là các tài liệu (phi cấu trúc), là các metadata (bán cấu trúc), là các trông tin dữ liệu thông thường (có cấu trúc ) và các siêu dữ liệu đa phương tiện Định dạng dữ liệu chung của

dữ liệu trong OSF là RDF

Kiến trúc tổng quát của OSF là kiến trúc 3 tầng: OSF for Drupal, OSF Web Services, OSF Engines

Hình 2-9 Kiến trúc tầng của OSF [14]

Mỗi thành phần được cấu tạo bởi nhiều thành phần khác nhau, các thành phần trong OSF được tổ chức thành các mô-đun thực hiện những nhiệm vụ khác nhau giữa tầng Drupal với tầng giữa sẽ có một lớp đóng vai trò bảo vệ ngăn chặn các truy nhập trái phép vào hệ thống đảm bảo hệ thống an toàn hơn, các dịch vụ muốn được sử dụng cần được xác thực điều này giúp cho OSF đảm bảo được tính tin cậy Với gần 30 dịch

vụ mà không được bảo vệ tốt có thể sẽ bị tấn công đến tầng Engine Thể hiện chi tiết hơn về từng thành phần, kết nối của các thành phần trong OSF được thể hiện ở hình bên dưới

OSF for Drupal/CMS

OSF Web Services

OSF Engines

Trang 30

Hình 2-10 Kiến trúc tầng chi tiết của OSF [15]

Drupal for OSF

Drupal là một framework quản lý nội dung mã nguồn mở và miễn phí được viết bằng ngôn ngữ là PHP được phát hành bởi GNU (General Public License) Các chức năng chính của Drupal là quản lý nội dung CMS, đăng ký, duy trì tài khoản người dùng, quản lý Menu, nguồn cấp RSS, phân loại, tùy chỉnh trang và quản lý hệ thống

Trang 31

CMS (Content management system) là một ứng dụng máy tính nhằm hỗ trợ việc tạo mới và điều chỉnh nội dung số, được hỗ trợ nhiều người sử dụng trong môi trường hợp tác

CMS có rất nhiều tính năng khác nhau được phát hành dựa trên Web, quản lý định dạng, chỉnh sửa lịch sử, quản lý phiên bản, đánh chỉ mục, tìm kiếm và truy xuất Mục đích chính là hỗ trợ tách nội dung và trình bày

Hệ thống quản lý nội dung CMS bao gồm 2 thành phần chính:

 CMA (content management application) là giao diện đầu cuối cho phép người dùng những người không có chuyên môn cao có thể thêm mới, sửa đổi, xóa nội dung khỏi trang Web mà không cần đến canh thiệp của các quản trị viên trang Web

 CDA (Content delivery application) có chức năng biên dịch thông tin và cập nhật trang Web

Drupal là một chuẩn tùy chọn được đóng gói trong OSF, Drupal là một hệ thống được phát triển và hỗ trợ phong phú với hàng ngàn mô-đun mở rộng chức năng và kiến trúc phù hợp với yêu cầu của OSF Quá trình tích hợp OSF với Drupal xảy ra thông qua các module plugin tiêu chuẩn của Drupal và “Drupal connectors” Những mô-đun Drupal OSF là các mô-đun thông thường được viết cụ thể để hoạt động như là một giao diện quản lý cho OSF Hiện nay, OSF đã được tích hợp trong các giao diện người dùng đơn giản như Bootstrap

Những bộ kết nối Drupal (Drupal connectors) là một đặc trưng của OSF, những thư viện được viết riêng cho OSF để mở rộng các mô-đun Drupal hiện tại Các thư viện này cho phép Drupal tương tác trực tiếp với OSF, trong một số trường hợp nó giúp cho việc mở rộng chức năng hiển thị và luôn luôn phù hợp với thiết kế của mô-đun hiện tại Nhằm tận dụng những mô-đun quan trọng và phổ biến của Drupal, có 3 mô-đun quan trọng nhất là Views, Entities và Search API

Nhằm hỗ trợ tương tác với người dùng OSF cho Drupal còn đi kèm với một chuỗi các thành phần ngữ nghĩa khác nhau như: bộ lọc, hiển thị biểu đồ cấu trúc, bảng mẫu, bản đồ, thanh, các quan hệ, nội dung và chú thích cho người xem,… Các công cụ này cho phép thông tin ngữ nghĩa được trình bày dưới dạng biểu đồ, bảng biểu, báo cáo, thư viện ảnh hoặc những bản đồ

Trang 32

Các mô-đun trong OSF và các thực thể OSF sẽ liên kết với tầng Dịch vụ bên dưới thông qua các dịch vụ OSF Web PHP API, trước khi sử dụng chúng sẽ được xác thực quyền hạn bởi Sercurity Services

OSF Services

Một bộ OSF được điều khiển hoặc tương tác thông qua các dịch vụ Web ở tầng trung gian (middleware) và tương tác có thể được diễn ra ở các API riêng, một số được diễn ra ngay trong chương trình

Một Clj-osf là một ngôn ngữ đơn giản Domain Specific Language (DSL) được sử dụng để truy vấn OSF trong của các dịch vụ Web đầu - cuối Mỗi một điểm cuối của dịch vụ Web có chức năng clojure riêng Một chuỗi của chức năng có thể được tạo ra một câu truy vấn OSF Chức năng này được sử dụng để tạo ra bất kỳ truy vấn nào chúng được gửi đến điểm cuối của mộ dịch vụ Web OSF để lấy lại một kết quả Kết quả này có thể được sử dụng để cấu trúc dữ liệu structEDN nội bộ

Một dịch vụ Web OSF PHP API là một thư viện có sẵn cho các nhà phát triển PHP

để giúp họ tạo ra bất kỳ truy vấn nào đến điểm cuối của dịch vụ OSF Web Mỗi điểm cuối có một WebServiceQuery riêng trong lớp API cái được sử dụng để tạo ra câu truy vấn, gửi nó đi đến điểm cuối, lấy lại kết quả Một kết quả có thể được thao tác bằng cách sử dụng Resultset API, có thể được chuyển đổi thành các định dạng khác nhau Những API này cho phép các nhà phát triển hoặc ứng dụng của bên thứ 3 như Drupal gọi hàm trực tiếp, sau đó phát hành các truy vấn HTTP tới cá điểm cuối của dịch vụ OSF Web tương ứng Chúng được bảo mật và các dịch vụ bên ngoài có thể tương tác được, để nâng cao hơn bảo mật thì có thể sử dụng dịch vụ OSF gốc hoặc gọi

Trang 33

Auth Registrar: Group Tạo mới hoặc xóa nhóm(group) Auth Registrar: User Đăng ký một người dùng trong

group

Auth Registrar: WS Đăng ký một điểm cuối Web

service đến OSF Web Services hiện tại

Auth Registrar: Lister Liệt kê tất cả mọi thứ có thể

được đăng ký hoặc xác thực trọng mạng OSF Web Services

cho OSF Web Service hiện tại

Update Cập nhật một OWL đã tồn tại

trong OSF Web Service hiện tại

thể đang tồn tại trong một OSF Web Service

Web Services hiện tại

Update Cập nhật mô tả cho một dataset

đang tồn tại trong một OSF Web Services hiện tại

Web Services hiện tại

Web Services hiện tại

đích

Update Cập nhật thông tin xuất bản của

Trang 34

bản ghi

Delete Xóa bản ghi đang tồn tại trong

một số dataset của một OSF Web Services hiện tại

ở phiên bản trước với bản ghi hiện thời

Delete Cho phép revision của bản ghi

được xóa đi

vision của bản ghi hiện tại

Update Cho phép lifecycle của revision

được thay đổi

Lister Cho phép liệt kê tất cả các

revision tồn tịa của một bản ghi Content Services Search Tìm kiếm đầy đủ văn bản trong

một cấu trúc dữ liệu của OSF Web Services hiện tại

SPARQL Dùng để gửi một câu truy vấn

SPARQL Scones Đặt tên gắn với các tài liệu Converter:commON Chuyển đổi dữ liệu commOn

thành structXML

Converter: irJSON Chuyển đổi dữ liệu irJSON

thành RDF+XML, RDF+N3 hoặc XML hoặc chuyển đổi XML thành

dữ liệu irJSON

Tất cả các dịch vụ Web được hiển thị thông qua các API và điểm cuối của truy vấn SPARQL Mỗi yêu cầu cho một dịch vụ đơn lẻ sẽ trả về một trạng thái HTTP và tùy chọn kết quả của tài liệu Mỗi kết quả tài liệu có thể được dàn xếp theo nhiều cách, có thể được thể hiện dưới sạng RDF hoặc XML

Trang 35

Mỗi một dịch vụ Web của OSF đều có một dịch vụ bảo mật (sercurity) cho phép thay đổi quyền truy nhập và phân quyền Kết quả trả về của các câu truy vấn khác nhau

sẽ phụ thuộc vào quyền truy nhập của câu truy vấn Mỗi dịch vụ Web OSF có một địa chỉ duy nhất cho phép một hoặc nhiều thực thể giao tiếp, chia sẻ với đối tượng khác Mỗi dịch vụ Web OSF được truy nhập hoặc không thông qua thiết kế 3 chiều:User (Người dùng hoặc nhóm); Một dịch vụ Web cá nhân; Dataset (Bộ dữ liệu)

Mỗi người dùng có thể có những quyền truy nhập nhất định liên quan đến việc tạo mới, đọc, xóa thông tin Mỗi cá nhân có thể xem được những thông tin khác nhau tùy thuộc vào quyền truy nhập của cá nhân đó Nhưng người quản lý có thể xem được những thông tin và người dùng không thể xem được Những thủ tục truy nhập dữ liệu

sẽ được thực hiện ở tầng Engines

OSF Engines

Chức năng cơ bản của tầng dịch vụ Web là điều khiển và tương tác với các engine

dữ liệu trong ngăn xếp OSF Chúng sử dụng mô hình dữ liệu RDF phổ biến có nghĩa là tất cả các dịch vụ Web và các hành động đối với dữ liệu chỉ cần lập trình thông qua một hình thức duy nhất Việc chuyển đổi dữ liệu từ các dạng khác nhau sang RDF hết sức đơn giản, các hệ thống thiết kế sử dụng RDF thường có chi phí phát triển và bảo trì thấp hơn và thực hiện nhanh hơn

Đơn vị cơ bản của các engine được sử dụng trong OSF là dataset (tập dữ liệu) Một dataset tham chiếu đến tên của một nhóm bản ghi, tất cả cá đối tượng dữ liệu và các mối quan hệ (thuộc tính, trường) và các chú thích siêu dữ liệu (metadata) được xác định dưới dạng các URI Tất cả các dữ liệu trong OSF có một định danh duy nhất, có thể được truy nhập bằng cách sử dụng giao thức HTTP

Tầng OSF engine đánh chỉ mục và quản lý tất cả các nội dung của OSF và tất cả là các mã nguồn mở Những tài liệu được đánh chỉ mục bởi công cụ Solr để tìm kiếm toàn văn bản, trong khi những thông tin về đặt tính cấu trúc và siêu dữ liệu được lưu trữ trong một kho dữ liệu RDF (RDF database), được gọi là “triple store” (bộ ba lưu trữ) được cung cấp bởi công cụ Virtouso

Trong tầng OSF engine bao gồm PHP/Java Bridge một giao thức mạng dựa trên XML để kết nối với một máy ảo Java, nhằm nâng cao hiệu quả thì các yêu cầu dịch vụ Web được xử lý bởi Memcached, là một bộ nhớ đệm mở rộng, mã nguồn mở, hiệu xuất cao Memcached lưu trữ các khóa cho các khối dữ liệu (strings, objects) phù hợp với mọi lời gọi API

Trang 36

2.3.3 Khả năng ứng dụng của OSF

OSF là một nền tảng hỗ trợ mạnh mẽ cho các nhà phát triển với rất nhiều các đặc trưng (feature)

OSF hỗ trợ mạnh mẽ cho các hệ thống quản lý nội dung CMS bằng cách tích hợp vào một nền tảng mở khác là Drupal OSF được tích hợp vào trong Drupal giúp cho việc tạo mới một hệ thống CMS ngữ nghĩa trở lên đơn giản hơn OSF còn có kiến trúc hướng Web với việc cung cấp các API theo chuẩn RESTful khi có đến gần 30 API cung cấp cho các đầu cuối có thể sử dụng để xây dựng hệ thống, các API này hoạt động độc lập ở tầng Middleware của framework

Dữ liệu là phần quan trọng nhất trong các hệ thống thông tin ngày nay do đó OSF cũng cung cấp rất nhiều những hỗ trợ để nhập liệu dữ liệu, để đánh chỉ mục, để quản lý nội dung của các loại dữ liệu sau: Dữ liệu có cấu trúc (các bảng biểu, cơ sở dữ liệu);

Dữ liệu bán cấu trúc (XML, Json ,…); Dữ liệu phi cấu trúc (văn bản và tài liệu)

Các hệ thống Cloud cũng được hỗ trợ cài đặt tích hợp sẵn OSF để nhanh chóng phát triển, triển khai các hệ thống OSF trong đó Amazon Web service được hỗ trợ nhiều nhất

Các từ vựng và bản thể luận (Ontology) của OSF được sự dụng để tham chiếu, gắn thẻ cho các tài liệu giúp tạo ra các hệ thống ngữ nghĩa, mô tả thông tin của tài liệu Một đặc trưng quan trọng của OSF là khả năng kết hợp với Drupal là một nền tảng

số một cho việc quản lý nội dung của các doanh nghiệp, các chính phủ và các tổ chức giáo dục,…trợ giúp việc tạo trang Web cho nhiều ngôn ngữ, nhiều thiết bị khác nhau,

có khả năng mở rộng (scale) rất tốt OSF cho phép người sử dụng tạo ra các hệ thống quản lý nội dung thông qua các tính năng đặc biệt của OSF: Cho phép tạo các thực thể OSF một cách linh động, quản lý các tập dữ liệu (dataset) bằng cách cung cấp các tính năng cho phép thêm, sửa, xóa, tìm kiếm dữ liệu … Cho phép quản lý các bản thể luận (ontology) với nhiều định dạng khác nhau như OWL, XML, Json, cung cấp khả năng truy vấn toàn văn bản phục vụ việc tìm kiếm Cho phép thêm sửa xóa cập nhật các bản ghi, quản lý các bản ghi về quyền truy cập… Cho phép tìm kiếm với rất nhiều API tìm kiếm và khả năng thực hiện các câu truy vấn Cho phép thể hiện dữ liệu bằng biểu đồ

và đồ thị giúp trực quan hóa dữ liệu Cung cấp rất nhiều dịch vụ Web cho phép tìm kiếm, lọc, quản lý ontology,… Cung cấp nhiều bộ công cụ giúp quản lý dữ liệu, quản

lý ontology, quản lý quyền sử dụng - truy nhập, công cụ xác thực dữ liệu

Từ các đặc trưng trên, OSF có thể được sử dụng trong các ứng dụng như sau:

Trang 37

Ứng dụng tích hợp thông tin doanh nghiệp

Tích hợp thông tin doanh nghiệp EII (Enterprise Information Intergration) là khả năng hỗ trợ thống nhất của dữ liệu và thông tin cho toàn tổ chức EII là mục đính chính của OSF nó khắc phục được các thất bại trong tích hợp thông tin doanh nghiệp trước đây

Tìm kiếm ngữ nghĩa doanh nghiệp

Tìm kiếm là nhu cầu công nghệ thông tin được trích dẫn nhiều nhất của các doanh nghiệp Tìm kiếm ngữ nghĩa tìm cách cải thiện độ chính xác của kết quả tìm kiếm bằng cách hiểu ý định và ý nghĩa ngữ cảnh của các thuật ngữ khi chúng xuất hiện trong bảng

dữ liệu tìm kiếm Tìm kiếm doanh nghiệp là cung cấp tìm kiếm trên toàn bộ nội dung

từ nhiều nguồn doanh nghiệp bao gồm cả tài liệu và cơ sở dữ liệu, các nguồn Web OSF kết hợp chức năng doanh nghiệp và ngữ nghĩa

Các lợi thế của OSF khi tìm kiếm doanh nghiệp: Tìm kiếm dựa trên ý nghĩa của câu truy vấn không phải từ khóa cụ thể, tự động sắp xếp nội dung theo loại, khái niệm hoặc thuộc tính, cho phép khả năng lọc và thu hẹp mạnh mẽ Suy luận, các tìm kiếm cho các kết quả rộng hơn trong ngữ cảnh Cấu hình tìm kiếm, là các cấu hình tìm kiếm có thể

sử dụng lại bao gồm cả khía cạnh và bộ lọc cũng có thể hoạt động như các mẫu tìm kiếm được cung cấp trong bối cảnh tìm kiếm cụ thể Khả năng tăng hoặc điều chỉnh thứ hạng kết quả tìm kiếm trên tất cả các khía cạnh (bộ dữ liệu, thực thể, trường và giá trị) trong kho thông tin Kết quả tìm kiếm khác nhau tùy thuộc vào quyền truy cập và đặc quyền của người tìm kiếm yêu cầu Tìm kiếm và khám phá không gian mạnh mẽ hơn Khả năng thực hiện tìm kiếm dựa trên vị trí địa lý Khả năng chỉ định khác nhau hành vi toán tử AND và OR dựa trên ngữ cảnh tìm kiếm Khả năng dễ dàng hơn để có được số lượng hoặc tự động hoàn thành cho bất kỳ trường tìm kiếm nào Bất kỳ và tất

cả các khía cạnh thông tin do OSF quản lý đều có thể tận dụng các khả năng tìm kiếm này

Trang 38

các loại và kế thừa giống nhau Gắn thẻ văn bản bán tự động được điều khiển các từ vựng theo miền riêng của từng doanh nghiệp Trực quan hóa dữ liệu Các khuôn mẫu (template) rất có ý nghĩa vì dễ dàng tận dụng nền tảng Drupal hoặc Boostrap điều này giúp các nhà phát triển dễ dàng tùy biến giao diện, tăng tốc độ phát triển hệ thống lên

Chính phủ mở

Nền tảng OSF đã được chứng minh ứng dụng cho việc xây dựng các chính phủ mở Chính phủ mở là một hệ thống mà công dân có quyền truy nhập tất cả các tài liệu, thông tin và các thủ tục tố tụng của chính phủ giúp giám sát một cách công khai minh bạch Một chính phủ mở có thể bao gồm các sự kiện hội nghị truyền hình hay việc phát hành các dữ liệu, tài liệu ở quy mô quốc tế, quốc gia, tiểu bang, khu vực, địa phương Việc cung cấp thông tin rộng rãi thông tin của sự kiện giúp việc tham gia các sự kiện của công dân dễ dàng hơn và số lượng người tham dự các sự kiện cũng lớn hơn

Các dữ liệu có ngữ nghĩa về lĩnh vực thương mại, thông tin bầu cử, …có thể kết hợp với nhau để chia sẻ và giúp công dân dễ dàng tiếp cận hơn Đại diện cho chính phủ mở

là dự án NOW (Neighbourhoods of Winnipeg) chia sẻ dữ liệu của các khu vực giám danh với thành phố Winnipeg

Hợp tác phân tán

OSF được thiết kế để hỗ trợ các tính năng phân tán của hệ thống Chúng được thiết

kế với trách nhiệm tạo thành một mạng kết nối với nhiều khu vực, nhiều tổ chức khác nhau Mỗi một OSF được cài đặt đều có một mã định danh URI

OSF có rất nhiều các quyền truy nhập khác nhau và được cấu hình theo từng loại tài khoản, từng mức độ ưu tiên: Truy nhập theo dữ liệu Truy nhập bằng các dịch vụ Web các công cụ này hỗ trợ việc tạo mới, đọc, cập nhật và xóa hay con gọi là CRUD Truy nhập theo vai trò của người dùng như quyền quản trị, quyền chủ sở hữu, quyền của người quản lý …

Sự kết hợp giữa các quyền giúp OSF có thể phân quyền cho các thành phần khác nhau trong một hệ thống phân tán, giúp quản lý và đảm bảo an toàn cho hệ thống

Các chỉ số và khả năng bền vững

Các chỉ số về cộng đồng là các thông tin đo lường về xu hướng của quá khứ và hiện tại nhằm trợ giúp cho các nhà hoạch định cộng đồng đưa ra các quyết định cho tương lai một cách tốt nhất Các chỉ số này có thể được lấy từ các nguồn dữ liệu công cộng

Trang 39

với khả năng tích hợp thông tin mạnh mẽ OSF là một phương tiện hoàn hảo để lưu dữ thông tin cho các ứng dụng này

Với khả năng tích hợp thông tin của dữ liệu phi cấu trúc vào dữ liệu có cấu trúc giúp trực quan hóa các loại thông tin khác nhau OSF là phù hợp với các hệ thống thông tin chỉ báo

Ví dụ như hệ thống thông tin chỉ báo cộng đồng Peg hoàn toàn dựa trên OSF Các chỉ số của Peg được nhóm thành tám nhóm khác nhau: nhu cầu cơ bản, giáo dục và học tập, sức khỏe, xã hội, quản trị, môi trường xây dựng, kinh tế và môi trường tự nhiên Peg cũng cung cấp các API để các bên thứ ba có thể để phân tích và trực quan hóa

2.4 Nền tảng Open Semantic Search (OSS)

2.4.1 Tổng quát về OSS

OSS (Open Semantic Search) là một phần mềm miễn phí cho bộ tìm kiếm, với các tập hợp tài liệu lớn, quản lý đa phương tiện, phân tích văn bản, phân tích tài liệu và khai thác văn bản dự trên nền tảng Apache Solr hoặc tìm kiếm doanh nghiệp mã nguồn

mở và các tiêu chuẩn cho dữ liệu được liên kết, Web ngữ nghĩa và tích hợp dữ liệu liên kết mở

OSS tích hợp nhiều công cụ để dễ dàng tìm kiếm, quản lý, phân tích, khám phá và khai thác văn bản không đồng nhất và các tài liệu lớn, những tin tức với phần mềm miễn phí trên máy chủ

Tìm kiếm đầy đủ văn bản (Fulltext search): dễ dàng tìm kiếm đầy đủ văn bản trong nhiều tài nguyên dữ liệu và nhiều định dạng tệp khác nhau, cung cấp các toán tự tìm kiếm giúp người dùng có thể thực hiện các truy vấn và điều hướng thông qua các kết quả

Tìm kiếm ngữ nghĩa: Dựa trên một từ đồng nghĩa công cụ tìm kiếm đa ngữ nghĩa sẽ tìm được những từ đồng nghĩa, bí danh Sử dụng phương pháp phỏng đoán cho các quy tắc ngữ pháp cũng có thể tìm được những dạng từ khác

Bộ lọc tương tác (tìm kiếm mặt): dễ dàng điều hướng những kết quả tìm được thông qua các bộ tương tác tìm kiếm Tổng quan về các bộ lọc tương tác và dữ liệu như: các tác giả, các tổ chức, người, những địa điểm, thời gian, những sản phầm, những thẻ, hoặc các loại tài liệu

Tìm kiếm thăm dò (Thăm dò, duyệt, xem trước): Thăm dò dữ liệu của người dùng hoặc những kết quả tìm kiếm một cách tổng quát ở nhiều khía cạnh góc độ khác nhau

Trang 40

với tên các thực thể như: đường dẫn tệp, thẻ, người, vị trí, tổ chức, sản phẩm Trong khi đó duyệt sẽ thoải mái điều hướng thông qua các kết quả tìm kiếm hoặc các bộ tài liệu Xem trước các tài liệu như PDF, văn bản, bảng biểu, hình ảnh

Tìm kiếm xã hội và lọc cộng tác: Gắn thẻ của tài liệu bằng các từ khóa (key word), danh mục, tên hoặc những ghi chú văn bản không có trong nội dung gốc để tìm có thể tìm kiếm lại chúng tốt hơn về sau hoặc trong các trường hợp khác có thể để lọc các tài liệu được chú thích hoặc được gắn thẻ bằng các bộ lọc tương tác

Trực quan hóa dữ liệu: Các tài liệu như ngày dưới dạng các biểu đồ xu hướng hoặc phân tích văn bản có thể xem được dưới dạng bản đồ tương tác giúp dễ hình dung về

dữ liệu, lịch sử của dữ liệu

Giám sát: Những cảnh báo, những danh sách theo dõi tin tức mới được thông báo qua các danh sách theo dõi cho những cảnh báo mới từ việc giám sát phương tiện hoặc các luồng hoạt động của những thay đổi hoặc thêm mới tài liệu hoặc tệp chia sẻ: Đăng

ký (subscriber) tìm kiếm và các bộ lọc như RSS-Newsfeed, nhận thông tin thông báo khi có những thay đổi hoặc có những tài liệu mới, tin tức cho những kết quả tìm kiếm tương ứng với những từ khóa, nội dung tìm kiếm hoặc những bộ lọc

Hỗ trợ nhiều định dạng tệp khác nhau như: tài liệu Microsoft Office, Excel, LibreOffice, các bảng, PDF, e-mail, csv, doc, image, jpg, tiff, video và rất nhiều định dạng khác

Hỗ trợ đa nguồn dữ liệu: tệp, thư mục, tệp máy chủ, tệp chia sẻ,cơ sở dữ liệu, website, hệ thống quản lý nội dung…

Tự động nhận dạng văn bản: nhận dạng được các hình ảnh, tài liệu được lưu trữ dưới dạng đồ họa

OSS có công nghệ tìm kiếm thông tin và các tìm kiếm doanh nghiệp nguồn mở dựa trên các tiêu chuẩn mở có thể tương tác

Đáp ứng thiết kế cho nền tảng di động: Tìm kiếm ngữ nghĩa mở không chỉ có thể đáp ứng với các nền tảng như Linux, Windows, Mac hoặc trình duyệt Web Với các thiết kết đáp ứng và chuẩn mở như HTML5 để tìm kiếm với máy tình bảng, điện thoại thông minh, hoặc các thiết bị di động khác

Quản lý siêu dữ liệu (RDF): Cấu trúc của những nghiên cứu, điều tra, điều hướng, những bộ tài liệu, tập hợp siêu dữ liệu hoặc các ghi chú trên Semantic Wiki, Drupal

Ngày đăng: 01/03/2021, 09:43

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Tim Berners-Lee, James Hendler and Ora Lassila, "The Semantic Web," Scientific American, p. 1, 2001.[2] (2018, Dec.) Wikipedia. [Online].https://en.wikipedia.org/wiki/Semantic_Web_Stack Sách, tạp chí
Tiêu đề: The Semantic Web
[8] Fredrik Halvorsen, Semantic Web technology in Human Resource Management., 2008 Sách, tạp chí
Tiêu đề: Semantic Web technology in Human Resource Management
[11] Olegs Verhodubs, "TOWARDS THE ONTOLOGY WEB SEARCH ENGINE," TOWARDS THE ONTOLOGY WEB SEARCH ENGINE Sách, tạp chí
Tiêu đề: TOWARDS THE ONTOLOGY WEB SEARCH ENGINE
[18] Hrishikesh Vijay Karambelkar, Scaling Big Data with Hadoop and Solr., 2015 Sách, tạp chí
Tiêu đề: Scaling Big Data with Hadoop and Solr
[19] Colin Evans, and Jamie Taylor Toby Segaran, Programming the Semantic Web.: 2009 Sách, tạp chí
Tiêu đề: Programming the Semantic Web
[3] WikiPedia. Resource Description Framework. [Online]. https://en.wikipedia.org/wiki/Resource_Description_Framework Link
[4] WikiPedia. RDF Schema. [Online]. https://en.wikipedia.org/wiki/RDF_Schema [5] WikiPedia. SPARQL. [Online]. https://en.wikipedia.org/wiki/SPARQL[6] WikiPedia. Rule Interchange Format. [Online].https://en.wikipedia.org/wiki/Rule_Interchange_Format Link
[7] Natalya F. Noy and Deborah L. McGuinness. Ontology Development 101: A Guide to Creating Your First Ontology. [Online].https://protege.stanford.edu/publications/ontology_development/ontology101-noy-mcguinness.html Link
[9] Wiki. Metadata. [Online]. https://en.wikipedia.org/wiki/Metadata Link
[10] Jan Jannink, Prasenjit Mitra, Gio Wiederhold Stefan Decker. (2000) An Information Food Chain for Advanced Applications on the WWW. [Online].http://infolab.stanford.edu/pub/gio/2000/FoodChain.htm Link
[12] Nova Spivack and Radar Networks. (2007) Nova Spivack. [Online]. http://www.novaspivack.com/technology/web-3-0-the-best-official-definition-imaginable Link
[13] dotNetRDF Project. (2019) dotnetRDF. [Online]. https://www.dotnetrdf.org/ [14] Open Semantic Framework. [Online] Link
[15] OSF Wiki. (2014) Open Semantic Framework. [Online]. http://wiki.opensemanticframework.org/index.php/OSF_Reference_Architecture [16] Open Semantic Search. Open Semantic Search. [Online].https://github.com/opensemanticsearch Link
[21] Open Semantic Framework. Open Semantic Framework. [Online]. http://opensemanticframework.org/overview/ Link
[22] Mastering Django. (2019) The Django Book. [Online]. https://djangobook.com/django-tutorials/django-overview/ Link
[23] Apache Software Foundation. (2017) Apache. [Online]. https://lucene.apache.org/solr/guide/6_6/a-quick-overview.html Link
[20] Dean Allemang - Jim Hendler, Semantic Web for the Working Ontologist Effective Modeling ỉn RDFS and OWL Khác

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w