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/command/ContentCommand.java
*             the slot cannot contain the given element.
	 */
	private void checkContainmentContext( int slotId, DesignElement content )
			throws NameException, ContentException
	{
		List errors = element.checkContainmentContext( module, slotId, content );
		if ( !errors.isEmpty( ) )
		{
			SemanticException e = (SemanticException) errors.get( 0 );
			assert e instanceof NameException || e instanceof ContentException;
			if ( e instanceof NameException )
				throw (NameException) e;
			if ( e instanceof ContentException )
				throw (ContentException) e;
		}
	}
	/**
	 * Adds the element name and names of nested element in it to name spaces.
	 * 
	 * @param content
	 *            the content to add
	 * @throws NameException
	 *             if any element has duplicate name with elements already on
	 *             the design tree.
	 */
	private void addElementNames( DesignElement content ) throws NameException
	{
		
		
		assert content.getContainer( ) != null;