class DataTypeUrl {

	public DataType getDataType(DataTypeManagerService service) {

		DataTypeManager manager = findManager(service);
		if (manager == null) {
			return null;
		}

		if (dataTypeId == null) {
			// The ID will be null for built-in types.  In that case, the name will not be
			// null.  Further, built-in types live at the root, so we can just ask for the
			// type by name.
			return manager.getDataType(new DataTypePath(CategoryPath.ROOT, dataTypeName));
		}

		DataType dt = manager.findDataTypeForID(dataTypeId);
		return dt;
	}

	public  DataTypeUrl(DataType dt);
	public  DataTypeUrl(String url);

}