  The Unified Modeling Language is extensible, and so can be regarded as a
family of languages. Implicitly or explicitly, any particular UML model should
be accompanied by a definition of the particular UML family member used for the
model. The definition should cover syntactic and semantic issues. This paper
proposes a mechanism for associating models with such definitions. Any
particular definition would form what we call a preface. The name is intended
to suggest that the definition of a particular UML family member must
conceptually come before any model built using that family member. A preface
would be large, and should be organised using packages. This would allow large
amounts of sharing between different prefaces. The paper proposes that prefaces
should have an axiomatic style of semantics, through not necessarily fully
formal, and it offers a general approach to semantics that would reduce
problems of inconsistency within a large preface, based on the idea of general
cases and special cases
