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
* a list footer.</dd>
 * 
 * <dt><strong>Class Definitions </strong></dt>
 * <dd>Describes the object types that are defined by JavaScript and BIRT. The
 * class definition includes constructor, members and methods. See the
 * {@link ClassInfo ClassDefn}class.</dd>
 * </dl>
 * <p>
 * 
 * <h2>Enabling Object IDs</h2>
 * The model may be used in the web environment in which it is necessary to
 * identify elements using a unique ID separate from their object pointer. The
 * {@link org.eclipse.birt.report.model.core.Module}class maintains the
 * object ID counter, as well as an id-to-element map. Because the map is
 * costly, it is enabled only if ID support is enabled in the data dictionary
 * object.
 * 
 * <h2>Lifecycle</h2>
 * 
 * Meta-data is built-up in a three-step process.
 * <p>
 * <ul>
 * <li><strong>Internal tables </strong>-- Some of the meta-data comes from
 * tables defined in code. Such tables exist to define parts of the system that
 * must match Java code, and which are needed to bootstrap the next step.</li>
 * <p>
 * <li><strong>Meta-data file </strong>-- Most of the data comes from the
 * meta-data XML file. This information includes the list of elements, their
 * propValues, and more. The meta-data file contains message catalog IDs for any
 * strings that need to be displayed to the user, so that they can be localized