Bug 130492 Provide a method to serialize the report with library information.
Currently, when engine generate the report document file, the document does not contain any library information. That will cause many propblem on server side. Model should provide a method to serialize the report with library information to a stream so that the generated report document can contain all information that the report need.
model/org.eclipse.birt.report.model/src/org/eclipse/birt/report/model/util/ModelUtil.java
{
	/**
	 * Returns the id reference relationship between the parent element and the
	 * child element.
	 * <p>
	 * Notice: the element and its parent should have the same structure when
	 * calling this method. That is the child structure has already been
	 * refreshed from parent.
	 * 
	 * @param element
	 *            the element to setup the id reference
	 * @return a map to store the base id and the corresponding child element.
	 */
	public static Map getIdMap( DesignElement element )
	{
		assert element != null;
		
		DesignElement parent = element.getExtendsElement( );
		if ( parent == null )
			return Collections.EMPTY_MAP;
		Map idMap = new HashMap( );
		Iterator parentIter = new ContentIterator( parent );
		Iterator childIter = new ContentIterator( element );
		while ( childIter.hasNext( ) )
		{
			DesignElement virtualParent = (DesignElement) parentIter.next( );
			DesignElement virtualChild = (DesignElement) childIter.next( );
			assert virtualChild.getDefn( ).getName( ) == virtualChild.getDefn( )
					.getName( );