Bug 207120 Please model provide an API for data type conversion.
Currently, there're two data types: column data type and parameter data type. But they're inconsistent. Could model provide APIs for conversion between the two types. Thanks. In addition: please check the code into head and 2.2.1 branch, because we have a 2.2.1 bug to fix.
model/org.eclipse.birt.report.model.tests/test/org/eclipse/birt/report/model/api/ModuleUtilTest.java
{
	/**
	 * Test deserilaze an stream-represented data into an action structure.
	 * 
	 * @throws XMLParserException
	 * @throws IOException
	 * @throws DesignFileException
	 */
	public void testDeserialize( ) throws XMLParserException, IOException,
			DesignFileException
	{
		InputStream is = ModuleUtilTest.class.getResourceAsStream( "input/ActionDeserializeTest.xml" ); 
		ActionHandle action = ModuleUtil.deserializeAction( is );
		assertEquals( DesignChoiceConstants.ACTION_LINK_TYPE_DRILL_THROUGH,
				action.getLinkType( ) );
		assertEquals( "Window3", action.getTargetWindow( ) ); 
		MemberHandle paramBindings = action.getParamBindings( );
		assertEquals( 2, paramBindings.getListValue( ).size( ) );
		ParamBindingHandle paramBinding1 = (ParamBindingHandle) paramBindings.getAt( 0 );
		assertEquals( "param1", paramBinding1.getParamName( ) ); 
		assertEquals( "1+1=3", paramBinding1.getExpression( ) ); 
		MemberHandle searchKeys = action.getSearch( );
		assertEquals( 2, searchKeys.getListValue( ).size( ) );
		SearchKeyHandle key1 = (SearchKeyHandle) searchKeys.getAt( 0 );
		assertEquals( "\"E001\".equals(row[\"studentId\"])", key1.getExpression( ) ); 
		
		is = ModuleUtilTest.class.getResourceAsStream( "input/ActionDeserializeTest_1.xml" ); 
		action = ModuleUtil.deserializeAction( is );