@Override
 public boolean hasField(SchemaId fieldId) {
   QName qname = mapping.get(fieldId);
   if (qname == null) {
     return false;
   }
   // Normally, we will only have a mapping for fields which are actually in the record,
   // but just to be sure:
   return record.hasField(qname);
 }
 @Override
 public boolean hasField(String fieldName) throws RecordException {
   return record.hasField(fieldName);
 }
 @Override
 public boolean hasField(QName fieldName) {
   return record.hasField(fieldName);
 }