Bug 152430 Key can modify to empty string
model/org.eclipse.birt.report.model/src/org/eclipse/birt/report/model/command/PropertyCommand.java
assertExtendedElement( module, element, propDefn );
		if ( item.isReferencable( ) )
			assert !( (ReferencableStructure) item ).hasReferences( );
		checkListMemberRef( ref );
		checkItem( ref, item );
		List list = ref.getList( module, element );
		element.checkStructureList( module, ref.getPropDefn( ), list, item );
		ActivityStack stack = getActivityStack( );
		stack.startTrans( ModelMessages
				.getMessage( MessageConstants.ADD_ITEM_MESSAGE ) );
		makeLocalCompositeValue( ref );
		list = ref.getList( module, element );
		if ( null == list )
		{
			list = new ArrayList( );
			MemberRecord memberRecord = new MemberRecord( module, element, ref,
					list );
			stack.execute( memberRecord );
		}
		MemberRef insertRef = new CachedMemberRef( ref, list.size( ) );
		PropertyListRecord record = new PropertyListRecord( element, insertRef,
				insertRef.getList( module, element ), item );
		stack.execute( record );
		stack.commit( );
	}
	/**
	 * Inserts an item to a structure list.
	 * <ul>
	 * <li>If the property is currently unset anywhere up the inheritance
	 * hierarchy, then a new list is created on this element, and the list