Repository: networknt/json-schema-validator (java)

Issue:
date-time format should consider colon in timezone optional
`2018-07-27T00:00:01.000-0300` date time is valid against all ISO8601/RFC3339 validators I tried, but this validator fails because colon is [necessary per regex](https://github.com/networknt/json-schema-validator/blob/2449ee0947c84f14872436f9ff85c806abbb0051/src/main/java/com/networknt/schema/DateTimeValidator.java#L41).

Pull request description:
Make a colon in date-time format zone optional (close #158)

Patch:
diff --git a/src/main/java/com/networknt/schema/DateTimeValidator.java b/src/main/java/com/networknt/schema/DateTimeValidator.java
index 3b7d920..cc090a7 100644
--- a/src/main/java/com/networknt/schema/DateTimeValidator.java
+++ b/src/main/java/com/networknt/schema/DateTimeValidator.java
@@ -38,7 +38,7 @@ public class DateTimeValidator extends BaseJsonValidator implements JsonValidato
     private static final Pattern RFC3339_PATTERN = Pattern.compile(
             "^(\\d{4})-(\\d{2})-(\\d{2})" // yyyy-MM-dd
                     + "([Tt](\\d{2}):(\\d{2}):(\\d{2})(\\.\\d+)?)?" // 'T'HH:mm:ss.milliseconds
-                    + "([Zz]|([+-])(\\d{2}):(\\d{2}))?");
+                    + "([Zz]|([+-])(\\d{2}):?(\\d{2}))?");
 
     public DateTimeValidator(String schemaPath, JsonNode schemaNode, JsonSchema parentSchema, ValidationContext validationContext, String formatName) {
         super(schemaPath, schemaNode, parentSchema, ValidatorTypeCode.DATETIME, validationContext);


Test patch:
diff --git a/src/test/resources/tests/optional/format.json b/src/test/resources/tests/optional/format.json
index 82bfd7e..dd19f32 100644
--- a/src/test/resources/tests/optional/format.json
+++ b/src/test/resources/tests/optional/format.json
@@ -8,6 +8,11 @@
                 "data": "1963-06-19T08:30:06.283185Z",
                 "valid": true
             },
+            {
+                "description": "a valid date-time string without colon",
+                "data": "2018-07-27T00:00:01.000-0300",
+                "valid": true
+            },
             {
                 "description": "a valid date-time string",
                 "data": "2019-07-24T00:00:01-04:00",