In subject-oriented programming, a subject is a collection of classes or class fragments whose {class hierarchy} models ITs domain in ITs own, subjective way. A subject may be a complete application in ITself, or IT may be an incomplete fragment that must be composed wITh other subjects to produce a complete application. Subject composITion combines class hierarchies to produce new subjects that incorporate functionalITy from existing subjects. (1999-08-31)