list = getOrMakePropertyList( ref );  MemberRef insertRef = new MemberRef( ref, list.size( ) ); PropertyListRecord record = new PropertyListRecord( element, insertRef, list, item ); stack.execute( record );
makeLocalCompositeValue( ref ); list = ref.getList( design, element ); if( null == list ) { list = new ArrayList(); MemberRecord memberRecord = new MemberRecord( design, element, ref, list ); stack.execute( memberRecord ); }  MemberRef insertRef = new MemberRef( ref, list.size( ) ); PropertyListRecord record = new PropertyListRecord( element, insertRef, list, item ); stack.execute( record );
	public void addItem( MemberRef ref, IStructure item )			throws SemanticException	{		assert ref != null;		if ( item == null )			return;		PropertyDefn propDefn = ref.getPropDefn( );		assert propDefn != null;		assertExtendedElement( design, element, propDefn );		if ( item.isReferencable( ) )			assert !( (ReferencableStructure) item ).hasReferences( );		checkListMemberRef( ref );		checkItem( ref, item );		List list = ref.getList( design, element );		element.checkStructureList( design, ref.getPropDefn( ), list, item );		ActivityStack stack = getActivityStack( );		stack.startTrans( ModelMessages				.getMessage( MessageConstants.ADD_ITEM_MESSAGE ) );		list = getOrMakePropertyList( ref );		MemberRef insertRef = new MemberRef( ref, list.size( ) );		PropertyListRecord record = new PropertyListRecord( element, insertRef,				list, item );		stack.execute( record );		stack.commit( );	}