docs: def name(self):
          """ Provides a nice name for the field which is derived from the alias, caption, or the id.
  
          The name resolves as either the alias if it's defined, or the caption if alias is not defined,
          and finally the id which is the underlying name if neither of the fields exist. """
          alias = getattr(self, 'alias', None)
          if alias:
              return alias
  
          caption = getattr(self, 'caption', None)
          if caption:
              return caption
  
          return self.id