4.2Tập luật
Như Mục 4.2.9 của Chương 4 đã phân tích, để xây dựng tập luật ánh xạ R3 và R4 ta cần phải xây dựng một hệ thống luật tổng quát, sao cho ta có thể dễ dàng mô tả thêm các luật mới nhưng vẫn không ảnh hưởng tới hệ thống. Như vậy nó sẽ làm cho hệ thống có tính tổng quát hơn, không bị bó buộc trên tập luật xác định nào đó. Để đạt được mục tiêu trên, ta sẽ xây dựng tập luật theo định dạng XML.
Mỗi luật trong hệ thống luật sẽ có dạng như sau:
“Nếu [điều kiện] thì [hành động]”
Trong đó phần điều kiện có những đặc tính sau:
-
Có ràng buộc về tên lớp thực thể, giá trị chuỗi ban đầu và kiểu thực thể.
-
Có thể xét một quan hệ hoặc nhiều quan hệ đồng thời.
Phần hành động có những đặc tính sau:
-
Cho phép thay đổi các giá trị về tên lớp, thay đổi định danh thực thể và xác định loại quan hệ.
-
Xóa thực thể hoặc quan hệ.
Phần này trình bày cấu trúc của tập luật dùng để ánh xạ bộ ba quan hệ thành quan hệ ngữ nghĩa.
4.2.1Cấu trúc của hệ thống luật
Hệ thống luật được định nghĩa trong một tập tin XML, trong đó mỗi thành phần (Element) sẽ được mô tả theo định dạng DTD (Document Type Definition) như sau:
Thành phần root của tập tin là TransformRules, trong đó chứa nhiều thành phần rule.
name CDATA #REQUIRED
priority CDATA #IMPLIED>
|
Hình 4.0.9: Cấu trúc tập thành phần TransformRules và rule.
Từ khóa ELEMENT được dùng để mô tả cấu trúc của một thành phần; từ khóa ATTLIST được dùng để mô tả các thuộc tính của một thành phần; CDATA mô tả kiểu dữ liệu chuỗi cho thuộc tính; #REQUIRED dùng mô tả tính chất bắt buộc của thuộc tính; #IMPLIED dùng mô tả tính chất không bắt buộc của thuộc tính. DTD dùng các ký hiệu “*”, “+” và “?” dùng để chỉ số lượng của một thành phần trong thành phần cha của nó. Ý nghĩa của mỗi ký hiệu như sau:
-
Dấu “*”: xuất hiện từ 0 đến n
-
Dấu “+”: xuất hiện từ 1 đến n
-
Dấu “?”: xuất hiện 0 hoặc 1
Định nghĩa thành phần TransformRules ở Hình 4.6, chỉ ra thành phần này có thể chứa nhiều thành phần rule, thành phần rule chứa hai thành phần premiselist và consequentlist. Ngoài ra, thành phần rule còn có hai thuộc tính là name và priority dùng để mô tả tên luật và độ ưu tiên của luật. Chúng ta sẽ lần lượt tìm hiểu cấu trúc các thành phần con trong thành phần rule tiếp theo sau đây.
4.2.2Cấu trúc thành phần điều kiện của luật
Mỗi luật bao gồm hai phần: điều kiện và hành động. Phần điều kiện của luật được mô tả bằng thành phần premiselist, là con của thành phần rule. Thành phần premiselist bao gồm một hay nhiều thành phần premise, Hình 4.7 mô tả cấu trúc của một thành phần premise. Mỗi thành phần premise gồm có ba thành phần con là subject, relation và object tương ứng với một bộ ba mà ta đã thảo luận ở phần trên. Ý nghĩa của các thuộc tính trong các thành phần này được thể hiện trong Bảng 4.1. Ví dụ minh hoạ đặc tả thành phần premise có thể thấy tại Hình 4.8.
Tên thuộc tính
|
Đặc tả
|
var
|
Thuộc tính này dùng để đặt tên biến cho các thành phần, nhằm phân biệt các thành phần
|
value
|
Giá trị chuỗi ban đầu của thực thể. Ta có thể liệt kê tập các giá trị trong đó các thành phần cách nhau bằng dấu phẩy.
|
className
|
Thuộc tính ràng buộc tên lớp thực thể
|
classType
|
Thuộc tính dùng để ràng buộc kiểu thực thể như UE, IE
|
Bảng 4.1: Bảng thuộc tính thành phần premise.
4.2.3Cấu trúc thành phần hành động của luật
Nếu một bộ ba nào đó thỏa mãn thành phần điều kiện luật thì hành động luật consequent sẽ được áp dụng cho bộ ba đó. Cấu trúc của thành phần hành động được mô tả như Hình 4.9.
Các thuộc tính của thành phần hành động cũng giống như phần tử điều kiện đã được mô tả trong Bảng 4.2. Ngoài ra, thành phần hành động còn có hai thuộc tính mới là quantifier và delete, thuộc tính quantifier dùng để gán giá trị định danh cho lớp, thuộc tính delete dùng để yêu cầu xóa thành phần đó. Hình 4.11 là ví dụ minh họa đặc tả một luật hoàn chỉnh.
var CDATA #REQUIRED
value CDATA #IMPLIED
className CDATA #IMPLIED
classType CDATA #IMPLIED>
var CDATA #REQUIRED
value CDATA #IMPLIED>
var CDATA #REQUIRED
value CDATA #IMPLIED
className CDATA #IMPLIED
classType CDATA #IMPLIED>
|
Hình 4.0.10: Cấu trúc của thành phần điều kiện luật.
Hình 4.0.11: Ví dụ về thành phần premise.
4.2.4Xây dựng một số luật đặc biệt
Trong phần này ta sẽ xem xét một số trường hợp đặc biệt, các luật này được dùng cho bước gom các thực thể có cùng ngữ nghĩa trong câu truy vấn. Ví dụ câu truy vấn “Who was the president of Vichy France?”, các từ who và president đều biểu diễn cho thực thể không tên thuộc lớp PERSON, và chúng cách nhau bởi từ quan hệ was. Do đó who và president được gom lại thành một thực thể duy nhất. Luật đặc biệt cũng có cấu trúc như luật thường nhưng nó có độ ưu tiên là -1.
4.2.5Xây dựng từ điển luật
Trong Ontology có rất nhiều quan hệ tương tự nhau như HASFATHER, HASMOTHER, HASCHILD, HASSISTER… Nếu ta áp dụng cấu trúc tập luật như đã nêu để xây dựng cho từng quan hệ này thì tập luật sinh rất giống nhau và rất dài dòng, nhiều thuộc tính ta không dùng tới.
Nhằm giúp cho quá trình đặc tả luật đơn giản hơn và tăng tốc trong quá trình xử lý, ta sẽ lập từ điển cho những cấu trúc này. Chúng ta sẽ đi vào chi tiết cấu trúc của tập tin từ điển mà sẽ được trình bày ngay sau đây.
var CDATA #REQUIRED
value CDATA #IMPLIED
className CDATA #IMPLIED
classType CDATA #IMPLIED
quantifier CDATA #IMPLIED
delete CDATA #IMPLIED>
var CDATA #REQUIRED
value CDATA #IMPLIED
delete CDATA #IMPLIED>
var CDATA #REQUIRED
value CDATA #IMPLIED
className CDATA #IMPLIED
classType CDATA #IMPLIED
quantifier CDATA #IMPLIED
delete CDATA #IMPLIED>
|
Hình 4.0.12: Cấu trúc của thành phần hành động.
Tập tin từ điển cũng được xây dựng theo định dạng XML. Hình 4.12 mô tả một thể hiện của tập tin từ điển. Trong cách thể hiện này, thành phần cao nhất của tập tin từ điển là dictionary, thành phần dictionary bản thân nó sẽ chứa tập các entry, trong đó mỗi entry với các thuộc tính subjvalue, relvalue, relation, dir sẽ thể hiện một luật. Các thuộc tính vừa nêu của thành phần entry sẽ được mô tả chi tiết trong Bảng 4.2.
subjvalue CDATA #IMPLIED
relvalue CDATA #IMPLIED
objvalue CDATA #IMPLIED
relation CDATA #IMPLIED
dir CDATA #IMPLIED>
|
Hình 4.0.13: Cấu trúc từ điển quan hệ.
Hình 4.0.14: Ví dụ một luật hoàn chỉnh.
Tên thuộc tính
|
Đặc tả
|
subjvalue
|
Giá trị chuỗi ban đầu của chủ thể
|
relvalue
|
Giá trị chuỗi ban đầu của quan hệ
|
objvalue
|
Giá trị chuỗi ban đầu của khách thể
|
relation
|
Quan hệ sẽ áp dụng cho bộ ba nếu thỏa điều kiện
|
dir
|
Xác định chiều quan hệ, “1” từ chủ thể đến khách thể, ngược lại có giá trị là 2
|
Bảng 4.2: Mô tả các thuộc tính của thành phần entry.
Hình 4.0.15: Ví dụ một số thành phần trong từ điển.
Chia sẻ với bạn bè của bạn: |