ỨNG DỤNG R2RML ĐỂ CHUYỂN ĐỔI CƠ SỞ DỮ LIỆU CHO LINKED DATA

20 296 0
ỨNG DỤNG R2RML ĐỂ CHUYỂN ĐỔI CƠ SỞ DỮ LIỆU CHO LINKED DATA

Đ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

ỨNG  DỤNG  R2RML  ĐỂ  CHUYỂN  ĐỔI  CƠ  SỞ  DỮ  LIỆU  CHO   LINKED  DATA     Trần  Nguyên  Phong,  Hoàng  Hữu  Hạnh   Đại  học  Huế   E-­‐‑mail:  tnphong@hueuni.edu.vn,  hhhanh@hueuni.edu.vn   Tóm  tắt:  RDF  (Resource  Description  Framework)  là  chuẩn  mô  tả  dữ  liệu  Web  ngữ  nghĩa,  và   trở  thành  cơ  sở  của  Linked  Data  và  Web  Dữ  liệu  Việc  chuyển  đổi  các  dữ  liệu  trong  các  cơ  sở    liệu  (CSDL)  sang  RDF  được  xem  là  một  trong  những  bước  quan  trọng  cho  việc  xây  dựng   Web  dữ  liệu  R2RML  (Relational  Database  to  RDF  Mapping  Language)  là  một  ngôn  ngữ  để   thể  hiện  ánh  xạ  từ  các  cơ  sở  dữ  liệu  quan  hệ  (RDB)  sang  bộ  dữ  liệu  RDF  Ánh  xạ  này  cung  cấp   khả  năng  xem  dữ  liệu  hiện  có  trong  mô  hình  dữ  liệu  quan  hệ  RDF,  được  thể  hiện  trong  một   cấu  trúc  và  từ  vựng  R2RML  cũng  được  định  nghĩa  là  một  ánh  xạ  trực  tiếp  từ  cơ  sở  dữ  liệu   quan  hệ  sang  RDF  Bài  báo  này  trình  bày  việc  áp  dụng  R2RML  vào  việc  chuyển  đổi  CSDL   quan  hệ  sang  Linked  Data  phục  vụ  cho  Web  Dữ  liệu   Từ  khóa:  Linked  Data,  Web  of  Data,  Semantic  Web,  ontology,  RDF,  OWL     Giới  thiệu   Linked  Data  là  một  ứng  dụng  thực  tiễn  dựa  các  công  nghệ  Web  ngữ  nghĩa  hiện  tại,  nhằm   cung  cấp  một  cơ  chế  xuất  bản  dữ  liệu  có  cấu  trúc  lên  Web,  với  mục  địch  tạo  ra  một  thế  hệ  Web    –  Web  dữ  liệu  (Web  of  Data)  Linked  Data  được  giới  thiệu  nhằm  mở  ra  một  trào  lưu  xuất  bản    liệu  mở,  có  cấu  trúc  và  phá  vỡ  các  ngăn  cách  cho  các  hệ  thống  CSDL  hiện  nay  Từ  sự  khởi  đầu    việc  triển  khai  Web  ngữ  nghĩa  đã  có  sự  quan  tâm  ngày  càng  tăng  trong  việc  lập  ra  các  quan   hệ  dữ  liệu  cho  Web  ngữ  nghĩa  Điều  này  cho  phép  dữ  liệu  được  kết  hợp  với  các  dữ  liệu  khác  trên   Web,  liên  kết  ngữ  nghĩa  trực  tiếp  đến  dữ  liệu  quan  hệ  và  hỗ  trợ  tích  hợp  dữ  liệu  với  các  miền  và   lĩnh  vực  ứng  dụng  rỗng  rãi  hơn     Hiện  nay  phần  lớn  dữ  liệu  trên  Web  đang  được  lưu  trữ  trong  các  hệ  quản  trị  cơ  sở  dữ  liệu   quan  hệ  (RDBMS)  với  các  ưu  điểm  đã  được  chứng  minh  về  các  mặt:  khả  năng  mở  rộng,  lưu  trữ   hiệu  quả,  tối  ưu  hóa  việc  thực  thi  các  câu  truy  vấn,  độ  an  toàn  Tuy  nhiên,  các  cơ  sở  dữ  liệu  quan   hệ  (RDB)  thường  là  tách  biệt  nhau,  không  đồng  nhất  về  lược  đồ,  thuật  ngữ,  định  danh  và  mức  độ   chi  tiết  của  sự  biểu  diễn  dữ  liệu,  và  không  có  tính  chia  sẻ  Do  đó,  người  ta  đã  sử  dụng  kỹ  thuật   để  chuyển  đổi  các  dữ  liệu  trong  RDB  sang  các  dạng  dữ  liêu  thô  hoặc  có  cấu  trúc,  hoặc  giàu  ngữ   nghĩa  như  RDF  và  RDFS  –  là  cơ  sở  của  Linked  Data  Việc  chuyển  dữ  liệu  sang  Linked  Data  nhằm   cung  cấp  một  nền  tảng  cho  việc  tích  hợp  tất  cả  các  nguồn  dữ  liệu  đó  trên  Web  dữ  liệu   R2RML  (Relational  Database  to  RDF  Mapping  Language)  là  một  ngôn  ngữ  để  thể  hiện  ánh   xạ  từ  các  cơ  sở  dữ  liệu  quan  hệ  (RDB)  sang  bộ  dữ  liệu  RDF  Ánh  xạ  này  cung  cấp  khả  năng  xem    liệu  hiện  có  trong  mô  hình  dữ  liệu  quan  hệ  RDF,  được  thể  hiện  trong  một  cấu  trúc  và  từ  vựng   R2RML  cũng  được  định  nghĩa  là  một  ánh  xạ  trực  tiếp  từ  cơ  sở  dữ  liệu  quan  hệ  sang  RDF  Trong    ánh  xạ  trực  tiếp  của  một  CSDL,  cấu  trúc  của  đồ  thị  RDF  là  kết  quả  phản  ánh  trực  tiếp  cấu  trúc    CSDL,  mục  từ  trong  từ  vựng  RDF  phản  ánh  trực  tiếp  tên  của  các  phần  tử  trong  lược  đồ  CSDL   Mỗi  ánh  xạ  R2RML  là  phù  hợp  với  một  lược  đồ  CSDL  và  mục  từ  từ  vựng  Các  đầu  vào  một  ánh   xạ  R2RML  là  một  cơ  sở  dữ  liệu  quan  hệ  phù  hợp  vào  lược  đồ  đó  Đầu  ra  là  một  tập  dữ  liệu  RDF   có  sử  dụng  vị  từ  và  các  kiểu  từ  vựng  Bài  báo  này  trình  bày  việc  áp  dụng  R2RML  vào  việc  chuyển   đổi  CSDL  quan  hệ  sang  Linked  Data  phục  vụ  cho  Web  Dữ  liệu,  bên  cạnh  đó,  cũng  trình  bày  các   hướng  tiếp  cận  liên  quan     Chuyển  đổi  RDB  sang  RDF   2.1   Khung  tham  khảo  cho  chuyển  đổi  RDB  sang  RDF  và  RDFS   2.1.1   Tạo  các  ánh  xạ    Chúng  ta  có  thể  phân  loại  các  phương  pháp  được  sử  dụng  để  tạo  ra  các  ánh  xạ  giữa  RDB    RDF  thành  hai  loại:     a)   Ánh  xạ  tự  động:     Một  tập  hợp  các  ánh  xạ  giữa  RDB  và  RDF  cụ  thể  là:   i)   Một  mẫu  tin  RDB  là  một  nút  của  RDF;   ii)   Tên  cột  của  một  bảng  RDB  là  một  vị  từ  của  RDF;   iii)   Một  ô  của  bảng  RDB  là  một  giá  trị  của  RDF   Nhiều  hệ  thống  sử  dụng  các  ánh  xạ  tự  động  để  ánh  xạ  giữa  RDB  và  RDF  với  một  bảng  của   RDB  như  một  lớp  các  nút  của  RDF  và  các  tên  cột  của  RDB  như  là  vị  từ  của  RDF     Mặc  dù  các  ánh  xạ  tự  động  tạo  ra  thường  không  nắm  bắt  được  ngữ  nghĩa  được  yêu  cầu    nhiều  ứng  dụng,  nhưng  những  ánh  xạ  này  có  thể  là  một  điểm  khởi  đầu  để  tạo  ra  các  tuỳ  chọn   hữu  ích  hơn  Phương  pháp  này  cũng  cho  phép  các  ứng  dụng  Web  ngữ  nghĩa  truy  vấn  các  nguồn   RDB,  nơi  mà  ứng  dụng  ngữ  nghĩa  được  quy  định  về  ánh  xạ  RDB  Phương  pháp  này  còn  được  gọi    "ʺvùng  ánh  xạ  ontology"ʺ   b)   Ngữ  nghĩa  miền  -­‐‑  định  hướng  ánh  xạ:     Cách  tiếp  cận  thứ  hai  để  tạo  ra  ánh  xạ  từ  RDB  sang  RDF  bằng  cách  kết  hợp  ngữ  nghĩa  miền   ẩn  hoặc  không  ẩn  trong  tất  cả  lược  đồ  RDB  Các  mô  hình  về  ngữ  nghĩa  miền  thường  được  mô   hình  hóa  như  là  một  miền  ontology  Trong  thư  viện  RDF,  cho  phép  các  ứng  dụng  phần  mềm  tận   dụng  lợi  thế  "ʺthông  tin  thu  được"ʺ  và  thực  hiện  các  truy  vấn  liên  kết  các  thực  thể  với  nhau[4]   Ngoài  ra,  một  ánh  xạ  được  tạo  ra  bằng  cách  sử  dụng  ngữ  nghĩa  miền  nhằm  làm  giảm  việc   tạo  ra  bộ  dữ  liệu  dư  thừa  hoặc  không  liên  quan  Byrne[4]  thảo  luận  về  việc  giảm  kích  thước  của    tập  dữ  liệu  RDF  khoảng  2,8  triệu  bộ    thông  qua  việc  sử  dụng  ngữ  nghĩa  theo  định  hướng  của   tên  miền  ánh  xạ  từ  RDB  sang  RDF   Phương  pháp  này  còn  được  gọi  là  "ʺmiền  ánh  xạ  ontology"ʺ  và  quá  trình  này  giống  như  một   kỹ   thuật   ontologies   công   cộng   nơi   mà       liệu   chuyển   đổi     định   nghĩa     lược   đồ   jos.hueuni.edu.vn                                                                                                                                                                                                                          Tập               X;  Số  Y;  Năm  2015 ontologies  Nhiều  công  cụ  ánh  xạ  như  D2RQ[4]  cho  phép  người  sử  dụng  tạo  ra  các  quy  tắc  tạo   ánh  xạ  tùy  ý  ngoài  các  quy  tắc  tạo  ra  tự  động   2.1.2   Biểu  diễn  các  ánh  xạ   Các  ánh  xạ  giữa  RDB  và  RDF  có  thể  được  biểu  diễn  như  là  quy  tắc  XPath  trong  một  kiểu   XSLT,  một  ngôn  ngữ  khai  báo  dựa  trên  XML  như  R2O  [4]  hoặc  là  "ʺmô  hình  Quad"ʺ  được  định   nghĩa  trong  Virtuoso  [4]  lược  đồ  siêu  ngôn  ngữ  Các  ánh  xạ,  nếu  chúng  được  tạo  ra  bởi  các  miền    tham  khảo  một  miền  Ontology  có  thể  có  ứng  dụng  rộng  rãi  Khuyến  khích  sử  dụng  lại  các   ánh  xạ  để  dễ  dàng  tiếp  cận  cộng  đồng  rộng  lớn  hơn  Do  đó,  chúng  tôi  xem  xét  khả  năng  tiếp  cận    ánh  xạ  giữa  RDB  và  RDF   2.1.3   Cài  đặt  truy  vấn   Truy  vấn  trong  các  hệ  thống  tạo  ánh  xạ  từ  RDB  sang  RDF  hoặc  trong  SPARQL  được  thực    dựa  vào  RDF,  hoặc  truy  vấn  SPARQL  có  thể  được  chuyển  đổi  thành  một  hoặc  nhiều  truy   vấn  SQL  được  thực  hiện  dựa  vào  RDB  Cyganiak  [4]  đã  thảo  luận  việc  chuyển  đổi  đại  số  quan  hệ    SPARQL  và  tiếp  tục  trong  SQL  Toán  tử  biểu  diễn  như  "ʺSELECTION"ʺ  và  "ʺINNER  JOIN"ʺ  được   thực  hiện  trong  RDF  và  tương  quan  "ʺđại  số  quan  hệ  RDF"ʺ  đến  SQL   2.1.4   Miền  ứng  dụng   "ʺTạo  ánh  xạ"ʺ,  một  khía  cạnh  quan  trọng  của  việc  tạo  ánh  xạ  từ  RDB  sang  RDF,  là  sự  kết   hợp  của  miền  ngữ  nghĩa  trong  kết  quả  của  RDF  Do  đó,  danh  sách  các  miền  ứng  dụng  của  công   trình  được  xem  xét  trong  cuộc  khảo  sát  này  (công  cụ  ánh  xạ  không  phải  là  tên  miền  cụ  thể)   2.1.5   Tích  hợp  dữ  liệu   Mô  hình  RDF  đại  diện  thông  qua  việc  sử  dụng  của  URI  và  các  mối  quan  hệ  của  mô  hình    cách  rõ  ràng  giữa  các  thực  thể  làm  cho  nó  dễ  dàng  hơn  để  tích  hợp  dữ  liệu  có  hiệu  quả  Điều   quan  trọng  là  cần  lưu  ý  rằng  RDF  không  tự  động  giải  quyết  nhiều  việc  không  đồng  nhất,  chẳng   hạn  như  không  đồng  nhất  về  cấu  trúc,  cú  pháp  và  ngữ  nghĩa,  được  mô  tả  trong  dữ  liệu/thông  tin   tích  hợp  Tuy  nhiên,  việc  sử  dụng  các  miền  ontology  dựa  theo  các  quy  tắc  suy  luận  mà  người   dùng  định  nghĩa  để  đối  chiếu  tính  không  đồng  nhất  giữa  các  nguồn  RDB  là  một  cách  tiếp  cận  có   hiệu  quả  cho  việc  tạo  ra  một  hoặc  một  tập  "ʺtương  thích"ʺ  của  RDF  Do  đó,  số  liệu  đánh  giá  các   phương  pháp  tiếp  cận  tạo  ánh  xạ  khác  nhau  liên  quan  đến  tích  hợp  dữ  liệu   2.2   Các  tiếp  cận  chuyển  lược  đồ  RDB  sang  RDF  và  RDFS   Trong  phần  này,  chúng  tôi  phân  loại  các  công  việc  khảo  sát  thành  ba  lớp  lớn  cụ  thể  là:   −   Các  dự  án  nhằm  chứng  minh  các  khái  niệm:  Dự  án  xem  xét  trong  phần  này  là  khám  phá   cách  tiếp  cận  cụ  thể  để  chuyển  đổi  ánh  xạ  từ  RDB  sang  RDF  với  một  mẫu  tin  hoặc  chứng  minh   thực  hiện  khái  niệm  Công  việc  có  thể  có  hoặc  không  có,  dẫn  đến  việc  phát  triển  một  công  cụ/ứng   dụng  chung   −   Các  dự  án  ứng  dụng  theo  miền:  Nhiều  dự  án  được  khảo  sát  đã  thúc  đẩy  bởi  yêu  cầu  ứng   dụng  thế  giới  thực  và  đã  sử  dụng  ngữ  nghĩa  miền  dựa  vào  ánh  xạ  tùy  chọn,  công  cụ  tạo  ánh  xạ   dùng  chung  hoặc  kết  hợp  cả  hai   −   Công  cụ/ứng  dụng:  Các  dự  án  khảo  sát  bao  gồm  D2RQ,  R2O,  Virtuoso,  Triplify  và  các   công  cụ  Dartgrid  đã  được  đưa  ra  để  ánh  xạ  RDB  sang  RDF   Hình 1: Mô hình cấu trúc tham chiếu cho việc chuyển đổi RDB sang RDF   2.2.1   Các  công  cụ  và  ứng  dụng   Virtuoso  RDF  View  [4]  sử  dụng  phương  pháp  bảng  thành  lớp  (lớp  RDFS),  cột  thành  vị  từ    đưa  vào  xem  xét  trường  hợp  đặc  biệt  chẳng  hạn  như  việc  một  cột  là  một  phần  của  khóa  chính    khóa  ngoại  Các  mối  quan  hệ  khóa  ngoại  giữa  các  bảng  được  thực  hiện  rõ  ràng  giữa  các  lớp   có  liên  quan  để  đại  diện  cho  các  bảng  Các  dữ  liệu  RDB  được  biểu  diễn  là  đồ  thị  Virtuoso  RDF   mà  không  tạo  vật  lý  của  bộ  dữ  liệu  RDF  Virtuoso  RDF  View  được  tạo  thành  từ  "ʺmô  hình  ánh  xạ   Quad"ʺ  mà  các  ánh  xạ  được  định  nghĩa  từ  một  tập  hợp  bộ  ba  các  cột  của  RDB  Mô  hình  ánh  xạ   quad  được  thể  hiện  không  những  bằng  ngôn  ngữ  siêu  lược  đồ  Virtuoso  mà  còn  hỗ  trợ  SPARQL   –  kiểu  ghi  chú   Công  cụ  D2RQ  [4]  cung  cấp  một  môi  trường  tích  hợp  với  nhiều  tùy  chọn  để  truy  cập  dữ   liệu  quan  hệ  bao  gồm  cả  "ʺRDF  dumps"ʺ,  truy  cập  dựa  trên  Jena  và  Sesame  API  (gọi  là  API  được   viết  lại  từ  SQL),  và  SPARQL  trên  D2RQ  Server  Các  ánh  xạ  có  thể  được  xác  định  bởi  người  dùng,    đó  cho  phép  kết  hợp  ngữ  nghĩa  miền  trong  quá  trình  ánh  xạ,  mặc  dù  có  một  số  hạn  chế  Các   ánh  xạ  được  thể  hiện  trong  một  "ʺkhai  báo  ngôn  ngữ  ánh  xạ"ʺ  Hiệu  suất  khác  nhau  tùy  thuộc  vào   jos.hueuni.edu.vn                                                                                                                                                                                                                          Tập               X;  Số  Y;  Năm  2015 phương  pháp  tiếp  cận  và  được  thực  hiện  khá  tốt  cho  các  mô  hình  bộ  ba  cơ  bản  nhưng  các  chức    của  SPARQL  như  FILTER,  LIMIT  được  sử  dụng   Công  cụ  Triplify  [4]  là  một  phương  pháp  đơn  giản  để  chuyển  RDF  và  dữ  liệu  liên  kết  từ  cơ   sở  dữ  liệu  quan  hệ  Triplify  dựa  trên  ánh  xạ  các  yêu  cầu  HTTP-­‐‑   URI  vào  các  truy  vấn  cơ  sở  dữ   liệu  quan  hệ  được  thể  hiện  trong  SQL  với  một  số  bổ  sung  Triplify  trình  bày  việc  chuyển  đổi  các   mối  quan  hệ  kết  quả  vào  RDF  và  công  bố  các  dữ  liệu  RDF  trên  web  theo  trình  tự  khác  nhau,  đặc   biệt  là  dữ  liệu  liên  kết  Triplify  được  bổ  sung  bởi  một  thư  viện  các  cấu  hình  cho  lược  đồ  quan  hệ   chung  và  một  REST  cho  phép  nguồn  dữ  liệu  đăng  ký  Kiến  trúc  gọn  nhẹ  của  Triplify  là  có  thể  sử   dụng  để  xuất  bản  bộ  dữ  liệu  rất  lớn,  chẳng  hạn  như  160GB  dữ  liệu  từ  dự  án  OpenStreetMap   Công  cụ  R2O  [4]  là  một  ngôn  ngữ  khai  báo  dựa  trên  XML  để  thể  hiện  ánh  xạ  giữa  các  yếu   tố  RDB  và  ontology  Ánh  xạ  R2O  có  thể  được  sử  dụng  để  "ʺphát  hiện  mâu  thuẫn  và  không  rõ  ràng"ʺ    định  nghĩa  bản  đồ  Công  cụ  ODEMapster  đã  sử  dụng  một  tài  liệu  R2O  hoặc  là  thực  hiện   việc  chuyển  đổi  để  đáp  ứng  với  một  truy  vấn  hoặc  trong  một  hàng  loạt  các  chế  độ  để  tạo  ra  một   biến  RDF   RDBToOnto  [4]  là  một  công  cụ  có  cấu  hình  cao  giúp  giảm  bớt  việc  thiết  kế  và  thực  hiện  các   phương  pháp  để  đạt  được  ontology  từ  cơ  sở  dữ  liệu  quan  hệ  Nó  cũng  là  một  công  cụ  định  hướng   người  dùng  trong  quá  trình  chuyển  đổi  cơ  sở  dữ  liệu  đầu  vào  để  tạo  ra  các  ontology  Thiết  lập    thông  số  và  kiểm  soát  quá  trình  được  thực  hiện  thông  qua  một  giao  diện  chuyên  dụng  chính   thức     Ngôn  ngữ  chuyển  đổi  R2RML   3.1   Giới  thiệu  R2RML   R2RML  (Relational  Database  to  Resource  Description  Frameworks  of  mapping  language)    một  ngôn  ngữ  để  thể  hiện  ánh  xạ  từ  các  cơ  sở  dữ  liệu  quan  hệ  sang  bộ  dữ  liệu  RDF  Ánh  xạ    cung  cấp  khả  năng  xem  dữ  liệu  hiện  có  trong  mô  hình  dữ  liệu  quan  hệ  RDF,  được  thể  hiện    một  cấu  trúc  và  từ  vựng  [10]   R2RML  cũng  được  định  nghĩa  là  một  ánh  xạ  trực  tiếp  từ  cơ  sở  dữ  liệu  quan  hệ  sang  RDF   Trong  các  ánh  xạ  trực  tiếp  của  một  cơ  sở  dữ  liệu,  cấu  trúc  của  đồ  thị  RDF  là  kết  quả  phản  ánh   trực  tiếp  cấu  trúc  của  cơ  sở  dữ  liệu,  mục  từ  trong  từ  vựng  RDF  phản  ánh  trực  tiếp  tên  của  các   phần  tử  trong  lược  đồ  cơ  sở  dữ  liệu  Mỗi  ánh  xạ  R2RML  là  phù  hợp  với  một  lược  đồ  cơ  sở  dữ  liệu    mục  từ  từ  vựng  Các  đầu  vào  một  ánh  xạ  R2RML  là  một  cơ  sở  dữ  liệu  quan  hệ  phù  hợp  vào   lược  đồ  đó  Đầu  ra  là  một  tập  dữ  liệu  RDF  có  sử  dụng  vị  từ  và  các  kiểu  từ  vựng  Ánh  xạ  R2RML    thể  hiện  dưới  dạng  đồ  thị  RDF  và  cú  pháp  Turtle   Bảng  1:  Bảng  qui  định  không  gian  tên:   Prefix   IRI   rr:   http://www.w3.org/ns/r2rml#   rdf:   http://www.w3.org/1999/02/22-­‐‑rdf-­‐‑syntax-­‐‑ns#   rdfs:   http://www.w3.org/2000/01/rdf-­‐‑schema#   xsd:   http://www.w3.org/2001/01/XMLSchema#   ex:   http://example.com/ns#   3.2   Các  thành  phần  R2RML   3.2.1   Một  số  thuật  ngữ  (Terminology)     Các  thuật  ngữ  dưới  đây  được  định  nghĩa  trong  khái  niệm  và  cú  pháp  của  RDF  và  được   sử  dụng  trong  R2RML  [10]:   •   RDF  graph:  là  một  tập  bộ  ba  của  RDF   •    RDF  triple:  là  bộ  ba  của  RDF  (chủ  thể,  vị  từ,  đối  tượng)   •   Literal:  được  sử  dụng  để  xáx  định  số  hoặc  ngày  tháng  bằng  cách  biểu  diễn  từ  vựng   Nó  là  một  đối  tượng   •   typed  literal:  là  một  mẫu  từ  vựng  hoặc  tham  chiếu  URI  của  RDF   •   language  tag:  thẻ  ngôn  ngữ   •   datatype  IRI:  kiểu  dữ  liệu  của  IRI   •   blank  node  (nút  trống):  là  một  nút  không  phải  là  một  tham  chiếu  URI  hoặc  một  chữ   Một  nút  trống  là  một  nút  duy  nhất  có  thể  được  sử  dụng  một  hoặc  nhiều  câu  lệnh    RDF,  nhưng  không  có  tên  bên  trong   •   blank  node  identifier:  định  danh  nút  trống  để  phân  biệt  với  tất  cả  các  URI  và  literals   3.2.2   Các  mục  từ  trong  bộ  từ  vựng  R2RML   a   Lớp:   Bảng  2:  Các  lớp  trong  R2RML   Lớp   rr:BaseTableOrView   Diễn  tả   SQL  dựa  vào  bảng  hoặc   khung  nhìn   rr:LogicalTable   Bảng  logic   rr:ObjectMap   Ánh  xạ  đối  tượng   rr:PredicateMap   Ánh  xạ  vị  từ   rr:PredicateObjectMap   Ánh  xạ  vị  từ  -­‐‑  đối  tượng   rr:R2RMLView   Khung  nhìn  R2RML   rr:RefObjectMap   Ánh  xạ  đối  tượng  tham   chiếu     rr:SubjectMap   Ánh  xạ  chủ  thể   rr:TermMap   Ánh  xạ  mục  từ   Điều  kiện  tối  thiểu   Thuộc  tính  rr:tableName   rr:BaseTableOrView  hoặc  rr:R2RMLView   rr:TermMap  là  một  giá  trị  thuộc  tính  rr:ob-­‐‑ jectMap   rr:TermMap       giá   trị     thuộc   tính   rr:predicateMap   rr:predicate  và  rr:predicateMap  có  ít  nhất    rr:object  và  rr:objectMap   rr:sqlQuery  là  một  thuộc  tính   rr:parentTriplesMap  là  một  thuộc  tính   rr:TermMap       giá   trị     thuộc   tính    rr:subjectMap     rr:constant,  rr:column,  rr:template   jos.hueuni.edu.vn                                                                                                                                                                                                                          Tập               X;  Số  Y;  Năm  2015 b   Thuộc  tính:   Bảng  3:  Các  thuộc  tính  trong  R2RML   Thuộc  tính   Mô  tả   Bối  cảnh   rr:child   Cột  child     Điều  kiện  ràng  buộc   rr:class   Lớp  IRI   Ánh  xạ  đối  tượng   rr:column   Tên  cột   cột  giá  trị  thuật  ngữ  ánh  xạ   rr:datatype   Xác  định  kiểu  dữ  liệu   Thuật  ngữ  ánh  xạ   rr:constant   Giá  trị  hằng  số   Thuật  ngữ  ánh  xạ  giá  trị  liên  tục   rr:joinCondition   Điều  kiện  ràng  buộc   Tham  chiếu  ánh  xạ  đối  tượng   rr:logicalTable   Bảng  logic   Ánh  xạ  bộ  ba   rr:objectMap   Ánh  xạ  đối  tượng,     Ánh  xạ  vị  từ  -­‐‑  đối  tượng   rr:parent   Cột  parent     Điều  kiện  ràng  buộc   rr:parentTriplesMap   Ánh  xạ    bộ  ba  parent     Ánh  xạ  đối  tượng  tham  chiếu   rr:predicateMap   Ánh  xạ  vị  từ     rr:predicateObjectMap   Ánh  xạ  đối  tượng  –  vị  từ   Ánh  xạ  bộ  ba   rr:sqlQuery   Truy  vấn  SQL   Khung  nhìn  R2RML     rr:sqlVersion   Định  danh  phiên  bản  SQL     Khung  nhìn  R2RML     rr:subject   Thuộc  tính  hằng  số   rr:subjectMap   Ánh  xạ  đối  tượng     Ánh  xạ  bộ  ba   Chuyển   đổi     sở     liệu   quan   hệ   sang   RDF     RDFS   với     ngôn   ngữ   R2RML   4.1   Các  bộ  xử  lý  và  ánh  xạ  R2RML   Trong  Hình  2,  Ánh  xạ  R2RML  định  nghĩa  một  ánh  xạ  từ  một  cơ  sở  dữ  liệu  quan  hệ  sang   RDF  Nó  là  một  cấu  trúc  bao  gồm  một  hoặc  nhiều  ánh  xạ  bộ  ba[10]  Bộ  xử  lý  R2RML  là  một  hệ   thống,  một  ánh  xạ  R2RML  và  một  cơ  sở  dữ  liệu  đầu  vào  nhằm  cung  cấp  truy  cập  cho  các  dữ  liệu   đầu  ra  Đầu  vào  cho  một  ánh  xạ  R2RML  là  cơ  sở  dữ  liệu   Phương   pháp   truy   cập   vào       liệu   đầu       cung   cấp         xử   lý   R2RML   tương  ứng  Một  bộ  xử  lý  R2RML  có  thể  cụ  thể  hóa  các  dữ  liệu  đầu  ra  vào  cho  một  tập  tin,  hoặc   cung  cấp  truy  cập  ảo  thông  qua  một  giao  diện  để  truy  vấn  cơ  sở  dữ  liệu  đầu  vào,  hoặc  cung  cấp   bất  kỳ  phương  tiện  cho  các  dữ  liệu  đầu  ra     Hình  2:  Chuyển  đổi  cơ  sở  dữ  liệu  quan  hệ  sang  RDF     Một  bộ  xử  lý  R2RML  cũng  có  quyền  truy  cập  vào  môi  trường  thực  thi  bao  gồm:   •   Kết  nối  SQL  vào  cơ  sở  dữ  liệu  đầu  vào,   •   Sử  dụng  IRI  trong  việc  giải  quyết  các  quan  hệ  được  tạo  ra  bởi  các  ánh  xạ  R2RML   Dữ  liệu  R2RML  là  một  hệ  thống  đầu  vào  của  một  ánh  xạ  R2RML,  IRI  và  SQL,  và  sẽ  kết  nối   đến  một  cơ  sở  dữ  liệu  đầu  vào  đồng  thời  kiểm  tra  sự  xuất  hiện  của  các  lỗi  dữ  liệu  Khi  kiểm  tra    sở  dữ  liệu  đầu  vào,  phải  báo  cáo  bất  kỳ  lỗi  nào  mà  dữ  liệu  được  đưa  ra  trong  quá  trình  tạo  ra    dữ  liệu  đầu  ra   4.1.1   Ánh  xạ  đồ  thị  và  từ  vựng  R2RML   Một  ánh  xạ  R2RML  được  biểu  diễn  như  một  đồ  thị  RDF  Nói  cách  khác,  RDF  được  sử  dụng   không  chỉ  là  mô  hình  dữ  liệu  của  ánh  xạ,  mà  còn  là  một  hình  thức  đại  diện  cho  ánh  xạ  R2RML    nó  [10]   Một  đồ  thị  RDF  đại  diện  cho  một  ánh  xạ  R2RML  được  gọi  là  một  đồ  thị  ánh  xạ  R2RML  Từ   vựng  R2RML  là  tập  hợp  các  IRIs  được  bắt  đầu  với   rr:namespace      IRI:http://www.w3.org/ns/r2rml  #   Một  đồ  thị  ánh  xạ  R2RML  bao  gồm:   −   Không   nên   bắt   đầu   IRI   với   rr:namespace   mà   không     định   nghĩa     từ   vựng   R2RML   −   Không  nên  sử  dụng  IRI  từ  từ  vựng  R2RML     −   Nên  tạo  ánh  xạ  các  thành  phần  được  tham  chiếu  bởi  một  số  ánh  xạ  bộ  ba   −   Có  thể  thêm  bộ  ba  có  điều  kiện  không  thuộc  từ  vựng  R2RML     −   Có  thể  gán  IRI  hoặc  định  danh  nút  rỗng  cho  bất  kỳ  thành  phần  ánh  xạ  được  phép  tái   sử  dụng  từ  các  thành  phần  ánh  xạ  trong  đồ  thị  ánh  xạ     Từ  vựng  R2RML  bao  gồm  các  lớp  R2RML  sau  đây  :   −   rr:TriplesMap  là  lớp  của    ánh  xạ  bộ  ba   −   rr:TermMap  là  lớp  của  ánh  xạ  thuật  ngữ   Nó  có  bốn  lớp  con:   −   rr:SubjectMap  là  lớp  của  ánh  xạ  chủ  thể   jos.hueuni.edu.vn                                                                                                                                                                                                                          Tập               X;  Số  Y;  Năm  2015 −   rr:PredicateMap  là  lớp  của  ánh  xạ  vị  từ     −   rr:ObjectMap  là  lớp  của  ánh  xạ  đối  tượng   −   rr:GraphMap  là  lớp  của  ánh  xạ  đồ  thị   −   rr:PredicateObjectMap  là  lớp  ánh  xạ  vị  từ  -­‐‑  đối  tượng   −   rr:RefObjectMap  là  lớp  của  ánh  xạ  đối  tượng  tham  chiếu   −   rr:Join  là  lớp  của  điều  kiện  ràng  buộc   4.1.2   Ánh  xạ  mặc  định   Một  bộ  xử  lý  R2RML  có  thể  bao  gồm  các  ánh  xạ  mặc  định  R2RML  Đây  là  một  cơ  sở  để   xem  xét  lược  đồ  của  cơ  sở  dữ  liệu  đầu  vào  và  tạo  ra  một  ánh  xạ  R2RML  dưới  hình  thức  một  tài   liệu  ánh  xạ  R2RML  Một  ánh  xạ  như  vậy  được  gọi  là  một  ánh  xạ  mặc  định  Ánh  xạ  mặc  định  coi   đầu  ra  của  nó  là  đồ  thị  trực  tiếp  tương  ứng  với  cơ  sở  dữ  liệu  đầu  vào   4.2   Định  nghĩa  các  bảng  logic     Hình  3:  Thuộc  tính  của  các  bảng  logic   Bảng  logic  là  kết  quả  của  một  truy  vấn  SQL  được  ánh  xạ  tới  bộ  ba  của  RDF  Một  bảng   logic  là  một  trong  hai  trường  hợp  sau:   Ÿ   Bảng  SQL  hoặc  khung  nhìn,  hoặc   Ÿ   Khung  nhìn  R2RML   Bảng  logic  là  một  truy  vấn  SQL  hiệu  quả  nếu  thực  hiện  qua  kết  nối  SQL,  sản  phẩm  là  kết    các  nội  dung  của  bảng  logic  Dòng  của  bảng  logic  là  dòng  trong  một  bảng  logic.Tên  cột  là   tên  của  một  cột  trong  một  bảng  logic     4.2.1   SQL  dựa  vào  các  bảng  và  khung  nhìn  (rr:tableName)    SQL  dựa  vào  bảng  hoặc  khung  nhìn  là  một  bảng  logic  có  chứa  dữ  liệu  SQL  từ  một  bảng    khung  nhìn  trong  cơ  sở  dữ  liệu  đầu  vào  Nó  được  đại  diện  bởi  nguồn  tài  nguyên  có  chính   xác  một  thuộc  tính  rr:tableName   Giá  trị  của  rr:tableName  xác  định  tên  của  bảng  hoặc  khung  nhìn  Giá  trị  của  nó  phải  là  tên    lược  đồ  có  điều  kiện  cho  bảng  hoặc  khung  nhìn  hiện  có  trong  cơ  sở  dữ  liệu  đầu  vào   Các  truy  vấn  SQL  có  hiệu  quả  dựa  vào  bảng  hoặc  khung  nhìn  là:    SELECT  *  FROM  {ta-­‐‑ ble},  với  {table}  là  tên  bảng  hoặc  khung  nhìn   4.2.2   Khung  nhìn  R2RML  (rr:sqlQuery,  rr:sqlVersion)   Khung  nhìn  R2RML  là  một  bảng  logic  có  nội  dung  là  kết  quả  của  việc  thực  hiện  truy  vấn   SQL  cho  cơ  sở  dữ  liệu  đầu  vào  Nó  được  đại  diện  bởi  nguồn  tài  nguyên  có  chính  xác  một  thuộc   tính  rr:  sqlquery   R2RML  đôi  khi  đòi  hỏi  phải  chuyển  đổi  dữ  liệu,  tính  toán,  hoặc  lọc  trước  khi  tạo  ra  từ  cơ   sở  dữ  liệu  Điều  này  có  thể  đạt  được  bằng  cách  xác  định  SQL  trong  cơ  sở  dữ  liệu  đầu  vào  và  đề   cập  đến  nó  với  rr:tableName     Câu  lệnh  truy  vấn  SELECT  trong  ngôn  ngữ  SQL  có  thể  được  thực  hiện  trên  cơ  sở  dữ  liệu   đầu  vào  Trong  câu  lệnh  SQL  kết  thúc  câu  lệnh  truy  vấn  SELECT  là  dấu  chấm  phẩy  Kết  quả  của   việc  thực  hiện  truy  vấn  phải  không  có  tên  cột  trùng  nhau  Đối  tượng  tham  chiếu  cơ  sở  dữ  liệu    các  truy  vấn  SQL  có  thể  có  đủ  điều  kiện  với  tên  danh  mục  hoặc  tên  lược  đồ   Một  khung  nhìn  R2RML  có  thể  có  một  hoặc  nhiều  phiên  bản  nhận  dạng  SQL  Phải  có  IRIs   hợp  lệ  và  được  đại  diện  như  là  giá  trị  thuộc  tính  của  rr:sqlVersion  Định  danh  phiên  bản  SQL  sau    chỉ  ra  rằng  các  truy  vấn  SQL  phù  hợp  với  Core  SQL  2008   http://www.w3.org/ns/r2rml  #  SQL2008   Hiệu  quả  câu  lệnh  truy  vấn  SQL  của  khung  nhìn  R2RML  là  giá  trị  thuộc  tính  của  rr:sqlquery   Ví  dụ:  Một  bảng  logic  của  khung  nhìn  R2RML  phù  hợp  với  Core  SQL  2008   [] rr:sqlQuery """ Select ('PHONGBAN' || Mapb) AS PHONGID, Mapb, Tenpb from PHONGBAN """; rr:sqlVersion rr:SQL2008 4.2.3   Ánh  xạ  các  bảng  logic  sang  RDF  với  ánh  xạ  bộ  ba   Một  ánh  xạ  bộ  ba  quy  định  một  quy  tắc  chuyển  đổi  mỗi  hàng  của  một  bảng  logic  có  thể   không  có  hoặc  có  nhiều  bộ  ba  RDF   Các  bộ  ba  RDF  tạo  ra  từ  một  hàng  trong  bảng  logic  được  chia  sẽ  tất  cả  các  chủ  thể   Một   ánh   xạ     ba     đại   diện       tham   chiếu   từ     tài   nguyên     đến     tài   nguyên  khác  như  sau:   −   Phải  có  chính  xác  một  thuộc  tính  rr:logicalTable  Giá  trị  của  nó  là  một  bảng  logic  mà  kết    truy  vấn  SQL  được  ánh  xạ  tới  bộ  ba   10 jos.hueuni.edu.vn                                                                                                                                                                                                                          Tập               X;  Số  Y;  Năm  2015   Hình  4:  Thuộc  tính  của  ánh  xạ  bộ  ba   −   Phải  có  chính  xác  một  ánh  xạ  chủ  thể  được  quy  định  cụ  thể  để  tạo  ra  một  chủ  thể  cho    hàng  của  bảng  logic  Nó  có  thể  được  xác  định  theo  hai  cách:    Sử  dụng  thuộc  tính  rr:subjectMap  có  giá  trị  chủ  thể,  hoặc    Sử  dụng  rr:Subject   −   Có  thể  không  có  hoặc  có  nhiều  thuộc  tính  rr:predicateObjectMap  mà  giá  trị  phải  có  ánh   xạ  vị  từ  -­‐‑  đối  tượng  Cặp  ánh  xạ  vị  từ  và  đối  tượng  cùng  với  các  đối  tượng  được  tạo  ra    các  ánh  xạ  chủ  thể  có  thể  hình  thành  một  hoặc  nhiều  bộ  ba  RDF  cho  mỗi  hàng   Ví  dụ:  Ánh  xạ  bộ  ba  bao  gồm  cả  bảng  logic,  ánh  xạ  chủ  thể  và  ánh  xạ  vị  từ  đối  tượng     rr:logicalTable [ rr:tableSchema "R2RML"; rr:tableOwner "TEST"; rr:tableName "CUSTOMER" ]; rr:subjectMap [ rr:template"http://example.com/customer/{makh}"; rr:class exa:customer; rr:graph ; ]; rr:predicateObjectMap [ rr:predicate customer:makh; rr:objectMap [ rr:column "makh" ]; ]; 11 a   Tạo  tài  nguyên  với  ánh  xạ  chủ  thể   Một  ánh  xạ  chủ  thể  là  một  thuật  ngữ  ánh  xạ  chỉ  ra  một  quy  tắc  để  tạo  các  đối  tượng  của  bộ   ba  RDF  bởi  một  ánh  xạ  bộ  ba   b   Kiểu  tài  nguyên  (rr:class)   Ánh  xạ  chủ  thể  có  thể  có  một  hoặc  nhiều  lớp  IRIs  Nó  đại  diện  bởi  các  thuộc  tính  rr:class   Các  giá  trị  của  thuộc  tính  rr:class  phải  thuộc  IRIs  Đối  với  mỗi  thuật  ngữ  RDF  được  tạo  ra  bởi  các   ánh  xạ  chủ  thể,  RDF  bộ  ba  với  vị  từ  rdf:type  và  lớp  IRI  Trong  ví  dụ  sau,  đối  tượng  được  tạo  ra  sẽ    khẳng  định  như  một  thể  hiện  lớp  customer:   rr:template"http://example.com/customer/{makh}"; rr:class exa:customer; rr:graph ; Ví  dụ:  Bảng  CUSTOMER,  bộ  ba  RDF  sau  đây  sẽ  được  tạo  ra:   rdf:type ex:CUSTOMER c   Tạo  thuộc  tính  và  giá  trị  ánh  xạ  vị  từ-­‐‑đối  tượng     Ánh  xạ  vị  từ  -­‐‑  đối  tượng  là  một  chức  năng  tạo  ra  một  hoặc  nhiều  cặp  vị  từ  -­‐‑  đối  tượng  cho    dòng  của  bảng  logic  Nó  kết  hợp  với  một  ánh  xạ  chủ  thể  để  tạo  ra  bộ  ba  trong  ánh  xạ  bộ  ba   Ánh  xạ  vị  từ  -­‐‑   đối  tượng  đại  diện  bởi  một  tài  nguyên  tham  chiếu  đến  các  tài  nguyên  khác  như   sau:   −   Một  hoặc  nhiều  ánh  xạ  vị  từ  Nó  xác  định  theo  một  trong  hai  cách  sau:    Sử  dụng  thuộc  tính  rr:predicateMap  có  giá  trị  phải  là  một  ánh  xạ  vị  từ  hoặc,    Sử  dụng  thuộc  tính  rr:objects   −   Một  hoặc  nhiều  ánh  xạ  đối  tượng  hoặc  ánh  xạ  đối  tượng  tham  chiếu  Nó  được  xác  định   theo  một  trong  hai  cách:    Sử  dụng  thuộc  tính  rr:  ObjectMap  có  giá  trị  hoặc  là  một  ánh  xạ  đối  tượng,  hoặc  một   ánh  xạ  đối  tượng  tham  chiếu    Sử  dụng  thuộc  tính  phím  tắt  rr:objects   d   Tạo  các  mục  từ  RDF  với  thuật  ngữ  ánh  xạ   Một  mục  từ  RDF  là  IRI  hoặc  một  nút  trống  hoặc  một  literal  Một  mục  từ  ánh  xạ  là  một  hàm   tạo  ra  mục  từ    RDF  từ  một  dòng  của  bảng  logic  Kết  quả  của  hàm  đó  được  gọi  là  thuật  ngữ   ánh  xạ  được  tạo  ra  của  mục  từ  RDF   Một  mục  từ  ánh  xạ  phải  được  xác  định  chính  xác  một  trong  các  trường  hợp  sau:   12 •   constant  (hằng  số)   •   column  (cột)   •   template  (mẫu)   jos.hueuni.edu.vn                                                                                                                                                                                                                          Tập               X;  Số  Y;  Năm  2015   Hình  5:  Thuộc  tính  của  các  ánh  xạ  mục  từ   Các  cột  tham  chiếu  của  thuật  ngữ  ánh  xạ  là  tập  hợp  của  tên  cột  tham  chiếu  trong  thuật   ngữ  ánh  xạ  và  phụ  thuộc  vào  kiểu  của  thuật  ngữ  ánh  xạ   e   Hằng  số  RDF  (rr:  constant)   Hằng  số  (constant)  là  một  thuật  ngữ  ánh  xạ  bỏ  qua  các  dòng  của  bảng  logic  và  luôn  luôn    tạo  ra  cùng  với    thuật  ngữ  RDF  Hằng  số  được  đại  diện  bởi  một  nguồn  tài  nguyên  có  một   thuộc  tính    rr:constant  cố  định   Các  giá  trị  của  hằng  số  là  một  thuật  ngữ  RDF  còn  gọi  đó  là  giá  trị    của  thuộc  tính  rr:constant   Nếu  giá  trị  hằng  số  là  ánh  xạ  chủ  thể,  ánh  xạ  vị  từ  hoặc  ánh  xạ  đồ  thị  thì    giá  trị  hằng  số  của    phải  là  một  IRI   Nếu  giá  trị  hằng  số  là  một  ánh  xạ  đối  tượng  thì  giá  trị  hằng  số  của  nó  là  một  IRI  hoặc  literal   Cột  tham  chiếu  của  hằng  số  là  một  tập  rỗng   Hằng  số  là  thuật  ngữ  có  giá  trị  ánh  xạ  được  thể  hiện  chính  xác  hơn  bằng  cách  sử  dụng  các   thuộc  tính  rr:subject,  rr:perdecate,  rr:object  và  rr:graph  Những  lần  xuất  hiện  của  những  thuộc  tính    phải  được  xử  lý  chính  xác,  nếu  đã  xuất  hiện  như  bộ  ba  trong  đồ  thị  ánh  xạ  thay  thế:   Bảng  4:  Bảng  viết  tắt  của  bộ  ba   Bộ  ba  gồm  các  phím  tắt  có  thuộc  tính  không  đổi   Bộ  ba  thay  thế   ?x  rr:subject  ?y   ?x  rr:subjectMap  [rr:constant  ?y]   13 ?x  rr:predicate  ?y   ?x  rr:predicateMap  [rr:constant  ?y]   ?x  rr:object  ?y   ?x  rr:objectMap  [rr:constant  ?y]   ?x  rr:graph  ?y   ?x  rr:graphMap  [rr:constant  ?y]   Ví  dụ:  Một  ánh  xạ  vị  từ  -­‐‑  đối  tượng  sử  dụng  một  hằng  số  cho  cả  vị  từ  của  mình  và  cho  đối   tượng  của  nó   [ rr: predicateMap [rr: constant rdf: type]; rr: ObjectMap [rr: constant ex: customer]];  Nếu  thêm  vào  một  ánh  xạ  bộ  ba,  thì  ánh  xạ  vị  từ  -­‐‑    đối  tượng  sẽ  thêm  bộ  ba  cho  tất  cả  các   nguồn  tài  nguyên  ?x  tạo  ra  bởi  ánh  xạ  bộ  ba:   ? x rdf:type ex:customer f   Từ  một  cột  (rr:  column)   Giá  trị  cột  của  thuật  ngữ  ánh  xạ  là  một  thuật  ngữ  ánh  xạ  đại  diện  bởi  một  nguồn  tài   nguyên  có  một  thuộc  tính  chính  xác  rr:column  Giá  trị  của  thuộc  tính  rr:column  là  một  tên  cột   hợp  lệ  Giá  trị  cột  là  giá  trị  dữ  liệu  của  cột  trong  một  dòng  của  bảng  logic  nhất  định   Cột  tham  chiếu  là  một  tập  hợp  đơn  có  chứa  các  giá  trị  của  thuộc  tính  rr:column   Ví  dụ:  Định  nghĩa  một  ánh  xạ  đối  tượng  được  tạo  ra  từ  cột  Tenkh  của  một  số  bảng  logic   Customer   [ ] rr:ObjectMap [rr: column"Tenkh"] Sử  dụng  hàng  có  sẵn  từ  bảng  CUSTOMER  như  một  dòng  của  bảng  logic,  giá  trị  cột  của   ánh  xạ  đối  tượng  sẽ  là  "ʺCTy  Thanh  Thanh"ʺ   g   Từ  một  Template  (rr:template)   Template  là  một  ánh  xạ  được  đại  diện  bởi  một  nguồn  tài  nguyên  có  chính  xác  trong  thuộc   tính  rr:  template  Giá  trị  của  thuộc  tính  rr:template  phải  là  một  chuỗi  template  hợp  lệ   Một  chuỗi  template  là  một  chuỗi  định  dạng  có  thể  được  sử  dụng  để  xây  dựng  chuỗi  từ   nhiều  thành  phần  Nó  có  thể  tham  chiếu  các  tên  cột  bằng  cách  đóng  nó  trong  dấu  ngoặc  nhọn   ("ʺ{"ʺ  và  "ʺ}"ʺ)  Cú  pháp  sau  đây  áp  dụng  cho  chuỗi  template  hợp  lệ:   •   Các  cặp  dấu  ngoặc  phải  kèm  theo  tên  cột  hợp  lệ   •   Dấu  ngoặc  nhọn  mà  không  kèm  theo  tên  cột  phải  được  thoát  bởi  dấu  gạch  chéo   ngược  (“\"ʺ)     •   Ký  tự  gạch  chéo  ngược  ("ʺ\"ʺ)  được  thoát  ra  bằng  cách  đặt  trước  chúng  với  ký  tự  chéo,   "ʺ\  \"ʺ     •   Nên  có  ít  nhất  một  cặp  dấu  ngoặc  nhọn  không  thoát   •   Nếu  một  template  chứa  nhiều  cặp  dấu  ngoặc  nhọn,  thì  mỗi  cặp  nên  được  tách  ra  từ    trong  dấu  cách  an  toàn     Ví  dụ:    Định  nghĩa  một  ánh  xạ  chủ  thể  tạo  ra  IRI  từ  cột  makh  của  một  bảng  logic   14 jos.hueuni.edu.vn                                                                                                                                                                                                                          Tập               X;  Số  Y;  Năm  2015 rr:subjectMap [ rr:template "http://example.com/customer/{makh}"; ] Sử  dụng  dòng  từ  bảng  CUSTOMER  như  một  dòng  của  bảng  logic,  giá  trị  template  của  ánh   xạ  chủ  thể  sẽ  là:  http://example.com/customer/BT   Ví  dụ:  một  giá  trị  template  IRI  được  tạo  ra:   rr:subjectMap  [  rr:template  "ʺhttp://example.com/customer/{makh}"ʺ;]   Giá  trị  template  IRI  được  truy  xuất  là:  http://example.com/customer/TIEN%  20GIANG   Các  ký  tự  khoảng  trắng  không  phải  là  trong  tập  hạn  chế  Do  đó,  phần  trăm  mã  hóa  được   áp  dụng  cho  các  ký  tự,  ký  hiệu  "ʺ%20"ʺ   4.2.4   Chuyển  đổi  kiểu  dữ  liệu   Phần  này  định  nghĩa  các  giá  trị  dữ  liệu  SQL  như  sau:   −   Bản  chất  literal  RDF  là  một  ánh  xạ  cho  cho  các  literal  Nó  được  sử  dụng  trong  R2RML    trong  ánh  xạ  trực  tiếp  cơ  sở  dữ  liệu  quan  hệ  sang  RDF  như  là  ánh  xạ  mặc  định  khi   tạo  literal  Nó  ánh  xạ  các  các  kiểu  dữ  liệu  SQL  sang  kiểu  dữ  liệu  XML  Schema  tương   ứng   −   Bản  chất  hình  thức  về  từ  vựng  RDF  là  giống  nhau,  nhưng  chỉ  đưa  ra  mẫu  từ  vựng  của   kiểu  literal  và  recommends  Nó  được  sử  dụng  trong  R2RML  khi  cột  chuỗi  rỗng  trong   chuỗi  ngữ  cảnh   −   Hình  thức  kiểu  mẫu  từ  vựng  RDF  cũng  tương  tự,  nhưng  phải  là  XSD  Nó  được  sử  dụng    ánh  xạ  trực  tiếp  khi  IRI  sinh  ra   −   Kiểu  dữ  liệu  ghi  đè  RDF  literal  là  một  ánh  xạ  được  xây  dựng  kiểu  literal  bởi  bản  RDF   literal    và  chấp  nhận  kiểu  dữ  liệu  IRI  Nó  được  sử  dụng  khi  mục  đích  kiểu  dữ  liệu  của   literal  phát  sinh  thuật  ngữ  ánh  xạ  sử  dụng  kiểu  rr:datatype       Hình  6:  Thuộc  tính  của  ánh  xạ  đối  tượng  tham  chiếu   Một  ánh  xạ  đối  tượng:   15 •    Phải  có  chính  xác  thuộc  tính  rr:parentTriplesMap  mà  giá  trị  phải  có  trong  ánh  xạ  bộ   ba  như  là  đối  tượng  ánh  xạ  tham  chiếu  của  ánh  xạ  bộ  ba  parent   •   Có  một  hoặc  nhiều  thuộc  tính  rr:joinCondition  đó  là  điều  kiện  ràng  buộc   Điều  kiện  ràng  buộc  đại  diện  bởi  nguồn  tài  nguyên  đó  là  một  giá  trị  chính  xác  cho  hai   thuộc  tính  sau  đây:   •   Thuộc  tính  rr:child,giá  trị  biết  đến  như  là  điều  kiện  ràng  buộc  của  cột  con  và  phải  là   tên  cột  được  tồn  tại  trong  bảng  logic  của  ánh  xạ  bộ  ba   •   Thuộc  tính  rr:parent,  giá  trị  được  biết  đến  như  điều  kiện  ràng  buộc  của  cột  cha  và   phải  là  cột  được  tồn  tại  trong  bảng  logic  của  ánh  xạ  đối  tượng  tham  chiếu    Ví  dụ:  Một  đối  tượng  ánh  xạ  tham  chiếu  như  là  một  phần  của  ánh  xạ  vị  từ  -­‐‑  đối  tượng:   rr:predicateObjectMap [ rr:predicate hoadon:Makhach_FK; rr:objectMap [ rr:parentTriplesMap ; rr:joinCondition [ rr:child "Makhach"; rr:parent "Makh"; ]; ]; ]; 4.3  Bài  toán  minh  hoạ   Nhằm  khẳng  định  hơn  nữa  việc  ánh  xạ  trực  tiếp  một  cơ  sở  dữ  liệu  quan  hệ  sang  RDF  và   RDFS  bằng  ngôn  ngữ  R2RML  Những  nội  dung  trong  dưới  đây  thể  hiện  quá  trình  chuyển  đổi:     −   Dữ  liệu  vào:   •   Cơ  sở  dữ  liệu  (lược  đồ  và  dữ  liệu)   •   Khoá  chính,  khoá  ngoại   −   Dữ  liệu  ra:     •   Đồ  thị  RDF   •   Lược  đồ  RDFS   Quá  trình  chuyển  đổi  được  thực  hiện  qua  các  bước  sau:   Bước  1:  Tạo  lược  đồ  và  dữ  liệu  cho  cơ  sở  dữ  liệu  quan  hệ   Lược  đồ  cơ  sở  dữ  liệu  quan  hệ:    KHACHHANG  (Makh,  Tenkh,  diachi)    SANPHAM  (Masp,  Tensp)   HOADON  (Sohd,  Makh,  Masp,  Manv,  LoaiVT,  Soluong,  Dongia)   NHANVIEN  (Manv,  Holot,  Ten,  PhaiNam,  Diachi,  LuongCB)    Trong  các  quan  hệ  nên  trên  những  thuộc  tính  như  “Makh,  Masp,  Sohd,  Manv”  là  những   khoá  chính  trong  cơ  sở  dữ  liệu  quan  hệ   16 jos.hueuni.edu.vn                                                                                                                                                                                                                          Tập               X;  Số  Y;  Năm  2015 Bước  2:  Sử  dụng  cấu  trúc  của  ngôn  ngữ  R2RML  để  chuyển  đổi  dữ  liệu  như  sau:     Khi  dữ  liệu  được  chuyển  đổi  bằng  R2RML  thì  dữ  liệu  sẽ  được  kiểm  tra  bằng  cách  chọn   Interactive  SQL  (isql.exe)  trong  Virtuoso  Cơ  sở  dữ  liệu  quan  hệ  thể  hiện  trong  Virtuoso  như  sau:   Các bảng sở liệu quan hệ   Hình  8:  Các  bảng  của  RDB  trong  Virtuoso   Bảng  NHANVIEN  (EMPLOYEE)  với  khoá  chính  là  manv     17 Bảng  KHACHHANG  (CUSTOMER)   Bảng  SANPHAM  (PRODUCT)       Bảng  HOADON  (INVOICES)     Bước  3:  Hiển  thị  dữ  liệu  RDF:    dữ  liệu  được  biểu  diễn  với  dạng  bộ  ba  (Subject  (s)–  Predicate   (p)  –  Object  (p))     Hình  9:  Dữ  liệu  hiển  thị  dưới  dạng  bộ  ba           18 jos.hueuni.edu.vn                                                                                                                                                                                                                          Tập               X;  Số  Y;  Năm  2015 Bước  4:  Lược  đồ  chuyển  đổi  hiển  thị  trong  mô  hình  Ontology  dưới  dạng  RDFS       Hình  10:  Dữ  liệu  RDFS  biểu  diễn  trong  Ontology  dưới  dạng  OWL     Kết  luận   Bào  báo  trình  bày  quá  trình  nghiên  cứu  chuyển  đổi  cơ  sở  dữ  liệu  quan  hệ  sang  RDF  và   RDFS  Các  kết  quả  chính  của  của  bài  báo  là:  hệ  thống  hoá  các  phương  pháp  ánh  xạ  để  chuyển  đổi    sở  dữ  liệu  quan  hệ  sang  RDF  và  RDFS;  tìm  hiểu  về  ngôn  ngữ  chuyển  đổi  R2RML;  và  ứng  dụng   chuyển  đổi  mô  hình  dữ  liệu  quan  hệ  sang  mô  hình  biểu  diễn  Ontology  bằng  OWL  và  cách  thể    Ontology  dưới  dạng  RDF  và  RDFS   Trong  các  nghiên  cứu  trong  tương  lai,  chúng  tôi  sẽ  nghiên  cứu  việc  thực  hiện  việc  chuyển   đổi  tất  cả  các  dữ  liệu  hiện  có  biểu  diễn  trên  ontology  dưới  dạng  RDF  dưới  mục  đích  nhằm  phục   vụ  cho  thế  hệ  ứng  dụng  mới  có  sử  dụng  RDF   19 Tài  liệu  tham  khảo     Hoàng  Hữu  Hạnh,  Lê  Mạnh  Thạnh  (2012),  Giáo  trình  Web  ngữ  nghĩa,  Nxb  Giáo  dục     Hoàng  Hữu  Hạnh  (2012),  RDF  Ứng  dụng,  Nxb  Đại  học  Huế     Berners-­‐‑Lee  T.,  Hendler  J.,  Lassila  O  (2001),  The  Semantic  Web,  Scientific  American,  284,  pp  34-­‐‑43     Ezzat  A.,  Halb  W.,  Hellmann  S.,  Idehen  S.,  Sahoo  S.,  Sequeda  J.,  Thibodeau  T.(2009),  ”A  Survey  of    Cur-­‐‑ rent  Approaches  for  Mapping  of  Relational  Databases  to  RDF”,  pp  1-­‐‑15     Berners-­‐‑Lee   T   (1998),   “Relational   Databases   on   the   Semantic   Web”,   http://www.w3.org/DesignIs-­‐‑ sues/RDB-­‐‑RDF.html     Buccella   A.,   Penabad   M.,   Rodriguez   F.,   Farina   A.,   Cechich   A   (2004),   “From   Relational   Databases   to   OWL  Ontologies”,  Proceedings  of  the  6th  National  Russian  Research  Conference     RDF  Primer,  http://www.w3.org/TR/rdf-­‐‑primer/     RDF  Vocabulary  Description  Language  1.0:  RDF  Schema,  http://www.w3.org/TR/rdf-­‐‑schema/     http://www.w3.org/2001/sw/rdb2rdf/   10   http://www.w3.org/TR/r2rml/     R2RML  FOR  TRANSFORMING  RELATIONAL  DATABASES  TO   LINKED  DATA   Tran  Nguyen  Phong,  Hoang  Huu  Hanh   Hue  University   E-­‐‑mail:  tnphong@hueuni.edu.vn, hhhanh@hueuni.edu.vn   Abstract   RDF   (Resource   Description   Framework)   becomes   a   standard   for   modelling   meta   data  on  the  Web  or  Web  resources  and  the  basis  for  Linked  Data  and  Web  of  Data  Transform-­‐‑ ing  data  from  relational  databases  to  RDF  is  considered  as  an  important  process  for  building   the  Web  of  Data  R2RML  (Relational  Database  to  RDF  Mapping  Language)  is  a  handy  lan-­‐‑ guage  for  this  mapping  process  The  mapping  enables  to  view  enriched  data  in  RDF  models   and  its  vocabularies  R2RML  also  defines  a  direct  mapping  from  relational  databases  to  RDF   models  Each  R2RML  mapping  is  suitable  a  database  schema  and  specific  vocabulary  This   paper   presents   the   application   of   R2RML   into   the   transforming   relational   databases   into   Linked  Data  and  the  new  Web  generation-­‐‑Web  of  Data     Keywords:  Linked  Data,  Web  of  Data,  Semantic  Web,  ontology,  RDF,  OWL   20 [...]...  việc  ánh  xạ  trực  tiếp  một cơ sở dữ liệu  quan  hệ  sang  RDF  và   RDFS  bằng  ngôn  ngữ R2RML  Những  nội  dung  trong  dưới  đây  thể  hiện  quá  trình chuyển đổi:     −   Dữ liệu  vào:   •   Cơ sở dữ liệu  (lược  đồ  và dữ liệu)   •   Khoá  chính,  khoá  ngoại   −   Dữ liệu  ra:     •   Đồ  thị  RDF   •   Lược  đồ  RDFS   Quá  trình chuyển đổi  được  thực  hiện  qua  các  bước...  đồ chuyển đổi  hiển  thị  trong  mô  hình  Ontology  dưới  dạng  RDFS       Hình  10: Dữ liệu  RDFS  biểu  diễn  trong  Ontology  dưới  dạng  OWL   5   Kết  luận   Bào  báo  trình  bày  quá  trình  nghiên  cứu chuyển đổi cơ sở dữ liệu  quan  hệ  sang  RDF  và   RDFS  Các  kết  quả  chính  của  của  bài  báo  là:  hệ  thống  hoá  các  phương  pháp  ánh  xạ để chuyển đổi   cơ sở dữ liệu. ..  hạn  chế  Do  đó,  phần  trăm  mã  hóa  được   áp dụng cho  các  ký  tự,  ký  hiệu  "ʺ%20"ʺ   4.2.4   Chuyển đổi  kiểu dữ liệu   Phần  này  định  nghĩa  các  giá  trị dữ liệu  SQL  như  sau:   −   Bản  chất  literal  RDF  là  một  ánh  xạ cho cho  các  literal  Nó  được  sử dụng  trong R2RML   và  trong  ánh  xạ  trực  tiếp cơ sở dữ liệu  quan  hệ  sang  RDF  như  là  ánh  xạ  mặc  định... dụng  cấu  trúc  của  ngôn  ngữ R2RML để chuyển đổi dữ liệu  như  sau:     Khi dữ liệu  được chuyển đổi  bằng R2RML  thì dữ liệu  sẽ  được  kiểm  tra  bằng  cách  chọn   Interactive  SQL  (isql.exe)  trong  Virtuoso Cơ sở dữ liệu  quan  hệ  thể  hiện  trong  Virtuoso  như  sau:   Các bảng của cơ sở dữ liệu quan hệ   Hình  8:  Các  bảng  của  RDB  trong  Virtuoso   Bảng  NHANVIEN  (EMPLOYEE)...  RDF  và  RDFS;  tìm  hiểu  về  ngôn  ngữ chuyển đổi R2RML;  và ứng dụng   chuyển đổi  mô  hình dữ liệu  quan  hệ  sang  mô  hình  biểu  diễn  Ontology  bằng  OWL  và  cách  thể   hiện  Ontology  dưới  dạng  RDF  và  RDFS   Trong  các  nghiên  cứu  trong  tương  lai,  chúng  tôi  sẽ  nghiên  cứu  việc  thực  hiện  việc chuyển   đổi  tất  cả  các dữ liệu  hiện  có  biểu  diễn  trên  ontology...  và dữ liệu cho cơ sở dữ liệu  quan  hệ   Lược  đồ cơ sở dữ liệu  quan  hệ:    KHACHHANG  (Makh,  Tenkh,  diachi)    SANPHAM  (Masp,  Tensp)   HOADON  (Sohd,  Makh,  Masp,  Manv,  LoaiVT,  Soluong,  Dongia)   NHANVIEN  (Manv,  Holot,  Ten,  PhaiNam,  Diachi,  LuongCB)    Trong  các  quan  hệ  nên  trên  những  thuộc  tính  như  “Makh,  Masp,  Sohd,  Manv”  là  những   khoá  chính  trong cơ. ..  trong cơ sở dữ liệu  quan  hệ   16 jos.hueuni.edu.vn                                                                                                                                                                                                                          Tập               X;  Số  Y;  Năm  2015 Bước  2:  Sử dụng  cấu  trúc  của  ngôn  ngữ R2RML để chuyển đổi dữ liệu  như  sau:...  from  relational  databases  to  RDF   models  Each R2RML  mapping  is  suitable  a  database  schema  and  specific  vocabulary  This   paper   presents   the   application   of   R2RML   into   the   transforming   relational   databases   into   Linked Data  and  the  new  Web  generation-­‐‑Web  of Data     Keywords: Linked Data,  Web  of Data,  Semantic  Web,  ontology,  RDF,  OWL   20 ... http://www.w3.org/TR /r2rml/     R2RML  FOR  TRANSFORMING  RELATIONAL  DATABASES  TO   LINKED DATA   Tran  Nguyen  Phong,  Hoang  Huu  Hanh   Hue  University   E-­‐‑mail:  tnphong@hueuni.edu.vn, hhhanh@hueuni.edu.vn   Abstract   RDF   (Resource   Description   Framework)   becomes   a   standard   for   modelling   meta   data  on  the  Web  or  Web  resources  and  the  basis  for Linked Data  and  Web  of Data. .. dụng   trong  ánh  xạ  trực  tiếp  khi  IRI  sinh  ra   −   Kiểu dữ liệu  ghi  đè  RDF  literal  là  một  ánh  xạ  được  xây  dựng  kiểu  literal  bởi  bản  RDF   literal    và  chấp  nhận  kiểu dữ liệu  IRI  Nó  được  sử dụng  khi  mục  đích  kiểu dữ liệu  của   literal  phát  sinh  thuật  ngữ  ánh  xạ  sử dụng  kiểu  rr:datatype       Hình  6:  Thuộc  tính  của  ánh  xạ  đối  tượng  tham

Ngày đăng: 09/04/2016, 05:57

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan