code: function() {
  
        var response = true;
        
        var uniques = {}; // Hash for unique values option
        var l = this.subFields.length;
  
        // Validate maxItems / minItems
        if( lang.isNumber(this.options.minItems) && l < this.options.minItems  ) {
           response = false;
        }
        if( lang.isNumber(this.options.maxItems) && l > this.options.maxItems  ) {
           response = false;
        }
  
        // Validate all the sub fields
        for (var i = 0 ; i < l && response; i++) {
           var input = this.subFields[i];
           input.setClassFromState(); // update field classes (mark invalid fields...)
           var state = input.getState();
           if( state == inputEx.stateRequired || state == inputEx.stateInvalid ) {
              response = false; // but keep looping on fields to set classes
           }
           if(this.options.unique) {
              var hash = lang.dump(input.getValue());
              if(uniques[hash]) {
                 response = false;    // not unique
              } else {
                 uniques[hash] = true;
              }
            }
        }
        return response;
     }
docs: Validate each field
  @returns {Boolean} true if all fields validate, required fields are not empty and unique constraint (if specified) is not violated