code: function WebJsonDatasource(datasourceUrl, parameters) {
  	this.name = 'WebJson';
  	
  	if (typeof datasourceUrl == 'string') {		
  		this.datasourceUrl = datasourceUrl;
  		ReportDatasource.call(this, parameters);
  	} else {
  		// load from object def
  		for(var property in datasourceUrl) {			
  			this[property] = datasourceUrl[property];
  		}
  	}
  }
docs: Datasource that allows you to supply a RESTfull endpoint that returns a JSON dataset.  You
  supply the parametes in the URL by using a ':' prefix.  The URL syntax support both RESTfull
  url schemes and query string schemes.
  @class WebJsonDatasource
  @uses  ReportParameter
  @param {String} datasourceUrl
  @param {Array} parameters
  @example
  
  var params = [
  new ReportParameter("postalcode", "string", "6600"),
  new ReportParameter("country", "string", "AT"),
  new ReportParameter("username", "string", "demo")
  ];
  
  var ds = new webjson("http://api.geonames.org/postalCodeLookupJSON?postalcode=:postalcode&country=:country&username=:username", params);
  
  ds.execute(function(err, data){
  process data or handle error here...
  });