Added optional option for valididentifier_s_ validation.
diff --git a/src/main/java/io/mifos/core/lang/validation/CheckIdentifiers.java b/src/main/java/io/mifos/core/lang/validation/CheckIdentifiers.java
index 183b6ac..f739eb3 100644
--- a/src/main/java/io/mifos/core/lang/validation/CheckIdentifiers.java
+++ b/src/main/java/io/mifos/core/lang/validation/CheckIdentifiers.java
@@ -26,14 +26,20 @@
  */
 public class CheckIdentifiers implements ConstraintValidator<ValidIdentifiers, List<String>> {
   private int maximumLength = 32;
+  private boolean optional;
+
   @Override
   public void initialize(final ValidIdentifiers constraintAnnotation) {
     maximumLength = constraintAnnotation.maxLength();
+    optional = constraintAnnotation.optional();
 
   }
 
   @Override
   public boolean isValid(final List<String> value, final ConstraintValidatorContext context) {
+    if (optional && value == null)
+      return true;
+
     return value != null && value.stream().allMatch(x -> x != null && CheckIdentifier.validate(x, maximumLength));
   }
 }
diff --git a/src/main/java/io/mifos/core/lang/validation/constraints/ValidIdentifiers.java b/src/main/java/io/mifos/core/lang/validation/constraints/ValidIdentifiers.java
index d881860..f4b2533 100644
--- a/src/main/java/io/mifos/core/lang/validation/constraints/ValidIdentifiers.java
+++ b/src/main/java/io/mifos/core/lang/validation/constraints/ValidIdentifiers.java
@@ -43,4 +43,5 @@
   Class<? extends Payload>[] payload() default { };
 
   int maxLength() default 32;
+  boolean optional() default false;
 }
\ No newline at end of file