code: public String getBaseSkeleton(String pattern) {
          synchronized (this) { // synchronized since a getter must be thread-safe
              current.set(pattern, fp, false);
              return current.getBasePattern();
          }
      }
docs: Utility to return a unique base skeleton from a given pattern. This is
  the same as the skeleton, except that differences in length are minimized
  so as to only preserve the difference between string and numeric form. So
  for example, both "MMM-dd" and "d/MMM" produce the skeleton "MMMd"
  (notice the single d).
  
  @param pattern Input pattern, such as "dd/MMM"
  @return skeleton, such as "MMMdd"