Read First: Object Type Specializing is another word for subtyping. The mappings, relations, and operations that apply to a specialized type should generally result in a smaller set of objects that are instances of that type. For example, if we subtype the Animal object type into the Dog object type, then we are adding features to Dog, such as long teeth, which reduces the number of objects that can be in the set of Dogs. This is the set-based interpretation of specialization, which OOIE adopts. Read First: Relation, Mapping There are various ways to specialize an object type: 1) Add relations, mappings, or operations to the type. As new features are added to the object type, fewer objects will generally have those features. For example, if we have an object type that says nothing at all, all objects will conform to it. As we say things about the object type, it will apply to fewer objects. 2) Restrict the types associated with the relations, mappings, and operations. For example, suppose we have a driving relation between vehicles and people. If we restrict the people that can drive a particular kind of vehicle, then we have made a specialization of vehicles. For example, trucks can only be driven by people with a particular kind of license. Similarly specializations can be created by restricting the range of mappings, and the types input to and output from operations, as well as the events resulting from operations. 3) Restrict the cardinalities associated with the relations, mappings, and operation. For example, suppose that have a relation between restaurants and the customers it has in it at any given time. In general we might not restrict this number, but if we restrict it to 20, for example, then we are forming a specialization for smallrestaurants. The first technique adds new features to those that are inherited, whereas the second two modify inherited features. This means that the second two techniques. reduce the reusability of the subtypes, because the subtypes cannot be used in all the ways that their supertypes can. Read First: Object Type, Relation, Mapping