c.addWantedField("semantic_type","name"); c.addWantedField("semantic_type","granularity");
	public static Criteria buildDefaultRetrieveCriteria(String granularity,												 int targetID)	{		Criteria c = new Criteria();    	   	// all non-references; has-ones with just ID's; no has-manys	   	c.addWantedField(":all:");    	   	c.addWantedField("semantic_type");	   	c.addWantedField("semantic_type", "semantic_elements");	   	c.addWantedField("semantic_type.semantic_elements", "id");	   	c.addWantedField("semantic_type.semantic_elements", "name");	   	c.addWantedField("semantic_type.semantic_elements", "data_column");	   	c.addWantedField("semantic_type.semantic_elements.data_column", "id");	   	c.addWantedField("semantic_type.semantic_elements.data_column",						"sql_type");	   	c.addWantedField("semantic_type.semantic_elements.data_column",						"reference_semantic_type");    		String column = (String) granularities.get(granularity);		if (column != null) c.addFilter(column, new Integer(targetID));	   	return c;	}