code: function replaceRemote(id, item, store) {
        // Validate arguments
        if (id >= 0 && Object.keys(item).length > 0) {
          // Store resources url
          var url = store._rootUrl + "/" + id;
          // Set up request
          var xhr = new XMLHttpRequest();
          xhr.open("PUT", url, true);
          xhr.setRequestHeader("Content-Type", "application/json");
          // Request callback
          xhr.onload = function(e) {
            // If operation has been completed - ready state 4
            if (xhr.readyState === 4) {
              // Response status successfully completed - status 200
              if (xhr.status === 200) {
                // Set response item to be returned
                item = JSON.parse(xhr.response);
                // Refresh local data object
                vcomet.StoreMemory.replace(id, item, store);
                // Trigger user callback once data has been retrieved
                vcomet.triggerCallback("onReplaceRemote", store, store, [item]);
                // Trigger onSourceChanged event
                vcomet.triggerCallback("onSourceChanged", store);
              }
            }
          };
        } else {
          vcomet.error.log(
            "store",
            "Cannot send replace request without an id or item object"
          );
        }
        // Execute request with post payload data
        store.onLoaded(function(){xhr.send(JSON.stringify(item))});
      }
docs: /*
  @function replaceRemote
  @description Store data replace item from a remote source
  @param {String} id [Data item id]
  @param {Object} item [Data item]
  @param {Object} store [Store element]