Năm 1993, Gruber [42] đưa ra một định nghĩa về ontology: ―Một ontology là một đặc tả rõ ràng, mang tính hình thức của một khái niệm có thể chia sẻ‖. Định nghĩa của Gruber về ontology là một định nghĩa chung của ontology, ontology có thể được định nghĩa theo những ngữ cảnh cụ thể và có những đặc điểm sau:
Các thuật ngữ và các quan hệ của các thuật ngữ được miêu tả rõ ràng trong miền dữ liệu đó.
Tồn tại một cơ chế để tổ chức các thuật ngữ (ví dụ cấu trúc phân cấp).
Có sự thống nhất giữa những người dùng về ý nghĩa của các thuật ngữ được sử dụng trong miền.
Xét một ontology biểu diễn các thông tin về phương tiện giao thông (Hình 2.1). Ta thấy, xe 2 bánh và xe 4 bánh đều là các phương tiện giao thông. Xe đạp, xe máy là phương tiện giao thông có 2 bánh; xe taxi, xe tải được chia theo nhóm phương tiện 4 bánh. Hình 2.1 là biểu diễn hình học của ontology về phương tiện giao thông. Dựa trên ontology này, ta thấy được mối quan hệ giữa các khái niệm “phương tiện giao thông”, “xe 2 bánh”, “xe 4 bánh”, “xe máy”, “xe đạp”,… trong miền tri thức về phương tiện đi lại.
Các lí do cho việc xây dựng ontology
Quá trình xây dựng một ontology tương tự như quá trình xây dựng một chương trình hướng đối tượng. Tuy nhiên, các lớp và các đối tượng trong chương trình là các dữ liệu có cấu trúc, còn các lớp và các đối tượng trong các ontology là
Phương tiện GT
Xe 2 bánh Xe 4 bánh
Xe đạp Xe máy Xe taxi Xe tải
thông tin về miền dữ liệu. F. Noy và các cộng sự [44] đã đưa ra một số lí do để xây dựng các ontology:
Để chia sẻ cho mọi người các hiểu biết chung về cấu trúc thông tin của một miền dữ liệu.
Ví dụ, một số trang web chứa các thông tin về y tế hoặc các dịch vụ y tế, nếu các trang web có thể chia sẻ và công bố các ontology cho các thuật ngữ họ sử dụng thì các agent có thể thu thập và tổng hợp các thông tin từ những trang web này dễ dàng.
Để tăng cường khả năng sử dụng lại các miền tri thức. Đây là mục đích cấp thiết của việc nghiên cứu và phát triển ontology.
Ví dụ như các mô hình cho các miền khác nhau đều yêu cầu biểu diễn khái niệm thời gian, đó là khoảng thời gian, thời điểm, các độ đo tương đối của thời gian. Nếu một nhóm nghiên cứu nào đó có thể xây dựng được một ontology về thời gian một cách chi tiết thì các nhóm nghiên cứu khác có thể sử dụng ontology này cho miền tri thức của họ.
Để làm rõ ràng các giả thiết trong các miền dữ liệu.
Tạo khả năng thay đổi các giả thiết khi tri thức về miền thay đổi
Để phân biệt tri thức miền với tri thức thực thi.
Là một ứng dụng thông thường của các ontology. Ở đây, ta có thể phân biệt được việc cấu hình một sản phẩm từ những thành phần riêng biệt theo một đặc tả và việc cài đặt một chương trình mà việc cấu hình độc lập với sản phẩm và các thành phần.
Để phân tích tri thức miền.
Việc phân tích tri thức miền là khả thi mỗi khi đặc tả về các thuật ngữ là có sẵn. Các phân tích hình thức thực sự có giá trị khi sử dụng lại và mở rộng các ontology.
Thông thường, việc phát triển một ontology tương tự như việc định nghĩa một tập dữ liệu và các cấu trúc của chúng dùng để thực thi một chương trình. Các phương pháp hoạt động, các ứng dụng độc lập miền và các agent phần mềm sử dụng ontology và các cơ sở tri thức được xây dựng từ các ontology như là dữ liệu cho việc thực thi. Trong môi trường phân tán, ontology được sử dụng để thuần nhất các nguồn dữ liệu ở mức độ ngữ nghĩa và hỗ trợ cho việc tích hợp các dữ liệu không thuần nhất.