Hệ thống luật [tham khảo CDT]

Một phần của tài liệu XỬ LÝ CÁC CÂU TRUY VẤN VÀ TÌM KIẾM TRÊN KHO TÀI LIỆU CÓ CHÚ THÍCH NGỮ NGHĨA BẰNG TIẾNG ANH (Trang 63 - 67)

Ta sẽ xây dựng tập luật theo định dạng XML.

Dạng chung của mỗi luật trong hệ thống luật như sau:

“Nếu [điều kiện] thì [hành động]”

Trong đĩ, vế điều kiện cĩ những đặc điểm sau:

• Cĩ ràng buộc về tên lớp, giá trị chuỗi ban đầu và kiểu thực thể.

• Cĩ thể xét nhiều quan hệ đồng thời trong cùng một luật. Phần hành động cĩ những đặc tính sau:

• Cĩ thể thay đổi tên lớp, thay đổi định của danh thực thể và xác định loại quan hệ.

Các phần sau 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.

5.2.1 Cấ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, và mơ tả theo định dạng DTD (Document Type Definition) như sau:

Thành phần gốc (root element) của tập tin là TransformRules, mỗi TransformRules chứa nhiều thành phần (element) rule.

<!ELEMENT TransformRules (rule)+ >

<!ELEMENT rule (premiselist, consequentlist) > <!ATTLIST rule

name CDATA #REQUIRED priority CDATA #IMPLIED>

[hình tham khảo HA]

Trong ví dụ trên, từ khĩa ELEMENT được dùng để khai báo 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 con 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

Theo định nghĩa trên, TransformRules cĩ thể chứa nhiều thành phần rule, mỗi rule chứa hai thành phần là premiselistconsequentlist. Ngồi ra, thành phần rule cịn cĩ thuộc tính là namepriority, lần lượt để mơ tả tên luật và độ ưu tiên của luật. Cấu trúc các thành phần con trong thành phần rule sẽ được mơ tả rõ hơn theo sau đây.

5.2.2 Cấu trúc thành phần điều kiện của luật

Như đã được nhắc đến ở đầu chương này, mỗi luật bao gồm hai phần: điều kiệnhà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. Mỗi

premiselist bao gồm một hay nhiều thành phần premise, hình dưới mơ tả cấu trúc của một thành phần

premise. Mỗi premise gồm cĩ 3 thành phần con là subject, relationobject 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 hình dưới:

<!ELEMENT premise(subject, relation, object) > <!ELEMENT subject EMPTY>

<!ATTLIST subject

var CDATA #REQUIRED value CDATA #IMPLIED className CDATA #IMPLIED classType CDATA #IMPLIED> <!ELEMENT relation EMPTY>

<!ATTLIST relation

var CDATA #REQUIRED value CDATA #IMPLIED> <!ELEMENT object EMPTY>

<!ATTLIST object

var CDATA #REQUIRED value CDATA #IMPLIED className CDATA #IMPLIED classType CDATA #IMPLIED> (adsbygoogle = window.adsbygoogle || []).push({});

[hình tham khảo HA]

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ể

5.2.3 Cấ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, thì phần hành động 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ư dưới.

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 ở phần 5.2.2. Ngồi ra, thành phần hành động cịn cĩ hai thuộc tính mới là quantifierdelete, 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 đĩ.

<!ELEMENT consequent(subject, relation, object) > <!ELEMENT subject EMPTY>

<!ATTLIST subject

var CDATA #REQUIRED value CDATA #IMPLIED className CDATA #IMPLIED classType CDATA #IMPLIED quantifier CDATA #IMPLIED delete CDATA #IMPLIED> <!ELEMENT relation EMPTY>

<!ATTLIST relation

var CDATA #REQUIRED value CDATA #IMPLIED delete CDATA #IMPLIED> <!ELEMENT object EMPTY>

<!ATTLIST object

var CDATA #REQUIRED value CDATA #IMPLIED className CDATA #IMPLIED classType CDATA #IMPLIED quantifier CDATA #IMPLIED delete CDATA #IMPLIED>

[hình tham khảo HA]

Hình sau đây là ví dụ minh họa đặc tả một luật hồn chỉnh:

<rule name="hasCurrency" priority="70"> <premiselist>

<premise>

<subject var="a" className="Currency"/> <relation var="b" value="of,used in" /> <object var="c" />

</premise> </premiselist> <consequentlist>

<consequent>

<subject var="c" />

<relation var="b" value="hasCurrency" /> <object var="a" />

</consequent> </consequentlist> </rule>

[hình tham khảo HA]

5.2.4 Xây dựng một số luật đặc biệt

Ngồi ra, ta sẽ cần một số luật đặ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ừ whopresident đề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 đĩ whopresident đượ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.

Một phần của tài liệu XỬ LÝ CÁC CÂU TRUY VẤN VÀ TÌM KIẾM TRÊN KHO TÀI LIỆU CÓ CHÚ THÍCH NGỮ NGHĨA BẰNG TIẾNG ANH (Trang 63 - 67)