code: private Glyph getGlyphToLink(Entity e, String linkID)
  	{
  		if (ubiqueDet == null || !ubiqueDet.isUbique(e))
  		{
  			return glyphMap.get(convertID(e.getUri()));
  		}
  		else {
  			// Create a new glyph for each use of ubique
  			Glyph g = createGlyphBasics(e, false);
  			g.setId(convertID(e.getUri()) + "_" + ModelUtils.md5hex(linkID));
  			Set<String> uris = new HashSet<String>();
  			uris.add(e.getUri());
  			sbgn2BPMap.put(g.getId(), uris);
  			if(e instanceof PhysicalEntity && ((PhysicalEntity)e).getCellularLocation() != null) {
  				assignLocation((PhysicalEntity) e, g);
  			}
  			ubiqueSet.add(g);
  			return g;
  		}
  	}
docs: /*
  Gets the representing glyph of the PhysicalEntity or Gene.
  @param e PhysicalEntity or Gene to get its glyph
  @param linkID Edge id, used if the Entity is ubique
  @return Representing glyph