Bug 143173 No error for recursive including when exporting a report to a library
Steps to reproduce: 1.New a library named "Lib", add a lable in it 2.New a report, extends Lib.label 3.Export the report, choose target library "Lib" Expected result: Error to warn the recursive including Actual result: The target library includes itself without error
model/org.eclipse.birt.report.model/src/org/eclipse/birt/report/model/util/ModelUtil.java
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( );
			assert virtualParent.getID( ) > 0;
			idMap.put( new Long( virtualParent.getID( ) ), virtualChild );
		}
		return idMap;
	}
	/**
	 * Break the relationship between the given element to its parent.Set all
	 * properties values of the given element on the element locally. The
	 * following properties will be set:
	 * <ul>
	 * <li>Properties set on element itself
	 * <li>Inherited from style or element's selector style
	 * <li>Inherited from parent
	 * </ul>