Index: src/org/openstreetmap/josm/data/validation/tests/OpeningHourTest.java
===================================================================
--- src/org/openstreetmap/josm/data/validation/tests/OpeningHourTest.java	(revision 18452)
+++ src/org/openstreetmap/josm/data/validation/tests/OpeningHourTest.java	(working copy)
@@ -42,6 +42,8 @@
     private static final Collection<String> KEYS_TO_CHECK = Arrays.asList("opening_hours", "collection_times", "service_times");
     private static final BooleanProperty PREF_STRICT_MODE =
             new BooleanProperty(ValidatorPrefHelper.PREFIX + "." + OpeningHourTest.class.getSimpleName() + "." + "strict", false);
+    private static final BooleanProperty PREF_STRICT_TIME_MODE =
+            new BooleanProperty(ValidatorPrefHelper.PREFIX + "." + OpeningHourTest.class.getSimpleName() + "." + "strict_time", false);
     private final JCheckBox checkboxStrictMode = new JCheckBox(tr("Enable strict mode."));
 
     /**
@@ -102,11 +104,12 @@
         String prettifiedValue = null;
         try {
             final boolean strict = PREF_STRICT_MODE.get();
-            final List<Rule> rules = new OpeningHoursParser(new StringReader(value)).rules(strict);
+            final boolean strictTime = PREF_STRICT_TIME_MODE.get();
+            final List<Rule> rules = new OpeningHoursParser(new StringReader(value)).rules(strict, strictTime);
             prettifiedValue = Util.rulesToOpeningHoursString(rules);
             if (!Objects.equals(value, prettifiedValue) && !strict) {
                 // parse again in strict mode for detailed message
-                new OpeningHoursParser(new StringReader(value)).rules(true);
+                new OpeningHoursParser(new StringReader(value)).rules(true, strictTime);
             }
         } catch (OpeningHoursParseException e) {
             String message = e.getExceptions().stream()
