code: function ElementTree(id, instantiationOptions) {
  			var areInstantiationOptionsAnObject = _isObject(instantiationOptions);
  			var options;
  
  			/**
  			 * Make sure that the options parameter is Object and
  			 * that the ElementTree can be instantiate without initial options.
  			 */
  			if (areInstantiationOptionsAnObject) {
  				options = instantiationOptions;
  			} else {
  				options = {};
  			}
  
  			// Save DOM reference
  			this._ElementTreeContainer = document.getElementById(id);
  
  			/**
  			 * Method fired when the number of issues against an element is clicked
  			 */
  			this.onIssueCountClicked = options.onIssueCountClicked ? options.onIssueCountClicked : function () {};
  
  			/**
  			 * Method fired when the selected element in the ElementTree is changed.
  			 * @param {string} selectedElementId - The selected element id
  			 */
  			this.onSelectionChanged = options.onSelectionChanged ? options.onSelectionChanged : function (selectedElementId) {};
  
  			/**
  			 * Method fired when the hovered element in the ElementTree is changed.
  			 * @param {string} hoveredElementId - The hovered element id
  			 */
  			this.onHoverChanged = options.onHoverChanged ? options.onHoverChanged : function (hoveredElementId) {};
  
  			/**
  			 * Method fired when the mouse is out of the ElementTree.
  			 */
  			this.onMouseOut = options.onMouseOut ? options.onMouseOut : function () {};
  
  			/**
  			 * Method fired when the initial ElementTree rendering is done.
  			 */
  			this.onInitialRendering = options.onInitialRendering ? options.onInitialRendering : function () {};
  
  			// Object with the tree model that will be visualized
  			this.setData(options.data);
  		}
docs: ElementTree constructor.
  @param {string} id - The id of the DOM container
  @param {ElementTree} instantiationOptions
  @constructor