Index: lib/OpenLayers/Layer/Bing.js
===================================================================
--- lib/OpenLayers/Layer/Bing.js	(revision 11030)
+++ lib/OpenLayers/Layer/Bing.js	(working copy)
@@ -44,6 +44,14 @@
     type: "Road",
 
     /**
+     * APIProperty: version
+     * {String} Controls which version of the imagery is returned. Default is null, 
+     *     meaning the default imagery set is used. Corresponds to "mapVersion", as defined here:
+     *     http://msdn.microsoft.com/en-us/library/ff701716.aspx
+     */
+    version: null,
+
+    /**
      * Constant: EVENT_TYPES
      * {Array(String)} Supported application event types.  Register a listener
      *     for a particular event with the following syntax:
@@ -87,6 +95,9 @@
      * type - {String} The layer identifier.  Any non-birdseye imageryType
      *     from http://msdn.microsoft.com/en-us/library/ff701716.aspx can be
      *     used.
+     * Optional bing-specific configuration properties:
+     * version - {String} Imagery version identifier. Corresponds to "mapVersion", 
+     *     as defined here: http://msdn.microsoft.com/en-us/library/ff701716.aspx
      *
      * Any other documented layer properties can be provided in the config object.
      */
@@ -106,7 +117,7 @@
         
         var newArgs = [name, null, options];
         OpenLayers.Layer.XYZ.prototype.initialize.apply(this, newArgs);
-        this.loadMetadata(this.type); 
+        this.loadMetadata(this.type, this.version); 
     },
 
     /**
@@ -114,8 +125,9 @@
      *
      * Parameters:
      * imageryType - {String}
+     * mapVersion - {String}
      */
-    loadMetadata: function(imageryType) {
+    loadMetadata: function(imageryType, mapVersion) {
         this._callbackId = "_callback_" + this.id.replace(/\./g, "_");
         // link the processMetadata method to the global scope and bind it
         // to this instance
@@ -125,6 +137,9 @@
         var url = "http://dev.virtualearth.net/REST/v1/Imagery/Metadata/" +
             imageryType + "?key=" + this.key + "&jsonp=" + this._callbackId +
             "&include=ImageryProviders";
+        if(typeof mapVersion !== 'undefined' && mapVersion !== null) {
+            url += "&mapVersion=" + mapVersion;
+        }
         var script = document.createElement("script");
         script.type = "text/javascript";
         script.src = url;
