if ( propDefn.getTypeCode( ) == PropertyType.SCRIPT_TYPE || propDefn.getTypeCode( ) == PropertyType.XML_TYPE )
if ( propDefn.getTypeCode( ) == IPropertyType.SCRIPT_TYPE || propDefn.getTypeCode( ) == IPropertyType.XML_TYPE )
	protected void writeOverridenPropertyValues( DesignElement obj )	{		// if no extends do not write this part.		if ( obj.getExtendsElement( ) == null )			return;		writer				.conditionalStartElement( DesignSchemaConstants.OVERRIDDEN_VALUES_TAG );		Iterator iter = new ContentIterator( obj );		while ( iter.hasNext( ) ) // for each virtual element in the child		{			DesignElement virtualElement = (DesignElement) iter.next( );			writer					.conditionalStartElement( DesignSchemaConstants.REF_ENTRY_TAG );			long baseId = virtualElement.getBaseId( );			writer.attribute( DesignSchemaConstants.BASE_ID_ATTRIB, new Long(					baseId ).toString( ) );			writer.attribute( DesignSchemaConstants.NAME_ATTRIB, virtualElement					.getName( ) );			writer.attribute( DesignSchemaConstants.ID_ATTRIB, new Long(					virtualElement.getID( ) ).toString( ) );			if ( !virtualElement.hasLocalPropertyValues( )					&& virtualElement.getStyle( ) == null )			{				writer.endElement( );				continue;			}			assert virtualElement.getExtendsElement( ) == null;			List propDefns = null;			if ( virtualElement instanceof ExtendedItem )			{				propDefns = ( (ExtendedItem) virtualElement ).getExtDefn( )						.getProperties( );			}			else			{				propDefns = virtualElement.getPropertyDefns( );			}			for ( int i = 0; i < propDefns.size( ); i++ )			{				PropertyDefn propDefn = (PropertyDefn) propDefns.get( i );				if ( DesignElement.NAME_PROP.equalsIgnoreCase( propDefn						.getName( ) ) )					continue;				if ( virtualElement instanceof ExtendedItem						&& ExtendedItem.EXTENSION_NAME_PROP								.equalsIgnoreCase( propDefn.getName( ) ) )					continue;				boolean cdata = false;				if ( propDefn.getTypeCode( ) == PropertyType.SCRIPT_TYPE						|| propDefn.getTypeCode( ) == PropertyType.XML_TYPE )					cdata = true;				if ( propDefn.getTypeCode( ) == PropertyType.STRUCT_TYPE )				{					if ( propDefn.isList( ) )						writeStructureList( virtualElement, propDefn.getName( ) );					else						writeStructure( virtualElement, propDefn.getName( ) );				}				else if ( propDefn.getTypeCode( ) == PropertyType.LIST_TYPE )					writeSimplePropertyList( virtualElement, propDefn.getName( ) );				else					writeProperty( virtualElement,							getTagByPropertyType( propDefn ), propDefn									.getName( ), cdata );			}			writer.endElement( ); // end ��ref-entry��		}		writer.endElement( ); // end ��Overridden-values��	}