Index: trunk/src/org/openstreetmap/josm/data/osm/NodeData.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/osm/NodeData.java	(revision 12015)
+++ trunk/src/org/openstreetmap/josm/data/osm/NodeData.java	(revision 12017)
@@ -21,4 +21,13 @@
     public NodeData() {
         // contents can be set later with setters
+    }
+
+    /**
+     * Constructs a new {@code NodeData} with given id.
+     * @param id id
+     * @since 12017
+     */
+    public NodeData(long id) {
+        super(id);
     }
 
Index: trunk/src/org/openstreetmap/josm/data/osm/PrimitiveData.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/osm/PrimitiveData.java	(revision 12015)
+++ trunk/src/org/openstreetmap/josm/data/osm/PrimitiveData.java	(revision 12017)
@@ -27,5 +27,14 @@
      */
     public PrimitiveData() {
-        id = OsmPrimitive.generateUniqueId();
+        this(OsmPrimitive.generateUniqueId());
+    }
+
+    /**
+     * Constructs a new {@code PrimitiveData} with given id.
+     * @param id id
+     * @since 12017
+     */
+    public PrimitiveData(long id) {
+        this.id = id;
     }
 
Index: trunk/src/org/openstreetmap/josm/data/osm/RelationData.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/osm/RelationData.java	(revision 12015)
+++ trunk/src/org/openstreetmap/josm/data/osm/RelationData.java	(revision 12017)
@@ -21,4 +21,13 @@
     public RelationData() {
         // contents can be set later with setters
+    }
+
+    /**
+     * Constructs a new {@code RelationData} with given id.
+     * @param id id
+     * @since 12017
+     */
+    public RelationData(long id) {
+        super(id);
     }
 
Index: trunk/src/org/openstreetmap/josm/data/osm/WayData.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/osm/WayData.java	(revision 12015)
+++ trunk/src/org/openstreetmap/josm/data/osm/WayData.java	(revision 12017)
@@ -17,4 +17,13 @@
     public WayData() {
         // contents can be set later with setters
+    }
+
+    /**
+     * Constructs a new {@code WayData} with given id.
+     * @param id id
+     * @since 12017
+     */
+    public WayData(long id) {
+        super(id);
     }
 
