Index: applications/editors/josm/plugins/validator/build.xml
===================================================================
--- applications/editors/josm/plugins/validator/build.xml	(revision 18927)
+++ applications/editors/josm/plugins/validator/build.xml	(revision 18928)
@@ -26,6 +26,6 @@
 	  ** update before publishing 
 	-->
-	<property name="commit.message" value="Updated build.xml" />		
-	<property name="plugin.main.version" value="2452" />
+	<property name="commit.message" value="Updated to new referrer support in OsmPrimitive" />		
+	<property name="plugin.main.version" value="2565" />
 		
 		
Index: applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/Test.java
===================================================================
--- applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/Test.java	(revision 18927)
+++ applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/Test.java	(revision 18928)
@@ -11,5 +11,4 @@
 
 import org.openstreetmap.josm.command.Command;
-import org.openstreetmap.josm.data.osm.BackreferencedDataSet;
 import org.openstreetmap.josm.data.osm.Node;
 import org.openstreetmap.josm.data.osm.OsmPrimitive;
@@ -61,10 +60,4 @@
     /** the progress monitor to use */
     protected ProgressMonitor progressMonitor;
-
-    /**
-     * the data structure with child->parent references
-     */
-    protected BackreferencedDataSet backreferenceDataSet;
-
     /**
      * Constructor
@@ -100,5 +93,4 @@
      */
     public void startTest(ProgressMonitor progressMonitor) {
-        backreferenceDataSet = new BackreferencedDataSet();
         if (progressMonitor == null) {
                 this.progressMonitor = NullProgressMonitor.INSTANCE;
@@ -135,5 +127,4 @@
         progressMonitor.finishTask();
         progressMonitor = null;
-        backreferenceDataSet = null;
     }
 
Index: applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/ValidatorDialog.java
===================================================================
--- applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/ValidatorDialog.java	(revision 18927)
+++ applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/ValidatorDialog.java	(revision 18928)
@@ -144,5 +144,4 @@
         Set<DefaultMutableTreeNode> processedNodes = new HashSet<DefaultMutableTreeNode>();
 
-        DuplicateNode.clearBackreferences();
         LinkedList<TestError> errorsToFix = new LinkedList<TestError>();
         for (TreePath path : selectionPaths) {
Index: applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/tests/DuplicateNode.java
===================================================================
--- applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/tests/DuplicateNode.java	(revision 18927)
+++ applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/tests/DuplicateNode.java	(revision 18928)
@@ -16,5 +16,4 @@
 import org.openstreetmap.josm.command.Command;
 import org.openstreetmap.josm.data.coor.LatLon;
-import org.openstreetmap.josm.data.osm.BackreferencedDataSet;
 import org.openstreetmap.josm.data.osm.Node;
 import org.openstreetmap.josm.data.osm.OsmPrimitive;
@@ -31,17 +30,4 @@
  */
 public class DuplicateNode extends Test{
-
-	private static BackreferencedDataSet backreferences;
-
-	public static BackreferencedDataSet getBackreferenceDataSet() {
-		if (backreferences == null) {
-			backreferences = new BackreferencedDataSet();
-		}
-		return backreferences;
-	}
-
-	public static void clearBackreferences() {
-		backreferences = null;
-	}
 
     protected static int DUPLICATE_NODE = 1;
@@ -112,5 +98,5 @@
         Node target = MergeNodesAction.selectTargetNode(nodes);
         if(checkAndConfirmOutlyingDeletes(nodes))
-            return MergeNodesAction.mergeNodes(Main.main.getEditLayer(),getBackreferenceDataSet(), nodes, target);
+            return MergeNodesAction.mergeNodes(Main.main.getEditLayer(), nodes, target);
 
         return null;// undoRedo handling done in mergeNodes
Index: applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/tests/UnclosedWays.java
===================================================================
--- applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/tests/UnclosedWays.java	(revision 18927)
+++ applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/tests/UnclosedWays.java	(revision 18928)
@@ -104,5 +104,5 @@
 
         if (type != null && !w.isClosed()) {
-            for (OsmPrimitive parent: this.backreferenceDataSet.getParents(w)) {
+            for (OsmPrimitive parent: w.getReferrers()) {
                 if (parent instanceof Relation && "multipolygon".equals(parent.get("type")))
                     return;
