Index: /trunk/src/org/openstreetmap/josm/gui/tagging/TaggingPresetItems.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/tagging/TaggingPresetItems.java	(revision 6436)
+++ /trunk/src/org/openstreetmap/josm/gui/tagging/TaggingPresetItems.java	(revision 6437)
@@ -49,5 +49,5 @@
 import org.openstreetmap.josm.data.preferences.BooleanProperty;
 import org.openstreetmap.josm.gui.tagging.ac.AutoCompletingTextField;
-import org.openstreetmap.josm.gui.tagging.ac.AutoCompletionItemPritority;
+import org.openstreetmap.josm.gui.tagging.ac.AutoCompletionItemPriority;
 import org.openstreetmap.josm.gui.tagging.ac.AutoCompletionList;
 import org.openstreetmap.josm.gui.widgets.JosmComboBox;
@@ -1169,5 +1169,5 @@
             AutoCompletionList acList = tf.getAutoCompletionList();
             if (acList != null) {
-                acList.add(getDisplayValues(), AutoCompletionItemPritority.IS_IN_STANDARD);
+                acList.add(getDisplayValues(), AutoCompletionItemPriority.IS_IN_STANDARD);
             }
             combo.setEditor(tf);
Index: /trunk/src/org/openstreetmap/josm/gui/tagging/ac/AutoCompletingComboBox.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/tagging/ac/AutoCompletingComboBox.java	(revision 6436)
+++ /trunk/src/org/openstreetmap/josm/gui/tagging/ac/AutoCompletingComboBox.java	(revision 6437)
@@ -230,5 +230,5 @@
                 }
             }
-            super.setSelectedItem(new AutoCompletionListItem(s, AutoCompletionItemPritority.UNKNOWN));
+            super.setSelectedItem(new AutoCompletionListItem(s, AutoCompletionItemPriority.UNKNOWN));
         } else
             throw new IllegalArgumentException();
@@ -243,5 +243,5 @@
         model.removeAllElements();
         for (String elem : elems) {
-            model.addElement(new AutoCompletionListItem(elem, AutoCompletionItemPritority.UNKNOWN));
+            model.addElement(new AutoCompletionListItem(elem, AutoCompletionItemPriority.UNKNOWN));
         }
         // disable autocomplete to prevent unnecessary actions in
Index: /trunk/src/org/openstreetmap/josm/gui/tagging/ac/AutoCompletionItemPriority.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/tagging/ac/AutoCompletionItemPriority.java	(revision 6437)
+++ /trunk/src/org/openstreetmap/josm/gui/tagging/ac/AutoCompletionItemPriority.java	(revision 6437)
@@ -0,0 +1,93 @@
+// License: GPL. For details, see LICENSE file.
+package org.openstreetmap.josm.gui.tagging.ac;
+
+/**
+ * Describes the priority of an item in an autocompletion list.
+ * The selected flag is currently only used in plugins.
+ *
+ * Instances of this class are not modifiable.
+ */
+public class AutoCompletionItemPriority implements Comparable<AutoCompletionItemPriority> {
+
+    /**
+     * Indicates, that the value is standard and it is found in the data.
+     * This has higher priority than some arbitrary standard value that is
+     * usually not used by the user.
+     */
+    public static final AutoCompletionItemPriority IS_IN_STANDARD_AND_IN_DATASET = new AutoCompletionItemPriority(true, true, false);
+
+    /**
+     * Indicates that this is an arbitrary value from the data set, i.e.
+     * the value of a tag name=*.
+     */
+    public static final AutoCompletionItemPriority IS_IN_DATASET = new AutoCompletionItemPriority(true, false, false);
+
+    /**
+     * Indicates that this is a standard value, i.e. a standard tag name
+     * or a standard value for a given tag name (from the presets).
+     */
+    public static final AutoCompletionItemPriority IS_IN_STANDARD = new AutoCompletionItemPriority(false, true, false);
+
+    /**
+     * Indicates that this is a value from a selected object.
+     */
+    public static final AutoCompletionItemPriority  IS_IN_SELECTION  = new AutoCompletionItemPriority(false, false, true);
+
+    /** Unknown priority. This is the lowest priority. */
+    public static final AutoCompletionItemPriority UNKNOWN = new AutoCompletionItemPriority(false, false, false);
+
+    private final boolean inDataSet;
+    private final boolean inStandard;
+    private final boolean selected;
+
+    public AutoCompletionItemPriority(boolean inDataSet, boolean inStandard, boolean selected) {
+        this.inDataSet = inDataSet;
+        this.inStandard = inStandard;
+        this.selected = selected;
+    }
+
+    public boolean isInDataSet() {
+        return inDataSet;
+    }
+
+    public boolean isInStandard() {
+        return inStandard;
+    }
+
+    public boolean isSelected() {
+        return selected;
+    }
+
+    /**
+     * Imposes an ordering on the priorities.
+     * Currently, being in the current DataSet is worth more than being in the Presets.
+     */
+    @Override
+    public int compareTo(AutoCompletionItemPriority other) {
+        int sel = Boolean.valueOf(selected).compareTo(other.selected);
+        if (sel != 0) return sel;
+
+        int ds = Boolean.valueOf(inDataSet).compareTo(other.inDataSet);
+        if (ds != 0) return ds;
+
+        int std = Boolean.valueOf(inStandard).compareTo(other.inStandard);
+        if (std != 0) return std;
+
+        return 0;
+    }
+
+    /**
+     * Merges two priorities.
+     * The resulting priority is always >= the original ones.
+     */
+    public AutoCompletionItemPriority mergeWith(AutoCompletionItemPriority other) {
+        return new AutoCompletionItemPriority(
+                inDataSet || other.inDataSet,
+                inStandard || other.inStandard,
+                selected || other.selected);
+    }
+
+    @Override public String toString() {
+        return String.format("<Priority; inDataSet: %b, inStandard: %b, selected: %b>", inDataSet, inStandard, selected);
+    }
+}
Index: unk/src/org/openstreetmap/josm/gui/tagging/ac/AutoCompletionItemPritority.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/tagging/ac/AutoCompletionItemPritority.java	(revision 6436)
+++ 	(revision )
@@ -1,93 +1,0 @@
-// License: GPL. For details, see LICENSE file.
-package org.openstreetmap.josm.gui.tagging.ac;
-
-/**
- * Describes the priority of an item in an autocompletion list.
- * The selected flag is currently only used in plugins.
- *
- * Instances of this class are not modifiable.
- */
-public class AutoCompletionItemPritority implements Comparable<AutoCompletionItemPritority> {
-
-    /**
-     * Indicates, that the value is standard and it is found in the data.
-     * This has higher priority than some arbitrary standard value that is
-     * usually not used by the user.
-     */
-    public static final AutoCompletionItemPritority IS_IN_STANDARD_AND_IN_DATASET = new AutoCompletionItemPritority(true, true, false);
-
-    /**
-     * Indicates that this is an arbitrary value from the data set, i.e.
-     * the value of a tag name=*.
-     */
-    public static final AutoCompletionItemPritority IS_IN_DATASET = new AutoCompletionItemPritority(true, false, false);
-
-    /**
-     * Indicates that this is a standard value, i.e. a standard tag name
-     * or a standard value for a given tag name (from the presets).
-     */
-    public static final AutoCompletionItemPritority IS_IN_STANDARD = new AutoCompletionItemPritority(false, true, false);
-
-    /**
-     * Indicates that this is a value from a selected object.
-     */
-    public static final AutoCompletionItemPritority  IS_IN_SELECTION  = new AutoCompletionItemPritority(false, false, true);
-
-    /** Unknown priority. This is the lowest priority. */
-    public static final AutoCompletionItemPritority UNKNOWN = new AutoCompletionItemPritority(false, false, false);
-
-    private final boolean inDataSet;
-    private final boolean inStandard;
-    private final boolean selected;
-
-    public AutoCompletionItemPritority(boolean inDataSet, boolean inStandard, boolean selected) {
-        this.inDataSet = inDataSet;
-        this.inStandard = inStandard;
-        this.selected = selected;
-    }
-
-    public boolean isInDataSet() {
-        return inDataSet;
-    }
-
-    public boolean isInStandard() {
-        return inStandard;
-    }
-
-    public boolean isSelected() {
-        return selected;
-    }
-
-    /**
-     * Imposes an ordering on the priorities.
-     * Currently, being in the current DataSet is worth more than being in the Presets.
-     */
-    @Override
-    public int compareTo(AutoCompletionItemPritority other) {
-        int sel = Boolean.valueOf(selected).compareTo(other.selected);
-        if (sel != 0) return sel;
-
-        int ds = Boolean.valueOf(inDataSet).compareTo(other.inDataSet);
-        if (ds != 0) return ds;
-
-        int std = Boolean.valueOf(inStandard).compareTo(other.inStandard);
-        if (std != 0) return std;
-
-        return 0;
-    }
-
-    /**
-     * Merges two priorities.
-     * The resulting priority is always >= the original ones.
-     */
-    public AutoCompletionItemPritority mergeWith(AutoCompletionItemPritority other) {
-        return new AutoCompletionItemPritority(
-                inDataSet || other.inDataSet,
-                inStandard || other.inStandard,
-                selected || other.selected);
-    }
-
-    @Override public String toString() {
-        return String.format("<Priority; inDataSet: %b, inStandard: %b, selected: %b>", inDataSet, inStandard, selected);
-    }
-}
Index: /trunk/src/org/openstreetmap/josm/gui/tagging/ac/AutoCompletionList.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/tagging/ac/AutoCompletionList.java	(revision 6436)
+++ /trunk/src/org/openstreetmap/josm/gui/tagging/ac/AutoCompletionList.java	(revision 6437)
@@ -135,5 +135,5 @@
      * @param priority the priority to use
      */
-    public void add(Collection<String> values, AutoCompletionItemPritority priority) {
+    public void add(Collection<String> values, AutoCompletionItemPriority priority) {
         if (values == null) return;
         for (String value: values) {
Index: /trunk/src/org/openstreetmap/josm/gui/tagging/ac/AutoCompletionListItem.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/tagging/ac/AutoCompletionListItem.java	(revision 6436)
+++ /trunk/src/org/openstreetmap/josm/gui/tagging/ac/AutoCompletionListItem.java	(revision 6437)
@@ -10,5 +10,5 @@
  *  in an auto completion list for tag names, standard tag names would be assigned a higher
  *  priority than arbitrary tag names present in the current data set. There are three priority levels,
- *  {@link AutoCompletionItemPritority}.
+ *  {@link AutoCompletionItemPriority}.
  *
  * The value is a string which will be displayed in the auto completion list.
@@ -18,45 +18,53 @@
 
     /** the pritority of this item */
-    private  AutoCompletionItemPritority priority;
+    private  AutoCompletionItemPriority priority;
     /** the value of this item */
     private String value;
 
     /**
-     * constructor
+     * Constructs a new {@code AutoCompletionListItem} with the given value and priority.
+     * @param value The value
+     * @param priority The priority
      */
-    public AutoCompletionListItem(String value, AutoCompletionItemPritority priority) {
+    public AutoCompletionListItem(String value, AutoCompletionItemPriority priority) {
         this.value = value;
         this.priority = priority;
     }
 
+    /**
+     * Constructs a new {@code AutoCompletionListItem} with the given value and unknown priority.
+     * @param value The value
+     */
     public AutoCompletionListItem(String value) {
         this.value = value;
-        priority = AutoCompletionItemPritority.UNKNOWN;
+        priority = AutoCompletionItemPriority.UNKNOWN;
     }
 
+    /**
+     * Constructs a new {@code AutoCompletionListItem}.
+     */
     public AutoCompletionListItem() {
         value = "";
-        priority = AutoCompletionItemPritority.UNKNOWN;
+        priority = AutoCompletionItemPriority.UNKNOWN;
     }
 
-
     /**
-     *
+     * Returns the priority.
      * @return the priority
      */
-    public AutoCompletionItemPritority getPriority() {
+    public AutoCompletionItemPriority getPriority() {
         return priority;
     }
 
     /**
-     * sets the priority
+     * Sets the priority.
      * @param priority  the priority
      */
-    public void setPriority(AutoCompletionItemPritority priority) {
+    public void setPriority(AutoCompletionItemPriority priority) {
         this.priority = priority;
     }
 
     /**
-     *
+     * Returns the value.
      * @return the value
      */
Index: /trunk/src/org/openstreetmap/josm/gui/tagging/ac/AutoCompletionManager.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/tagging/ac/AutoCompletionManager.java	(revision 6436)
+++ /trunk/src/org/openstreetmap/josm/gui/tagging/ac/AutoCompletionManager.java	(revision 6437)
@@ -216,17 +216,17 @@
      */
     public void populateWithMemberRoles(AutoCompletionList list) {
-        list.add(presetRoleCache, AutoCompletionItemPritority.IS_IN_STANDARD);
-        list.add(getRoleCache(), AutoCompletionItemPritority.IS_IN_DATASET);
-    }
-
-    /**
-     * Populates the an {@link AutoCompletionList} with the currently cached
-     * tag keys
+        list.add(presetRoleCache, AutoCompletionItemPriority.IS_IN_STANDARD);
+        list.add(getRoleCache(), AutoCompletionItemPriority.IS_IN_DATASET);
+    }
+
+    /**
+     * Populates the an {@link AutoCompletionList} with the currently cached tag keys
      *
      * @param list the list to populate
      */
     public void populateWithKeys(AutoCompletionList list) {
-        list.add(getPresetKeys(), AutoCompletionItemPritority.IS_IN_STANDARD);
-        list.add(getDataKeys(), AutoCompletionItemPritority.IS_IN_DATASET);
+        list.add(getPresetKeys(), AutoCompletionItemPriority.IS_IN_STANDARD);
+        list.add(new AutoCompletionListItem("source", AutoCompletionItemPriority.IS_IN_STANDARD));
+        list.add(getDataKeys(), AutoCompletionItemPriority.IS_IN_DATASET);
     }
 
@@ -251,6 +251,6 @@
     public void populateWithTagValues(AutoCompletionList list, List<String> keys) {
         for (String key : keys) {
-            list.add(getPresetValues(key), AutoCompletionItemPritority.IS_IN_STANDARD);
-            list.add(getDataValues(key), AutoCompletionItemPritority.IS_IN_DATASET);
+            list.add(getPresetValues(key), AutoCompletionItemPriority.IS_IN_STANDARD);
+            list.add(getDataValues(key), AutoCompletionItemPriority.IS_IN_DATASET);
         }
     }
