code: private String getDataSource(Set<Provenance> provenances)
  	{
  		if(provenances.isEmpty()) return "N/A";
  		
  		Set<String> dsNames = new TreeSet<String>();
  		for (Provenance provenance : provenances)
  		{
  			String name = provenance.getDisplayName();
  			if(name == null) 
  				name = provenance.getStandardName();
  			if(name == null && !provenance.getName().isEmpty()) 
  				name = provenance.getName().iterator().next();
  			if (name != null && name.length() > 0)
  				dsNames.add(name.toLowerCase());
  		}
  		
  		return StringUtils.join(dsNames, ";");
  	}
docs: /*
  Gets datasource names, if any, in a consistent way/order, excl. duplicates