A metalevel is a special kind of object that has as feature values the methods that can be possibly be used in to infer the feature values of the corresponding referent. In this section, we will see that--since metalevels are just plain feature terms-- a metalevel feature can also be specified by means of a method that infers a feature value. Certainly, a feature value inferred by a metalevel method should be a method or set of methods.
There are two basic ways in which a method can produce as result other methods: searching for already defined methods or constructing new methods (basically putting together other defined methods or built-in methods). We will presently explain metalevel methods that search for and selects from other methods--for creating new methods see Chapter 14.
In the following example, a metalevel method is defined for family-name. Since family names in women change when they marry in several countries (albeit not in all) and family names of men do not, methods for family-names are separately specified in woman and man. The metalevel method for family-name is specified in a way that accesses and obtains different methods for inferring the family names of man and women after consulting the gender of a particular person. The referent construct is a reflective operation that denotes the referent of a metalevel--in this case the person of the metalevel involved.