Alex Borgida, Charles L. Isbell, and Deborah L. McGuinness
Description Logics (DLs) are distinguished by a number of characteristics, including decidable reasoning algorithms for tasks such as subsumption and consistency checking. The desire for terminating, even efficient, reasoning procedures has led to two alternative approaches to DL system design: complete reasoning for expressively limited languages, and incomplete reasoning for richer languages. The obvious problem with the first approach () is that in many applications one would want to express concepts that cannot be captured. The problem with the second approach is that the language implementer chooses the subset of inferences to be performed once and for all, and must then characterize this to system users. It seems unlikely that the designer’s choices will be appropriate for all applications. There are forces driving extensions of DLs. For example, many application designers are not content with simple individuals related by roles; they need to reason with complicated objects related in complex ways. There have been proposals for extending DLs with plans (whose instances are sequences of action individuals) , temporal values , mathematical objects (real numbers with inequality, tuples, etc.) [2; 9] and other data types. Furthermore, because of user demand, many practical DL systems (e.g., LOOM, classIC, BACK) have introduced concept constructors for describing ranges of integers. We observe however that these languages do not have concept constructors for dealing with strings, dates, and other kinds of objects. And any decision on which of these to support will also be quite arbitrary. For these reasons, it seems useful to provide a facility to add arbitrary new concept constructors to a language, and to be able to extend the reasoning of the system to cover these new constructors. This is especially true for classIC, which takes a relatively extreme position on limiting the set of concept constructors provided, disallowing disjunction and existential quantifiers, for example.