107 | 107 | Archetype Definition Language, or ADL, is a formal language for expressing archetypes, and can be categorised as a knowledge description language. It provides a formal, abstract syntax for describing constraints on any domain entity whose data is described by an information model (e.g. expressed in UML/OCL). The syntax is congruent with Frame Logic (PDF of original paper by Michael Kifer) queries. It is primarily useful when very generic information models are used for representing all data in a system, for example, where the logical concepts Patient, Doctor and Hospital might all be represented using the class Party, Address, and related generic classes. Archetypes are then used to constrain the valid structures of instances of these generic classes to represent the desired domain concepts. In this way future-proof information systems can be built - relatively simple information models and database schemas can be defined, and archetypes supply the specific modelling, completely outside the software. |