docs: public static String createEventDateFromParts(String verbatimEventDate, String startDayOfYear, String endDayOfYear, String year, String month, String day) {
  		String result = null;
  
  		if (verbatimEventDate!=null && verbatimEventDate.trim().length()>0) { 
  			Map<String,String> verbatim = extractDateToDayFromVerbatim(verbatimEventDate, DateUtils.YEAR_BEFORE_SUSPECT); 
  			if (verbatim.size()>0) { 
  				if (verbatim.get("resultState")!=null && verbatim.get("resultState").equals("date")) { 
  					result = verbatim.get("result");
  				}
  				if (verbatim.get("resultState")!=null && verbatim.get("resultState").equals("ambiguous")) { 
  					result = verbatim.get("result");
  				}		
  				if (verbatim.get("resultState")!=null && verbatim.get("resultState").equals("range")) { 
  					result = verbatim.get("result");
  				}					
  			}
  		}
  		if (year!=null && year.matches("[0-9]{4}") && isEmpty(month) && isEmpty(day) && isEmpty(startDayOfYear)) { 
  		    result = year;
  		}		
  		if (year!=null && year.matches("[0-9]{4}") && 
  				(month==null || month.trim().length()==0) && 
  				( day==null || day.trim().length()==0 ) && 
  				startDayOfYear !=null && startDayOfYear.trim().length() > 0
  				) {
  			try { 
  				StringBuffer assembly = new StringBuffer();
  				if (!isEmpty(endDayOfYear) && !startDayOfYear.trim().equals(endDayOfYear.trim())) {  
  					assembly.append(year).append("-").append(String.format("%03d",Integer.parseInt(startDayOfYear))).append("/");
  					assembly.append(year).append("-").append(String.format("%03d",Integer.parseInt(endDayOfYear)));
  				} else { 
  					assembly.append(year).append("-").append(String.format("%03d",Integer.parseInt(startDayOfYear)));
  				}
  			    Map<String,String> verbatim = extractDateToDayFromVerbatim(assembly.toString(), DateUtils.YEAR_BEFORE_SUSPECT) ;
  			    logger.debug(verbatim.get("resultState"));
  			    logger.debug(verbatim.get("result"));
  				if (verbatim.get("resultState")!=null && (verbatim.get("resultState").equals("date") || verbatim.get("resultState").equals("range"))) { 
  					result = verbatim.get("result");
  				}
  			} catch (Exception e) {
  				logger.debug(e.getMessage());
  			}
  		}		
  		if (    (verbatimEventDate!=null && verbatimEventDate.matches("^[0-9]{4}$")) &&
  				(year==null || year.trim().length()==0) && 
  				(month==null || month.trim().length()==0) && 
  				( day==null || day.trim().length()==0 ) && 
  				startDayOfYear !=null && startDayOfYear.trim().length() > 0
  				) {
  			try { 
  				StringBuffer assembly = new StringBuffer();
  				if (endDayOfYear !=null && endDayOfYear.trim().length() > 0 && !startDayOfYear.trim().equals(endDayOfYear.trim())) {  
  					assembly.append(verbatimEventDate).append("-").append(String.format("%03d",Integer.parseInt(startDayOfYear))).append("/");
  					assembly.append(verbatimEventDate).append("-").append(String.format("%03d",Integer.parseInt(endDayOfYear)));
  				} else { 
  					assembly.append(verbatimEventDate).append("-").append(String.format("%03d",Integer.parseInt(startDayOfYear)));
  				}
  			    Map<String,String> verbatim = extractDateToDayFromVerbatim(assembly.toString(), DateUtils.YEAR_BEFORE_SUSPECT) ;
  			    logger.debug(verbatim.get("resultState"));
  			    logger.debug(verbatim.get("result"));
  				if (verbatim.get("resultState")!=null && (verbatim.get("resultState").equals("date") || verbatim.get("resultState").equals("range"))) { 
  					result = verbatim.get("result");
  				}
  			} catch (Exception e) {
  				logger.debug(e.getMessage());
  			}
  		}			
  		if (year!=null && year.matches("[0-9]{4}") && month!=null && month.matches("[0-9]{1,2}") &&( day==null || day.trim().length()==0 )) {  
  		    result = String.format("%04d",Integer.parseInt(year)) + "-" + String.format("%02d",Integer.parseInt(month));
  		}
  		if (year!=null && year.matches("[0-9]{4}") && month!=null && month.matches("[0-9]{1,2}") && day!=null && day.matches("[0-9]{1,2}")) {  
  		    result = String.format("%04d",Integer.parseInt(year)) + "-" + 
                       String.format("%02d",Integer.parseInt(month)) + "-" + 
                       String.format("%02d",Integer.parseInt(day));
  		}
  		return result;
  	}