code: public static final void parseExtendedAttribute(ProjectFile file, FieldContainer mpx, String value, FieldType mpxFieldID, TimeUnit durationFormat)
     {
        if (mpxFieldID != null)
        {
           switch (mpxFieldID.getDataType())
           {
              case STRING:
              {
                 mpx.set(mpxFieldID, value);
                 break;
              }
  
              case DATE:
              {
                 mpx.set(mpxFieldID, parseExtendedAttributeDate(value));
                 break;
              }
  
              case CURRENCY:
              {
                 mpx.set(mpxFieldID, parseExtendedAttributeCurrency(value));
                 break;
              }
  
              case BOOLEAN:
              {
                 mpx.set(mpxFieldID, parseExtendedAttributeBoolean(value));
                 break;
              }
  
              case NUMERIC:
              {
                 mpx.set(mpxFieldID, parseExtendedAttributeNumber(value));
                 break;
              }
  
              case DURATION:
              {
                 mpx.set(mpxFieldID, parseDuration(file, durationFormat, value));
                 break;
              }
  
              default:
              {
                 break;
              }
           }
        }
     }
docs: Parse an extended attribute value.
  
  @param file parent file
  @param mpx parent entity
  @param value string value
  @param mpxFieldID field ID
  @param durationFormat duration format associated with the extended attribute