code: public Map<String, String> completeByFeature(PCM pcm, String ftName) throws Exception {
  		
  		Map<String, String> ftNames2Images = new HashMap<>();
  		
  		List<Feature> fts = pcm.getConcreteFeatures();
  		Feature ft = null;
  		for (Feature feature : fts) {
  			if (feature.getName().equals(ftName)) {
  				ft = feature;
  				break;
  			}
  		}
  		
  		if (ft == null) // not found 
  			return ftNames2Images;
  		
  		assert(ft != null);
  		
  		
  		
  		List<Cell> cells = ft.getCells();
  		for (Cell cell : cells) {
  			
  			String valueName = cell.getContent();
  			
  			// TODO compute entityID
  			try {
  				String entityID = computeEntityWikidataID(valueName);
  							
  				String propertyID = "P41"; //"P154" ; // "P18" 
  				String wikidataImage = "";
  				try {
  					wikidataImage = new WikidataImageRetrieval().retrieve(entityID, propertyID);
  				}
  				catch (Exception e) {
  					try {
  					wikidataImage = new WikidataImageRetrieval().retrieve(entityID, "P18");
  					}
  					catch (Exception e1) {					
  					}				
  				}
  				
  				if (!wikidataImage.isEmpty()) {
  					ftNames2Images.put(valueName, wikidataImage);
  				}
  				else {
  					System.err.println("Image unfound for " + valueName);
  				}
  			}
  			catch (Exception e) {
  				System.err.println("Image unfound for " + valueName + " because unable to found entity");
  			}
  			
  		}
  		return ftNames2Images;
  	}
docs: returns a map associating feature name to image URL as found in Wikidata
  this map is typically used to add a new column (ft + values) and complete a PCM
  @param pcm
  @param ftName
  @return
  @throws Exception