Index: /trunk/data/validator/highway.mapcss
===================================================================
--- /trunk/data/validator/highway.mapcss	(revision 6548)
+++ /trunk/data/validator/highway.mapcss	(revision 6549)
@@ -58,4 +58,12 @@
 }
 
+way[foot][highway =~ /motorway|trunk|primary|secondary|tertiary/] {
+  throwWarning: tr("{0} used with {1}", "{0.key}", "{1.tag}");
+  suggestAlternative: "sidewalk";
+  suggestAlternative: "separate footway";
+  assertMatch: "way highway=primary foot=yes";
+  assertNoMatch: "way highway=primary";
+}
+
 way[highway=road] {
   throwWarning: tr("temporary highway type");
@@ -107,6 +115,2 @@
   assertNoMatch: "way name=Foobarstraße";
 }
-
-/*
-TODO: * : W : / *name * /i == * && name != * # misspelled key name
-*/
Index: /trunk/src/org/openstreetmap/josm/data/validation/tests/MapCSSTagChecker.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/data/validation/tests/MapCSSTagChecker.java	(revision 6548)
+++ /trunk/src/org/openstreetmap/josm/data/validation/tests/MapCSSTagChecker.java	(revision 6549)
@@ -62,5 +62,5 @@
         protected final List<PrimitiveToTag> change = new ArrayList<PrimitiveToTag>();
         protected final Map<String, String> keyChange = new LinkedHashMap<String, String>();
-        protected final List<Tag> alternatives = new ArrayList<Tag>();
+        protected final List<String> alternatives = new ArrayList<String>();
         protected final Map<String, Severity> errors = new HashMap<String, Severity>();
         protected final Map<String, Boolean> assertions = new HashMap<String, Boolean>();
@@ -128,5 +128,5 @@
                         check.keyChange.put(x[0].trim(), x[1].trim());
                     } else if ("suggestAlternative".equals(ai.key) && val != null) {
-                        check.alternatives.add(val.contains("=") ? Tag.ofString(val) : new Tag(val));
+                        check.alternatives.add(val);
                     } else if ("assertMatch".equals(ai.key) && val != null) {
                         check.assertions.put(val, true);
