Index: /trunk/src/org/openstreetmap/josm/tools/Tag2Link.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/tools/Tag2Link.java	(revision 15880)
+++ /trunk/src/org/openstreetmap/josm/tools/Tag2Link.java	(revision 15881)
@@ -10,4 +10,7 @@
 import java.net.URL;
 import java.nio.charset.StandardCharsets;
+import java.util.Collections;
+import java.util.Map;
+import java.util.function.UnaryOperator;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
@@ -46,4 +49,8 @@
     static final MultiMap<String, String> wikidataRules = new MultiMap<>();
 
+    static final Map<String, UnaryOperator<String>> valueFormatter = Collections.singletonMap(
+            "ref:bag", v -> String.format("%16s", v).replace(' ', '0')
+    );
+
     static final String languagePattern = LanguageInfo.getLanguageCodes(null).stream()
             .map(Pattern::quote)
@@ -179,5 +186,6 @@
 
         wikidataRules.getValues(key).forEach(urlFormatter -> {
-            final String url = urlFormatter.replace("$1", value);
+            final String formattedValue = valueFormatter.getOrDefault(key, x -> x).apply(value);
+            final String url = urlFormatter.replace("$1", formattedValue);
             linkConsumer.acceptLink(getLinkName(url, key), url);
         });
