Index: trunk/src/org/openstreetmap/josm/data/validation/tests/ConditionalKeys.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/validation/tests/ConditionalKeys.java	(revision 19444)
+++ trunk/src/org/openstreetmap/josm/data/validation/tests/ConditionalKeys.java	(revision 19445)
@@ -30,5 +30,5 @@
             "fee", "restriction", "interval", "duration", "dog", "maxweightrating"));
     private static final Set<String> RESTRICTION_VALUES = new HashSet<>(Arrays.asList("yes", "official", "designated", "destination",
-            "delivery", "customers", "permissive", "private", "agricultural", "forestry", "no"));
+            "delivery", "customers", "permissive", "private", "agricultural", "forestry", "no", "permit"));
     private static final Set<String> TRANSPORT_MODES = new HashSet<>(Arrays.asList("access", "foot", "ski", "inline_skates", "ice_skates",
             "horse", "vehicle", "bicycle", "carriage", "trailer", "caravan", "motor_vehicle", "motorcycle", "moped", "mofa",
Index: trunk/test/unit/org/openstreetmap/josm/data/validation/tests/ConditionalKeysTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/data/validation/tests/ConditionalKeysTest.java	(revision 19444)
+++ trunk/test/unit/org/openstreetmap/josm/data/validation/tests/ConditionalKeysTest.java	(revision 19445)
@@ -61,4 +61,5 @@
         assertTrue(test.isValueValid("maxspeed:hgv:conditional", "60 @ (weight>7.5)"));
         assertTrue(test.isValueValid("restriction:conditional", "no_left_turn @ (Mo-Fr 16:00-18:00)"));
+        assertTrue(test.isValueValid("access:conditional", "permit @ Apr-Nov")); // #24531
     }
 }
