Như đã đề cập ở chương 3, trong khoa học máy tính, Ontology lưu trữ thông tin về miền ứng dụng cụ thể. Ontology là biểu diễn hình thức của một tập các khái niệm về một miền cụ thể và các mối quan hệ giữa các khái niệm. Trong Ontology, lớp là tập hợp các đối tượng, các thuộc tính là các đặc trưng mà các đối tượng (và các lớp) có thể có, còn mối quan hệ là cách mà các lớp, các đối tượng thể hiện sự liên kết tới các lớp hoặc các đối tượng khác.
Hai quan hệ phổ biến trong Ontology là is-a-superclass-of và is-a-subclass-of. Ví dụ, trường is-a-superclass-of khoa, khoa is-a-subclass-of trường. Ngoài hai quan hệ trên, Ontology được sử dụng để thể hiện các quan hệ trong miền và phân loại các quan hệ, chẳng hạn như:
- Các quan hệ giữa các lớp.
- Các quan hệ giữa các các đối tượng.
- Các quan hệ giữa các một đối tượng và một lớp.
Do vậy, việc thiết kế Ontology là cực kỳ quan trọng để thể hiện tri thức về miền ứng dụng cụ thể.
Hệ thống hỏi đáp tiếng Việt dựa trên Ontology của chúng tôi có thể áp dụng đối với nhiều miền ứng dụng. Tuy nhiên, trong khóa luận này, chúng tôi thiết kế một Ontology thử nghiệm về một tổ chức, cụ thể là trường Đại học Công Nghệ. Từ đó, dựa vào Ontology được thiết kế, chúng tôi sử dụng Sesame server để lưu trữ và căn cứ vào đó, chúng tôi sẽ mô tả chi tiết thành phần ánh xạ Ontology và trích chọn câu trả lời (trong mục 4.4 và 4.5).
Chúng tôi thiết kế thử nghiệm Ontology cho trường đại học Công Nghệ bằng công cụ Protege 3.3.1 [68]. Việc phát triển một Ontology, bao gồm các bước sau:
- Định nghĩa các lớp trong Ontology.
- Xắp xếp các lớp theo một trật tự lớp cha – lớp con.
- Định nghĩa các thuộc tính, miêu tả các giá trị cho các thuộc tính này. - Điền các giá trị vào các thuộc tính cho các đối tượng.
Dưới đây, chúng tôi trình bày cách thiết kế Ontology thử nghiệm về trường Đại học Công Nghệ.
35