Index: applications/editors/josm/plugins/czechaddress/conscriptionnumber.patch
===================================================================
--- applications/editors/josm/plugins/czechaddress/conscriptionnumber.patch	(revision 16617)
+++ applications/editors/josm/plugins/czechaddress/conscriptionnumber.patch	(revision 16617)
@@ -0,0 +1,66 @@
+Index: src/org/openstreetmap/josm/plugins/czechaddress/PrimUtils.java
+===================================================================
+--- src/org/openstreetmap/josm/plugins/czechaddress/PrimUtils.java	(revision 16615)
++++ src/org/openstreetmap/josm/plugins/czechaddress/PrimUtils.java	(working copy)
+@@ -13,8 +13,9 @@
+     public static final String KEY_HIGHWAY      = "highway";
+     public static final String KEY_PLACE        = "place";
+ 
+-    public static final String KEY_ADDR_CP      = "addr:alternatenumber";
+-    public static final String KEY_ADDR_CO      = "addr:housenumber";
++    public static final String KEY_ADDR_CP      = "addr:conscriptionnumber";
++    public static final String KEY_ADDR_CO      = "addr:streetnumber";
++    public static final String KEY_ADDR_HOUSE_N = "addr:housenumber";
+     public static final String KEY_ADDR_STREET  = "addr:street";
+     public static final String KEY_ADDR_CITY    = "addr:city";
+     public static final String KEY_ADDR_COUNTRY = "addr:country";
+Index: src/org/openstreetmap/josm/plugins/czechaddress/addressdatabase/House.java
+===================================================================
+--- src/org/openstreetmap/josm/plugins/czechaddress/addressdatabase/House.java	(revision 16615)
++++ src/org/openstreetmap/josm/plugins/czechaddress/addressdatabase/House.java	(working copy)
+@@ -92,14 +92,14 @@
+      */
+     public static String generateName(String cp, String co) {
+ 
+-        if ((cp != null) && (co != null))
+-            return cp + "/" + co;
+-
+-        if (co != null) return co;
+-        if (cp != null) return cp;
+-
+-        assert false;
+-        return ""; // <-- just to make compiler happy.
++        if (co == null)
++            return cp;
++        else {
++            if (cp == null)
++                return "?/"+co;
++            else
++                return cp+"/"+co;
++        }
+     }
+ 
+     /**
+@@ -152,11 +152,12 @@
+      */
+     @Override
+     protected int[] getFieldMatchList(OsmPrimitive prim) {
+-        int[] result = {0, 0};
++        int[] result = {0, 0, 0};
+         if (!isMatchable(prim)) return result;
+ 
+         // First field is the AlternateNubmer
+         result[0] = matchField(this.cp, prim.get(PrimUtils.KEY_ADDR_CP));
++        result[2] = matchField(name,    prim.get(PrimUtils.KEY_ADDR_HOUSE_N));
+         
+         // Second field is the Housenumber
+         if (parent instanceof Street)
+@@ -190,6 +191,8 @@
+         List<Proposal> props = new NotNullList<Proposal>();
+         ParentResolver resolver = new ParentResolver(this);
+ 
++        props.add(getStringFieldDiff(PrimUtils.KEY_ADDR_HOUSE_N, prim.get(PrimUtils.KEY_ADDR_HOUSE_N), name));
++
+         props.add(getStringFieldDiff(PrimUtils.KEY_ADDR_CP, prim.get(PrimUtils.KEY_ADDR_CP), getCP()));
+         props.add(getStringFieldDiff(PrimUtils.KEY_ADDR_CO, prim.get(PrimUtils.KEY_ADDR_CO), getCO()));
+ 
