code: private Object evaluateDefaultValue()
      {
          Object val = _defaultValue;
  
          List defaults = null;
          if (val instanceof String) {
              if ("checked".equals(val)) {
                  _defaultSingleton = true;
                  _defaultSingleValue = true;
                  return null;
              }
              else if ("unchecked".equals(val)) {
                  _defaultSingleton = true;
                  _defaultSingleValue = false;
                  return null;
              }
  
              defaults = new ArrayList();
              defaults.add(val);
              return defaults;
          }
  
          Iterator optionsIterator = null;
          optionsIterator = IteratorFactory.createIterator(val);
  
          // log an error, default value is optional so only warn
          if (optionsIterator == null && _defaultValue != null) {
              logger.warn(Bundle.getString("Tags_IteratorError",
                      new Object[]{getTagName(), "defaultValue", _defaultValue}));
          }
          if (optionsIterator == null)
              optionsIterator = IteratorFactory.EMPTY_ITERATOR;
  
          defaults = new ArrayList();
          while (optionsIterator.hasNext()) {
              defaults.add(optionsIterator.next());
          }
  
          return defaults;
      }
docs: Overrided method to return a list of the possible default values.  The method always return either
  a <code>List</code> or null.
  @return a <code>List</code> that represents the default value.