Index: /trunk/src/org/openstreetmap/josm/data/validation/tests/MultipolygonTest.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/data/validation/tests/MultipolygonTest.java	(revision 6730)
+++ /trunk/src/org/openstreetmap/josm/data/validation/tests/MultipolygonTest.java	(revision 6731)
@@ -5,4 +5,5 @@
 
 import java.awt.geom.GeneralPath;
+import java.text.MessageFormat;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -191,11 +192,13 @@
                         final String roleInNewMP = memberInNewMP.iterator().next().getRole();
                         if (!member.getRole().equals(roleInNewMP)) {
-                            addError(r, new TestError(this, Severity.WARNING, tr("Role for ''{0}'' should be ''{1}''",
-                                    member.getMember().getDisplayName(DefaultNameFormatter.getInstance()), roleInNewMP),
+                            addError(r, new TestError(this, Severity.WARNING, RelationChecker.ROLE_VERIF_PROBLEM_MSG,
+                                    tr("Role for ''{0}'' should be ''{1}''",
+                                            member.getMember().getDisplayName(DefaultNameFormatter.getInstance()), roleInNewMP),
+                                    MessageFormat.format("Role for ''{0}'' should be ''{1}''",
+                                            member.getMember().getDisplayName(DefaultNameFormatter.getInstance()), roleInNewMP),
                                     WRONG_MEMBER_ROLE, Collections.singleton(r), Collections.singleton(member.getMember())));
                         }
                     }
                 }
-
             }
 
Index: /trunk/src/org/openstreetmap/josm/data/validation/tests/RelationChecker.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/data/validation/tests/RelationChecker.java	(revision 6730)
+++ /trunk/src/org/openstreetmap/josm/data/validation/tests/RelationChecker.java	(revision 6731)
@@ -45,4 +45,10 @@
     protected static final int RELATION_UNKNOWN  = 1707;
     protected static final int RELATION_EMPTY    = 1708;
+    
+    /** 
+     * Error message used to group errors related to role problems.
+     * @since 6731
+     */
+    public static final String ROLE_VERIF_PROBLEM_MSG = tr("Role verification problem");
 
     /**
@@ -142,5 +148,4 @@
             } else {
                 LinkedList<String> done = new LinkedList<String>();
-                String errorMessage = tr("Role verification problem");
                 for (Role r : allroles) {
                     done.add(r.key);
@@ -155,14 +160,14 @@
                         if (count == 0) {
                             String s = marktr("Role {0} missing");
-                            errors.add(new TestError(this, Severity.WARNING, errorMessage,
+                            errors.add(new TestError(this, Severity.WARNING, ROLE_VERIF_PROBLEM_MSG,
                                     tr(s, keyname), MessageFormat.format(s, keyname), ROLE_MISSING, n));
                         }
                         else if (vc > count) {
                             String s = marktr("Number of {0} roles too low ({1})");
-                            errors.add(new TestError(this, Severity.WARNING, errorMessage,
+                            errors.add(new TestError(this, Severity.WARNING, ROLE_VERIF_PROBLEM_MSG,
                                     tr(s, keyname, count), MessageFormat.format(s, keyname, count), LOW_COUNT, n));
                         } else {
                             String s = marktr("Number of {0} roles too high ({1})");
-                            errors.add(new TestError(this, Severity.WARNING, errorMessage,
+                            errors.add(new TestError(this, Severity.WARNING, ROLE_VERIF_PROBLEM_MSG,
                                     tr(s, keyname, count), MessageFormat.format(s, keyname, count), HIGH_COUNT, n));
                         }
@@ -194,5 +199,5 @@
                             LinkedList<OsmPrimitive> highlight = new LinkedList<OsmPrimitive>(wrongTypes);
                             highlight.addFirst(n);
-                            errors.add(new TestError(this, Severity.WARNING, errorMessage,
+                            errors.add(new TestError(this, Severity.WARNING, ROLE_VERIF_PROBLEM_MSG,
                                     tr(s, keyname), MessageFormat.format(s, keyname), WRONG_TYPE,
                                     highlight, wrongTypes));
@@ -204,9 +209,9 @@
                         if (key.length() > 0) {
                             String s = marktr("Role {0} unknown");
-                            errors.add(new TestError(this, Severity.WARNING, errorMessage,
+                            errors.add(new TestError(this, Severity.WARNING, ROLE_VERIF_PROBLEM_MSG,
                                     tr(s, key), MessageFormat.format(s, key), ROLE_UNKNOWN, n));
                         } else {
                             String s = marktr("Empty role found");
-                            errors.add(new TestError(this, Severity.WARNING, errorMessage,
+                            errors.add(new TestError(this, Severity.WARNING, ROLE_VERIF_PROBLEM_MSG,
                                     tr(s), s, ROLE_EMPTY, n));
                         }
