<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def cauldron_extras(self):
 """ Yield extra tuples containing a field name and a callable that takes a row """

        for extra in super(Dimension, self).cauldron_extras:
            yield extra

        if self.formatters:
            prop = self.id + '_raw'
        else:
            prop = self.id_prop

        yield self.id + '_id', lambda row: getattr(row, prop)