Next, the example places columnNames and the two types parameters in a fieldMap (lines 73-75). The use of two data type columns in the fieldMap warrants further discussion. The desired behavior is to automatically update the data type when the column name changes, but to also allow the adapter user to enter an alternative data type for the given field and to (presumably) have the adapter convert the data at run time. In order to have the type value change with the columnName, the resource domain associated with the parameter must be "complete" (as specified by the setComplete method being set to true; see
Registering Resource Domains). Users are not allowed to type values into fields of a "complete" resource domain. Because of these conflicting constraints, it is necessary to have two parameters with different resource domain associations: one updated by the Adapter Service Editor, and the other by the adapter user.