Bug 153040 Template definition should be removed after the report item is deleted
Steps to reproduce: 1.New a report, extends lib.label 2.Convert the label to template report item, and revert it back to the report item 3.Delete the label 4.Remove the included library Expected result: Library can be removed Actual result: A BIRT exception occurred. Plug-in Provider:Eclipse.org Plug-in Name:BIRT Model Plug-in ID:org.eclipse.birt.report.model Version:2.1.0.v20060808-0630 Error Code:Error.LibraryException.LIBRARY_HAS_DESCENDENTS Error Message:The library "Lib" can no be dropped because it has descendents "NewLabel" in the current module.
model/org.eclipse.birt.report.model/src/org/eclipse/birt/report/model/metadata/MetaDataDictionary.java
* Internal method to build the cached semantic data for the dictionary.
	 * Looks up "extends" references, looks up display names given message IDs,
	 * and so on.
	 * 
	 * @throws MetaDataException
	 *             if any build error occurs
	 */
	void build( ) throws MetaDataException
	{
		buildPropertyTypes( );
		buildElementDefinitions( );
		validateConstants( );
		buildStructures( );
	}
	/**
	 * Private method to validate the various meta-data constants used in this
	 * build.
	 * 
	 * @throws MetaDataException
	 *             if any of the validation fails.
	 */
	private void validateConstants( ) throws MetaDataException
	{
		for ( int i = 0; i < propertyTypes.length; i++ )
			assert propertyTypes[i].getTypeCode( ) == i;
		validateElement( MetaDataConstants.STYLE_NAME );
		validateElement( MetaDataConstants.REPORT_ELEMENT_NAME );
		validateElement( MetaDataConstants.REPORT_DESIGN_NAME );
	}
	/**