Bug 138562 Splite extendsexcpetion to seperate sub class
The suggestion is Parent invalid Cycle extends Different type extends Not top level extends
model/org.eclipse.birt.report.model/src/org/eclipse/birt/report/model/command/ExtendsCommand.java
if ( module instanceof Library )
		{
			String namespace = ( (Library) module ).getNamespace( );
			name = StringUtil.buildQualifiedReference( namespace, name );
		}
		setExtendsName( name );
	}
	/**
	 * Sets the extends attribute for an element given the new parent element.
	 * 
	 * @param parent
	 *            the new parent element.
	 * @throws ExtendsException
	 *             if the element can not be extended or the base element is not
	 *             on component slot, or the base element has no name.
	 */
	public void setExtendsElement( DesignElementHandle parent )
			throws ExtendsException
	{
		if ( parent == null )
		{
			setExtendsName( null );
			return;
		}
		String name = parent.getName( );
		if ( StringUtil.isBlank( name ) )
			throw new ExtendsException( element, "", 
					ExtendsException.DESIGN_EXCEPTION_UNNAMED_PARENT );
		setExtendsName( ReferenceValueUtil.needTheNamespacePrefix( parent
				.getElement( ), parent.getModule( ), module ) );