code: public static final DateIntervalFormat 
          getInstance(String skeleton, ULocale locale)  
      {
          DateTimePatternGenerator generator = DateTimePatternGenerator.getInstance(locale);
          return new DateIntervalFormat(skeleton, locale, new SimpleDateFormat(generator.getBestPattern(skeleton), locale));
      }
docs: Construct a DateIntervalFormat from skeleton and a given locale.
  <P>
  In this factory method,
  the date interval pattern information is load from resource files.
  Users are encouraged to created date interval formatter this way and
  to use the pre-defined skeleton macros.
  
  <P>
  There are pre-defined skeletons in DateFormat,
  such as MONTH_DAY, YEAR_MONTH_WEEKDAY_DAY etc.
  
  Those skeletons have pre-defined interval patterns in resource files.
  Users are encouraged to use them.
  For example:
  DateIntervalFormat.getInstance(DateFormat.MONTH_DAY, false, loc);
  
  The given Locale provides the interval patterns.
  For example, for en_GB, if skeleton is YEAR_ABBR_MONTH_WEEKDAY_DAY,
  which is "yMMMEEEd",
  the interval patterns defined in resource file to above skeleton are:
  "EEE, d MMM, yyyy - EEE, d MMM, yyyy" for year differs,
  "EEE, d MMM - EEE, d MMM, yyyy" for month differs,
  "EEE, d - EEE, d MMM, yyyy" for day differs,
  @param skeleton  the skeleton on which interval format based.
  @param locale    the given locale
  @return          a date time interval formatter.