code: private Glyph createGlyph(Entity e)
  	{
  		String id = convertID(e.getUri());
  		if (glyphMap.containsKey(id))
  			return glyphMap.get(id);
  
  		// Create its glyph and register
  		Glyph g = createGlyphBasics(e, true);
  		glyphMap.put(g.getId(), g);
  
  		//TODO: export metadata (e.g., from bpe.getAnnotations() map) using the SBGN Extension feature
  //		SBGNBase.Extension ext = new SBGNBase.Extension();
  //		g.setExtension(ext);
  //		Element el = biopaxMetaDoc.createElement(e.getModelInterface().getSimpleName());
  //		el.setAttribute("uri", e.getUri());
  //		ext.getAny().add(el);
  
  		if (g.getClone() != null)
  			ubiqueSet.add(g);
  
  		if(e instanceof PhysicalEntity) {
  			PhysicalEntity pe = (PhysicalEntity) e;
  			assignLocation(pe, g);
  			if("or".equalsIgnoreCase(g.getClazz())) {
  				buildGeneric(pe, g, null);
  			} else if (pe instanceof Complex) {
  				createComplexContent((Complex) pe, g);
  			}
  		}
  
  		return g;
  	}
docs: /*
  Creates a glyph representing the given PhysicalEntity.
  
  @param e PhysicalEntity or Gene to represent
  @return the created glyph