Index: trunk/src/org/openstreetmap/josm/data/validation/tests/RelationChecker.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/validation/tests/RelationChecker.java	(revision 10978)
+++ trunk/src/org/openstreetmap/josm/data/validation/tests/RelationChecker.java	(revision 10981)
@@ -17,4 +17,5 @@
 import org.openstreetmap.josm.command.DeleteCommand;
 import org.openstreetmap.josm.data.osm.OsmPrimitive;
+import org.openstreetmap.josm.data.osm.OsmPrimitiveType;
 import org.openstreetmap.josm.data.osm.Relation;
 import org.openstreetmap.josm.data.osm.RelationMember;
@@ -200,9 +201,9 @@
      */
     private boolean checkMemberExpressionAndType(RolePreset rolePreset, RelationMember member, Relation n) {
-        TestError possibleMatchError = null;
         if (rolePreset == null || rolePreset.roles == null) {
             // no restrictions on role types
             return true;
         }
+        TestError possibleMatchError = null;
         // iterate through all of the role definition within preset
         // and look for any matching definition
@@ -233,8 +234,11 @@
                                     tr(s, r.memberExpression, rolePreset.name), s, WRONG_TYPE,
                                     member.getMember().isUsable() ? member.getMember() : n);
-
                         }
                     }
                 }
+            } else if (OsmPrimitiveType.RELATION.equals(member.getType()) && !member.getMember().isUsable()
+                    && r.types.contains(TaggingPresetType.MULTIPOLYGON)) {
+                // if relation is incomplete we cannot verify if it's a multipolygon - so we just skip it
+                return true;
             }
         }
