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
* Adds an element type to the dictionary. Must be done before the build
	 * step. The element type name must be unique.
	 * 
	 * @param type
	 *            the element type to add
	 * @throws MetaDataException
	 *             if exception occurs when adding the element definition.
	 *  
	 */
	void addElementDefn( ElementDefn type ) throws MetaDataException
	{
		String name = type.getName( );
		if ( StringUtil.isBlank( name ) )
			throw new MetaDataException(
					MetaDataException.DESIGN_EXCEPTION_MISSING_ELEMENT_NAME );
		if ( elementNameMap.containsKey( name ) )
			throw new MetaDataException( new String[]{name},
					MetaDataException.DESIGN_EXCEPTION_DUPLICATE_ELEMENT_NAME );
		elementNameMap.put( name, type );
	}
	/**
	 * Enables the use of element IDs.
	 */
	public void enableElementID( )
	{
		useElementID = true;
	}
	/**
	 * Reports whether element IDs are in use.
	 *