code: public void constructDocument(String id, MappedKeyEngineer<K,V> engineer)
  	{
  		try
  		{
  			//construct map
  			Map<K,V> textableMap = this.constructMapToText(id);
  					
  			engineer.construct(id,textableMap);
  		}
  		catch (NoDataFoundException e)
  		{
  			throw new SystemException("No textable found for id="+id+" ERROR:"+Debugger.stackTrace(e));
  		}		
  	}
docs: Director method to construct a document
  @param id the for construction
  @param engineer the strategy creation