docs: private List<String> getDefaultTextValue(FormField field) {
  
  		// Get the Id
  		String fieldId = field.getName();
  
  		// Create new HashMap 'fieldAttributes' and new list 'definedValues'
  		Map<String, String> fieldAttributes = new HashMap<String, String>();
  		List<String> definedValues = new ArrayList<String>();
  
  		//Store all values in the FormFiled field into the Map 'fieldAttributes'
  		fieldAttributes.putAll(field.getFormControl().getAttributesMap());
  
  		// Places a key, Control Type, for each FormControlType
  		fieldAttributes.put("Control Type", field.getFormControl().getFormControlType().name());
  
  
  		//Handles Submit Fields
  		if (field.getFormControl().getFormControlType().isSubmit()) {
  			List<String> submitFields = new ArrayList<String>();
  			for (String value : field.getPredefinedValues()){
  				String finalValue = this.valueGenerator.getValue(uri, url, fieldId, value, definedValues, envAttributes, fieldAttributes);
  				submitFields.add(finalValue);
  			}
  			return submitFields;
  		}
  
  		// Get its value(s)
  		List<String> values = field.getValues();
  		String defaultValue;
  
  		//If the field has a value attribute present(Predefined value)
  		//Should store the value being submitted to be passed to the ValueGenerator
  		if(field.getFormControl().getAttributesMap().containsKey("value")){
  			defaultValue = field.getFormControl().getAttributesMap().get("value");
  		}
  
  		if (log.isDebugEnabled()) {
  			log.debug("Existing values: " + values);
  		}
  
  		// If there are no values at all or only an empty value
  		if (values.isEmpty() || (values.size() == 1 && values.get(0).isEmpty())) {
  			defaultValue = DEFAULT_EMPTY_VALUE;
  
  			// Check if we can use predefined values
  			Collection<String> predefValues = field.getPredefinedValues();
  			if (!predefValues.isEmpty()) {
  				//Store those predefined values in a list for the DefaultValueGenerator
  				definedValues.addAll(predefValues);
  				// Try first elements
  				Iterator<String> iterator = predefValues.iterator();
  				defaultValue = iterator.next();
  
  				// If there are more values, don't use the first, as it usually is a "No select"
  				// item
  				if (iterator.hasNext()) {
  					defaultValue = iterator.next();
  				}
  			}
  
  		} else {
  			defaultValue = values.get(0);
  		}
  
  		//Get the default value used in DefaultValueGenerator
  		String finalValue = this.valueGenerator.getValue(uri, url, fieldId, defaultValue, definedValues, envAttributes, fieldAttributes);
  
  		log.debug("Generated: " + finalValue + "For field " + field.getName());
  
  		values = new ArrayList<>(1);
  		values.add(finalValue);
  
  		return values;
  	}