anchor.diff:  var tree = new YAHOO.widget.TreeView("phenotype-tree");
   createNodeForTaxon(rootData, tree.getRoot());
   tree.setDynamicLoad(requestDataForChildren);
  -tree.subscribe("clickEvent", function(node) {
  +tree.subscribe("clickEvent", function(arg) {
  +	var targetID = arg["event"]["target"]["id"];
  +	if ((targetID != null) && (sourceLinks[targetID] != null)) {
  +		sourceLinks[targetID]();
  +	}
   	//disable clicking on whole node to expand/collapse - this allows links inside node to work properly
   	return false;
   });
  
positive.code: }
  
  function requestDataForChildren(parentNode, callback) {
  	logDebug(keys(parentNode.data.phenotypes[0]));
  	var dataGetter = loadJSONDoc(URL.childPhenotypes(entity["id"], quality["id"], parentNode["data"]["id"]));
  	dataGetter.addCallback(function(result) {
  		loadDataForChildren(parentNode, callback, result);
  
negative.code: 		characterLabel += ":";
  		var characterTable = TABLE(null, TR(null, TD(null, characterLabel), TD(null, item["character_text"])));
  		if (item["character_comment"].length > 0) {
  			var comment = P({"style":"display: none;", "class":"character_comment"}, item["character_comment"]);
  			var revealer = A({"href":"#"}, "View comment");
  			var revealerBlock = P(null, revealer);
  			connect(revealer, "onclick", function() {
  				hideElement(revealerBlock);
  				blindDown(comment);
  				return false;
  