diff --git a/plugins/org.teiid.designer.mapping.ui/plugin.xml b/plugins/org.teiid.designer.mapping.ui/plugin.xml
index 69c6e50..0d791e1 100644
--- a/plugins/org.teiid.designer.mapping.ui/plugin.xml
+++ b/plugins/org.teiid.designer.mapping.ui/plugin.xml
@@ -54,14 +54,6 @@
       </diagramType>
    </extension>
    <extension
-         id="InputSetObjectEditorPage"
-         name="Input Set Object Editor"
-         point="org.teiid.designer.ui.modelObjectEditorPage">
-      <class
-            name="org.teiid.designer.mapping.ui.editor.InputSetObjectEditorPage">
-      </class>
-   </extension>
-   <extension
          id="RecursionObjectEditorPage"
          name="Recursion Object Editor"
          point="org.teiid.designer.ui.modelObjectEditorPage">
diff --git a/plugins/org.teiid.designer.mapping.ui/src/org/teiid/designer/mapping/ui/actions/EditInputSetAction.java b/plugins/org.teiid.designer.mapping.ui/src/org/teiid/designer/mapping/ui/actions/EditInputSetAction.java
new file mode 100644
index 0000000..299db4d
--- /dev/null
+++ b/plugins/org.teiid.designer.mapping.ui/src/org/teiid/designer/mapping/ui/actions/EditInputSetAction.java
@@ -0,0 +1,61 @@
+/*
+ * JBoss, Home of Professional Open Source.
+*
+* See the LEGAL.txt file distributed with this work for information regarding copyright ownership and licensing.
+*
+* See the AUTHORS.txt file distributed with this work for a full listing of individual contributors.
+*/
+package org.teiid.designer.mapping.ui.actions;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.teiid.designer.diagram.ui.part.DiagramEditPart;
+import org.teiid.designer.mapping.ui.UiConstants;
+import org.teiid.designer.mapping.ui.UiPlugin;
+import org.teiid.designer.mapping.ui.editor.EditInputSetDialog;
+import org.teiid.designer.metamodels.transformation.InputSet;
+import org.teiid.designer.ui.common.util.UiUtil;
+
+
+/**
+ * Edit input set action dedicated to being used in the mapping transform diagram on selection of InputSetImpl only
+ * 
+ * @author blafond
+ *
+ */
+public class EditInputSetAction  extends MappingAction {
+
+	public EditInputSetAction() {
+        super();
+        setImageDescriptor(UiPlugin.getDefault().getImageDescriptor(UiConstants.Images.EDIT_OBJECT_ICON));
+        setText("Edit Input Set");
+        setEnabled(true);
+    }
+
+    /* (non-Javadoc)
+     * @see org.eclipse.jface.action.IAction#run()
+     */
+    @Override
+    protected void doRun() {
+        if (getMappingClassFactory() != null) {
+            if (getMappingClassFactory() != null) {
+            	InputSet inputSet = null;
+            	@SuppressWarnings("unchecked")
+				List<DiagramEditPart> selectedEditParts = new ArrayList<DiagramEditPart>(editor.getDiagramViewer().getSelectedEditParts());
+            	if( selectedEditParts.size() == 1 ) {
+            		if( selectedEditParts.get(0).getModelObject() instanceof InputSet ) {
+            			inputSet = (InputSet)selectedEditParts.get(0).getModelObject();
+            		}
+            	}
+
+            	EditInputSetDialog dialog = new EditInputSetDialog(UiUtil.getWorkbenchShellOnlyIfUiThread(), inputSet);
+            	dialog.open();
+                	
+            }
+        }
+
+        setEnabled(true);
+    }
+
+}
diff --git a/plugins/org.teiid.designer.mapping.ui/src/org/teiid/designer/mapping/ui/actions/MappingDiagramActionAdapter.java b/plugins/org.teiid.designer.mapping.ui/src/org/teiid/designer/mapping/ui/actions/MappingDiagramActionAdapter.java
index b688b71..6abdb41 100644
--- a/plugins/org.teiid.designer.mapping.ui/src/org/teiid/designer/mapping/ui/actions/MappingDiagramActionAdapter.java
+++ b/plugins/org.teiid.designer.mapping.ui/src/org/teiid/designer/mapping/ui/actions/MappingDiagramActionAdapter.java
@@ -136,6 +136,7 @@
     private MappingAction cloneAction;
     private RenameAction renameAction;
     private AddInputSetParameterAction addInputSetParameterAction;
+    private EditInputSetAction editInputSetAction;
 
     // actions map is needed since we want to override the default print action
     private ModelerGlobalActionsMap actionsMap;
@@ -315,8 +316,10 @@
                         addInputSetParameterAction.setInputSet(selectionHelper.getSingleEObject());
                         theMenuMgr.add(addInputSetParameterAction);
                     }
-                    final IAction editAction = getAction(ModelerGlobalActions.EDIT);
-                    if (editAction != null) theMenuMgr.add(editAction);
+//                    final IAction editAction = getAction(ModelerGlobalActions.EDIT);
+//                    if (editAction != null) theMenuMgr.add(editAction);
+                    this.editInputSetAction.setDiagramEditor((DiagramEditor)getEditorPage());
+                    theMenuMgr.add(editInputSetAction);
                     theMenuMgr.add(new Separator());
                     theMenuMgr.add(new GroupMarker(T_MARKER));
                     theMenuMgr.appendToGroup(T_MARKER, this.clearSourcesAction);
@@ -965,6 +968,7 @@
         }
 
         this.addInputSetParameterAction = new AddInputSetParameterAction();
+        this.editInputSetAction = new EditInputSetAction();
     }
 
     private boolean isDetailedMapping() {
diff --git a/plugins/org.teiid.designer.mapping.ui/src/org/teiid/designer/mapping/ui/editor/EditInputSetDialog.java b/plugins/org.teiid.designer.mapping.ui/src/org/teiid/designer/mapping/ui/editor/EditInputSetDialog.java
new file mode 100644
index 0000000..c80acf4
--- /dev/null
+++ b/plugins/org.teiid.designer.mapping.ui/src/org/teiid/designer/mapping/ui/editor/EditInputSetDialog.java
@@ -0,0 +1,131 @@
+/*
+ * JBoss, Home of Professional Open Source.
+*
+* See the LEGAL.txt file distributed with this work for information regarding copyright ownership and licensing.
+*
+* See the AUTHORS.txt file distributed with this work for a full listing of individual contributors.
+*/
+package org.teiid.designer.mapping.ui.editor;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.teiid.core.designer.util.I18nUtil;
+import org.teiid.designer.diagram.ui.editor.DiagramController;
+import org.teiid.designer.diagram.ui.editor.DiagramEditor;
+import org.teiid.designer.mapping.factory.DefaultMappableTree;
+import org.teiid.designer.mapping.factory.IMappableTree;
+import org.teiid.designer.mapping.factory.TreeMappingAdapter;
+import org.teiid.designer.mapping.ui.UiConstants;
+import org.teiid.designer.mapping.ui.UiPlugin;
+import org.teiid.designer.metamodels.transformation.InputSet;
+import org.teiid.designer.metamodels.transformation.MappingClass;
+import org.teiid.designer.ui.common.widget.ScrollableTitleAreaDialog;
+import org.teiid.designer.ui.editors.ModelEditor;
+import org.teiid.designer.ui.editors.ModelEditorPage;
+
+public class EditInputSetDialog extends ScrollableTitleAreaDialog {
+//	private static final int WIDTH = 700;
+//    private static final int HEIGHT = 400;
+    
+    private static final String I18N_PREFIX = I18nUtil.getPropertyPrefix(EditInputSetDialog.class);
+    private static final String TITLE = getString("title"); //$NON-NLS-1$
+    private static final String MESSAGE = getString("message"); //$NON-NLS-1$
+    
+    private InputSet inputSet;
+    EditInputSetPanel editorPanel;
+    
+    private static String getString( final String id ) {
+        return UiConstants.Util.getString(I18N_PREFIX + id);
+    }
+    
+    /**
+     * 
+     * @param parent
+     * @param modelName
+     * @param props
+     */
+    public EditInputSetDialog( Shell parent, InputSet inputSet) {
+        super(parent);
+        this.inputSet = inputSet;
+    }
+    
+    /**
+     * @see org.eclipse.jface.window.Window#configureShell(org.eclipse.swt.widgets.Shell)
+     */
+    @Override
+    protected void configureShell(Shell shell) {
+        super.configureShell(shell);
+        shell.setText(TITLE);  //$NON-NLS-1$
+    }
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.eclipse.jface.window.Window#setShellStyle(int)
+	 */
+	@Override
+	protected void setShellStyle(int newShellStyle) {
+		super.setShellStyle(newShellStyle | SWT.RESIZE | SWT.MAX);
+
+	}
+	
+    /**
+     * @see org.eclipse.jface.dialogs.Dialog#createDialogArea(org.eclipse.swt.widgets.Composite)
+     */
+    @Override
+    protected Control createDialogArea( Composite parent ) {
+		setTitle(TITLE);
+		setMessage(MESSAGE);
+		
+		Composite dialogComposite = (Composite) super.createDialogArea(parent);
+        
+        //------------------------------        
+        // Set layout for the Composite
+        //------------------------------        
+        ((GridData)dialogComposite.getLayoutData()).grabExcessHorizontalSpace = true;
+        ((GridData)dialogComposite.getLayoutData()).grabExcessVerticalSpace= true;
+        ((GridData)dialogComposite.getLayoutData()).widthHint = 500;
+        ((GridData)dialogComposite.getLayoutData()).heightHint = 250;
+        
+        editorPanel = new EditInputSetPanel(dialogComposite);
+        
+        setMappingAdapters(this.inputSet);
+        MappingClass currentMappingClass = inputSet.getMappingClass();
+        InputSetAdapter inputSetAdapter = new InputSetAdapter(currentMappingClass);
+        editorPanel.setBusinessObject(inputSetAdapter);
+        
+        sizeScrolledPanel();
+        
+        return dialogComposite;
+    }
+    
+    public void setMappingAdapters( InputSet inputSet ) {
+        this.inputSet = inputSet;
+        // obtain the root tree node that is being displayed in the mapping diagram
+        IWorkbenchWindow window = UiPlugin.getDefault().getCurrentWorkbenchWindow();
+        IEditorPart editorPart = window.getActivePage().getActiveEditor();
+        if (editorPart instanceof ModelEditor) {
+            ModelEditorPage editorPage = (ModelEditorPage)((ModelEditor)editorPart).getCurrentPage();
+            if (editorPage instanceof DiagramEditor) {
+                DiagramController controller = ((DiagramEditor)editorPage).getDiagramController();
+                if (controller instanceof MappingDiagramController) {
+                    // get the adapters from the diagram controller
+                    TreeMappingAdapter mapping = ((MappingDiagramController)controller).getMappingAdapter();
+                    IMappableTree mappableTree = ((MappingDiagramController)controller).getMappableTree();
+                    editorPanel.setMappingAdapters(mapping, mappableTree);
+                } else {
+                    // need to get one somehow
+                    EObject docRoot = inputSet.getMappingClass().getMappingClassSet().getTarget();
+                    TreeMappingAdapter mapping = new TreeMappingAdapter(docRoot);
+                    IMappableTree mappableTree = new DefaultMappableTree(docRoot);
+                    editorPanel.setMappingAdapters(mapping, mappableTree);
+                }
+            }
+        }
+    }
+}
diff --git a/plugins/org.teiid.designer.mapping.ui/src/org/teiid/designer/mapping/ui/editor/EditInputSetPanel.java b/plugins/org.teiid.designer.mapping.ui/src/org/teiid/designer/mapping/ui/editor/EditInputSetPanel.java
new file mode 100644
index 0000000..42ef7fe
--- /dev/null
+++ b/plugins/org.teiid.designer.mapping.ui/src/org/teiid/designer/mapping/ui/editor/EditInputSetPanel.java
@@ -0,0 +1,958 @@
+/*
+ * JBoss, Home of Professional Open Source.
+*
+* See the LEGAL.txt file distributed with this work for information regarding copyright ownership and licensing.
+*
+* See the AUTHORS.txt file distributed with this work for a full listing of individual contributors.
+*/
+package org.teiid.designer.mapping.ui.editor;
+
+import java.util.Collection;
+import java.util.Iterator;
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor.PropertyValueWrapper;
+import org.eclipse.jface.layout.GridDataFactory;
+import org.eclipse.jface.layout.GridLayoutFactory;
+import org.eclipse.jface.viewers.CellEditor;
+import org.eclipse.jface.viewers.ColumnWeightData;
+import org.eclipse.jface.viewers.ICellModifier;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredContentProvider;
+import org.eclipse.jface.viewers.ITableLabelProvider;
+import org.eclipse.jface.viewers.ITreeContentProvider;
+import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.jface.viewers.TableLayout;
+import org.eclipse.jface.viewers.TableViewer;
+import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.jface.viewers.Viewer;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.events.SelectionListener;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Table;
+import org.eclipse.swt.widgets.TableColumn;
+import org.eclipse.swt.widgets.TableItem;
+import org.eclipse.swt.widgets.Tree;
+import org.eclipse.ui.views.properties.IPropertyDescriptor;
+import org.eclipse.ui.views.properties.IPropertySource;
+import org.teiid.core.designer.ModelerCoreException;
+import org.teiid.designer.core.ModelerCore;
+import org.teiid.designer.mapping.factory.IMappableTree;
+import org.teiid.designer.mapping.factory.TreeMappingAdapter;
+import org.teiid.designer.mapping.ui.PluginConstants;
+import org.teiid.designer.mapping.ui.UiConstants;
+import org.teiid.designer.metamodels.transformation.InputParameter;
+import org.teiid.designer.metamodels.transformation.InputSet;
+import org.teiid.designer.metamodels.transformation.MappingClass;
+import org.teiid.designer.metamodels.transformation.MappingClassColumn;
+import org.teiid.designer.metamodels.transformation.TransformationFactory;
+import org.teiid.designer.ui.common.eventsupport.SelectionUtilities;
+import org.teiid.designer.ui.common.util.WidgetFactory;
+import org.teiid.designer.ui.explorer.ModelExplorerLabelProvider;
+import org.teiid.designer.ui.viewsupport.ModelObjectUtilities;
+import org.teiid.designer.ui.viewsupport.ModelUtilities;
+
+public class EditInputSetPanel extends Composite implements SelectionListener, UiConstants {
+
+    // Style Contants
+    private static final int BUTTON_GRID_STYLE = GridData.HORIZONTAL_ALIGN_FILL | GridData.HORIZONTAL_ALIGN_CENTER;
+
+    private static final String ATTRIBUTE_COL_TEXT = UiConstants.Util.getString("EditInputSetPanel.attributeCol.text"); //$NON-NLS-1$
+    private static final String BINDING_COL_TEXT = UiConstants.Util.getString("EditInputSetPanel.bindingCol.text"); //$NON-NLS-1$
+    private static final String NEW_BUTTON_TEXT = UiConstants.Util.getString("EditInputSetPanel.newButton.text"); //$NON-NLS-1$
+    private static final String NEW_BUTTON_TOOLTIP = UiConstants.Util.getString("EditInputSetPanel.newButton.toolTip"); //$NON-NLS-1$
+    private static final String BIND_BUTTON_TEXT = UiConstants.Util.getString("EditInputSetPanel.bindButton.text"); //$NON-NLS-1$
+    private static final String BIND_BUTTON_TOOLTIP = UiConstants.Util.getString("EditInputSetPanel.bindButton.toolTip"); //$NON-NLS-1$
+    private static final String UNBIND_BUTTON_TEXT = UiConstants.Util.getString("EditInputSetPanel.unbindButton.text"); //$NON-NLS-1$
+    private static final String UNBIND_BUTTON_TOOLTIP = UiConstants.Util.getString("EditInputSetPanel.unbindButton.toolTip"); //$NON-NLS-1$
+    private static final String DELETE_BUTTON_TEXT = UiConstants.Util.getString("EditInputSetPanel.deleteButton.text"); //$NON-NLS-1$
+    private static final String DELETE_BUTTON_TOOLTIP = UiConstants.Util.getString("EditInputSetPanel.deleteButton.toolTip"); //$NON-NLS-1$
+    private static final String TREE_TOOLTIP = UiConstants.Util.getString("EditInputSetPanel.tree.toolTip"); //$NON-NLS-1$
+
+    private static final String UNDO_NEW = UiConstants.Util.getString("EditInputSetPanel.undoNew"); //$NON-NLS-1$
+    private static final String UNDO_BIND = UiConstants.Util.getString("EditInputSetPanel.undoBind"); //$NON-NLS-1$
+    private static final String UNDO_UNBIND = UiConstants.Util.getString("EditInputSetPanel.undoUnbind"); //$NON-NLS-1$
+    private static final String UNDO_DELETE = UiConstants.Util.getString("EditInputSetPanel.undoDelete"); //$NON-NLS-1$
+    private static final String UNDO_DELETE_MANY = UiConstants.Util.getString("EditInputSetPanel.undoDeleteMany"); //$NON-NLS-1$
+
+    private static final String PARAM_BASE_NAME = UiConstants.Util.getString("EditInputSetPanel.inputParamBaseName.text"); //$NON-NLS-1$
+
+    private Table table;
+    TableViewer tableViewer;
+    private Button btnNewButton;
+    private Button btnBindButton;
+    private Button btnUnbindButton;
+    private Button btnDeleteButton;
+
+    private TreeViewer tvTreeViewer;
+    private TreeContentProvider treeContentProvider;
+
+    InputSetAdapter isoInputSetObject;
+    private BindingContentProvider cpBindingContentProvider;
+    private BindingLabelProvider lpBindingLabelProvider;
+    private TreeMappingAdapter mappingAdapter;
+    private IMappableTree mappableTree;
+
+    // Set column names
+    String[] columnNames = new String[] {ATTRIBUTE_COL_TEXT, BINDING_COL_TEXT};
+
+    /**
+     * Constructor.
+     * 
+     * @param parent Parent of this control
+     */
+    public EditInputSetPanel( Composite parent ) {
+        super(parent, SWT.NONE);
+        createControl();
+    }
+
+    /**
+     * Initialize the content of the panel.
+     */
+    private void init() {
+
+        // Initialize the Panels with initial bindings and sql data
+        if (isoInputSetObject != null) {
+            getBindingList().addChangeListener(new BindingChangeHandler());
+        }
+
+        InputParameter sampleInputParam = null;
+        if (getBindingList().size() > 0) {
+            sampleInputParam = (InputParameter)getBindingList().get(0).getItem();
+        } else {
+            sampleInputParam = TransformationFactory.eINSTANCE.createInputParameter();
+        }
+
+        // Set up table editing for the name of the input parameter in the first column
+        IPropertySource propertySource = ModelUtilities.getEmfPropertySourceProvider().getPropertySource(sampleInputParam);
+        IPropertyDescriptor[] properties = propertySource.getPropertyDescriptors();
+
+        CellEditor[] cellEditors = new CellEditor[2];
+        cellEditors[0] = properties[0].createPropertyEditor(table);
+
+        columnNames[0] = properties[0].getDisplayName();
+        tableViewer.setColumnProperties(columnNames);
+        tableViewer.setCellEditors(cellEditors);
+        tableViewer.setCellModifier(new InputParameterNameModifier(properties[0]));
+
+        // The input for the table viewer is the BindingList
+        tableViewer.setInput(getBindingList());
+
+        // Initialize the Button states
+        setButtonStates();
+
+        if (mappingAdapter != null) {
+            @SuppressWarnings("unchecked")
+			Collection<MappingClass> parentMappingClasses = mappingAdapter.getParentMappingClasses(isoInputSetObject.getInputSet().getMappingClass(),
+                                                                                     this.mappableTree,
+                                                                                     false);
+            tvTreeViewer.setInput(parentMappingClasses);
+        }
+
+        // Initialize the message area at the top of the dialog
+        table.addSelectionListener(this);
+
+    }
+
+    public void setBusinessObject( InputSetAdapter iso ) {
+        this.isoInputSetObject = iso;
+        init();
+    }
+
+    public void setMappingAdapters( TreeMappingAdapter adapter,
+                                    IMappableTree tree ) {
+        this.mappingAdapter = adapter;
+        this.mappableTree = tree;
+    }
+
+    public void refreshFromBusinessObject() {
+        tableViewer.refresh(true);
+    }
+
+    /**
+     * @See org.teiid.designer.ui.editors.ModelObjectEditor#createControl(org.eclipse.swt.widgets.Composite)
+     */
+    private void createControl() {
+
+        // ------------------------------
+        // Set layout for the SashForm
+        // ------------------------------
+        GridLayoutFactory.swtDefaults().numColumns(3).applyTo(this);
+        GridDataFactory.swtDefaults().grab(true,  true).hint(600, 250).applyTo(this);
+
+        // 1. Create the table
+        createTableViewerPanel(this);
+
+        // 2. Create the button panel
+        createControlButtonPanel(this);
+
+        // 3. Create the tree
+        createTreeViewerPanel(this);
+
+    }
+
+    /**
+     * Create the button panel
+     */
+    private void createControlButtonPanel( Composite parent ) {
+        Composite buttonComposite = new Composite(parent, SWT.NONE);
+
+        GridLayout gridLayout = new GridLayout();
+        buttonComposite.setLayout(gridLayout);
+        gridLayout.numColumns = 1;
+        GridData gridData = new GridData(GridData.VERTICAL_ALIGN_CENTER);
+        buttonComposite.setLayoutData(gridData);
+
+        btnNewButton = WidgetFactory.createButton(buttonComposite, NEW_BUTTON_TEXT, BUTTON_GRID_STYLE);
+        btnNewButton.addSelectionListener(new SelectionAdapter() {
+            @Override
+            public void widgetSelected( final SelectionEvent event ) {
+                newButtonPressed();
+            }
+        });
+        btnNewButton.setToolTipText(NEW_BUTTON_TOOLTIP);
+
+        btnBindButton = WidgetFactory.createButton(buttonComposite, BIND_BUTTON_TEXT, BUTTON_GRID_STYLE);
+        btnBindButton.addSelectionListener(new SelectionAdapter() {
+            @Override
+            public void widgetSelected( final SelectionEvent event ) {
+                bindButtonPressed();
+            }
+        });
+        btnBindButton.setToolTipText(BIND_BUTTON_TOOLTIP);
+
+        btnUnbindButton = WidgetFactory.createButton(buttonComposite, UNBIND_BUTTON_TEXT, BUTTON_GRID_STYLE);
+        btnUnbindButton.addSelectionListener(new SelectionAdapter() {
+            @Override
+            public void widgetSelected( final SelectionEvent event ) {
+                unbindButtonPressed();
+            }
+        });
+        btnUnbindButton.setToolTipText(UNBIND_BUTTON_TOOLTIP);
+
+        btnDeleteButton = WidgetFactory.createButton(buttonComposite, DELETE_BUTTON_TEXT, BUTTON_GRID_STYLE);
+        btnDeleteButton.addSelectionListener(new SelectionAdapter() {
+            @Override
+            public void widgetSelected( final SelectionEvent event ) {
+                deleteButtonPressed();
+            }
+        });
+        btnDeleteButton.setToolTipText(DELETE_BUTTON_TOOLTIP);
+
+    }
+
+    /**
+     * Create the Table
+     */
+    private void createTable( Composite parent ) {
+        int style = SWT.MULTI | SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION;
+
+        table = new Table(parent, style);
+        TableLayout layout = new TableLayout();
+        table.setLayout(layout);
+
+        GridDataFactory.swtDefaults().grab(true,  true).hint(250, 250).applyTo(table);
+        table.setLinesVisible(true);
+        table.setHeaderVisible(true);
+
+        // 1st column with attribute
+        TableColumn column1 = new TableColumn(table, SWT.LEFT, 0);
+        column1.setText(ATTRIBUTE_COL_TEXT);
+        ColumnWeightData weight = new ColumnWeightData(1);
+        layout.addColumnData(weight);
+
+        // 2nd column with binding
+        TableColumn column2 = new TableColumn(table, SWT.LEFT, 1);
+        column2.setText(BINDING_COL_TEXT);
+        weight = new ColumnWeightData(1);
+        layout.addColumnData(weight);
+
+    }
+
+    /*
+     * Create the TableViewerPanel 
+     */
+    private void createTableViewerPanel( Composite parent ) {
+        // Create the table
+        createTable(parent);
+
+        // Create and setup the TableViewer
+        tableViewer = new TableViewer(table);
+        tableViewer.setUseHashlookup(true);
+
+        cpBindingContentProvider = new BindingContentProvider();
+        lpBindingLabelProvider = new BindingLabelProvider();
+
+        tableViewer.setContentProvider(cpBindingContentProvider);
+        tableViewer.setLabelProvider(lpBindingLabelProvider);
+
+        tableViewer.getTable().addSelectionListener(new SelectionListener() {
+            @Override
+			public void widgetDefaultSelected( SelectionEvent theEvent ) {
+                handleTableSelection();
+            }
+
+            @Override
+			public void widgetSelected( SelectionEvent theEvent ) {
+                handleTableSelection();
+            }
+        });
+    }
+
+    /**
+     * 
+     * @param theParent
+     */
+    protected void createTreeViewerPanel( Composite theParent ) {
+
+        tvTreeViewer = createTreeViewer(theParent);
+
+        Tree tree = tvTreeViewer.getTree();
+        tree.addSelectionListener(new SelectionListener() {
+            @Override
+			public void widgetDefaultSelected( SelectionEvent theEvent ) {
+                handleTreeSelection();
+            }
+
+            @Override
+			public void widgetSelected( SelectionEvent theEvent ) {
+                handleTreeSelection();
+            }
+        });
+
+        tree.setToolTipText(TREE_TOOLTIP);
+    }
+
+    public TreeViewer createTreeViewer( Composite parent ) {
+        TreeViewer treeViewer = new TreeViewer(parent, SWT.BORDER | SWT.SINGLE | SWT.FILL | SWT.H_SCROLL | SWT.V_SCROLL);
+
+        final GridData gridData = new GridData(GridData.FILL_BOTH);
+        gridData.grabExcessHorizontalSpace = true;
+        gridData.widthHint = 220;
+        treeViewer.getControl().setLayoutData(gridData);
+        
+        treeContentProvider = new TreeContentProvider();
+        treeViewer.setContentProvider(treeContentProvider);
+        treeViewer.setLabelProvider(ModelUtilities.getEMFLabelProvider());
+        treeViewer.setUseHashlookup(true);
+        
+        return treeViewer;
+    }
+
+    /**
+     * Handler for tree selection.
+     */
+    void handleTreeSelection() {
+        setButtonStates();
+    }
+
+    void handleTableSelection() {
+        setButtonStates();
+        List<Object> tableSelection = SelectionUtilities.getSelectedObjects(tableViewer.getSelection());
+        if (tableSelection.size() == 1) {
+            BindingAdapter binding = (BindingAdapter)tableSelection.get(0);
+            Object mapping = binding.getMapping();
+            if (mapping != null) {
+                tvTreeViewer.setSelection(new StructuredSelection(mapping));
+            }
+        }
+    }
+
+    BindingList getBindingList() {
+        return isoInputSetObject.getBindingList();
+    }
+
+    /**
+     * Handler for Bind Button
+     */
+    void bindButtonPressed() {
+        boolean started = ModelerCore.startTxn(UNDO_BIND, this);
+        boolean succeeded = false;
+        try {
+            // get the selected item from the tree
+            ISelection is = tvTreeViewer.getSelection();
+            EObject mcColumn = SelectionUtilities.getSelectedEObject(is);
+
+            // get the selected item
+            is = this.tableViewer.getSelection();
+            BindingAdapter bindingAdapter = (BindingAdapter)SelectionUtilities.getSelectedObject(is);
+
+            if (bindingAdapter != null) {
+                bindingAdapter.setMapping(mcColumn);
+                refreshFromBusinessObject();
+            }
+            succeeded = true;
+        } finally {
+            if (started) {
+                if (succeeded) {
+                    ModelerCore.commitTxn();
+                } else {
+                    ModelerCore.rollbackTxn();
+                }
+            }
+
+        }
+
+        setButtonStates();
+    }
+
+    /**
+     * Handler for Unbind Button
+     */
+    void unbindButtonPressed() {
+        boolean started = ModelerCore.startTxn(UNDO_UNBIND, this);
+        boolean succeeded = false;
+        try {
+
+            // get the selected item in the table
+            ISelection is = this.tableViewer.getSelection();
+            BindingAdapter bindingAdapter = (BindingAdapter)SelectionUtilities.getSelectedObject(is);
+
+            if (bindingAdapter != null) {
+                bindingAdapter.setMapping(null);
+                bindingAdapter.deleteBinding();
+            }
+            succeeded = true;
+        } catch (ModelerCoreException e) {
+            UiConstants.Util.log(e);
+        } finally {
+            if (started) {
+                if (succeeded) {
+                    ModelerCore.commitTxn();
+                } else {
+                    ModelerCore.rollbackTxn();
+                }
+            }
+        }
+
+        refreshFromBusinessObject();
+        setButtonStates();
+    }
+
+    /**
+     * Handler for new Button
+     */
+    void newButtonPressed() {
+
+        boolean started = ModelerCore.startTxn(UNDO_NEW, this);
+        boolean succeeded = false;
+        try {
+            // create a new InputParameter in the InputSet
+            InputParameter param = TransformationFactory.eINSTANCE.createInputParameter();
+            InputSet inputSet = isoInputSetObject.getInputSet();
+            param.setInputSet(inputSet);
+
+            EObject treeSelection = SelectionUtilities.getSelectedEObject(tvTreeViewer.getSelection());
+            if (treeSelection instanceof MappingClassColumn) {
+                param.setName(((MappingClassColumn)treeSelection).getName());
+            } else {
+                treeSelection = null;
+                // generate a name for the parameter
+                int nameIndex = getBindingList().size();
+                String name = PARAM_BASE_NAME + (++nameIndex);
+                // check for name clash with an existing parameter
+                boolean tryAgain = true;
+                while (tryAgain) {
+                    tryAgain = false;
+                    for (@SuppressWarnings("rawtypes")
+					Iterator iter = inputSet.getInputParameters().iterator(); iter.hasNext();) {
+                        if (name.equals(((InputParameter)iter.next()).getName())) {
+                            name = PARAM_BASE_NAME + (++nameIndex);
+                            tryAgain = true;
+                        }
+                    }
+                }
+                param.setName(name);
+            }
+
+            // create a new BindingAdapter for this parameter and add it to the binding list
+            BindingAdapter binding = null;
+
+            if (treeSelection != null) {
+                binding = new BindingAdapter(param, treeSelection);
+            } else {
+                binding = new BindingAdapter(param);
+            }
+            getBindingList().add(binding);
+            refreshFromBusinessObject();
+            setButtonStates();
+
+            succeeded = true;
+        } finally {
+            if (started) {
+                if (succeeded) {
+                    ModelerCore.commitTxn();
+                } else {
+                    ModelerCore.rollbackTxn();
+                }
+            }
+        }
+
+    }
+
+    /**
+     * Handler for delete Button
+     */
+    void deleteButtonPressed() {
+        List<Object> tableSelection = SelectionUtilities.getSelectedObjects(tableViewer.getSelection());
+        boolean started = false;
+        boolean succeeded = false;
+        if (tableSelection.size() == 1) {
+            started = ModelerCore.startTxn(UNDO_DELETE, this);
+        } else {
+            started = ModelerCore.startTxn(UNDO_DELETE_MANY, this);
+        }
+        try {
+            for (@SuppressWarnings("rawtypes")
+			Iterator iter = tableSelection.iterator(); iter.hasNext();) {
+                BindingAdapter binding = (BindingAdapter)iter.next();
+                binding.delete();
+                getBindingList().remove(binding);
+            }
+            succeeded = true;
+        } catch (ModelerCoreException e) {
+            UiConstants.Util.log(e);
+        } finally {
+            if (started) {
+                if (succeeded) {
+                    ModelerCore.commitTxn();
+                } else {
+                    ModelerCore.rollbackTxn();
+                }
+            }
+        }
+        refreshFromBusinessObject();
+        setButtonStates();
+    }
+
+    /**
+     * Set the enabled/disabled states of the Buttons.
+     */
+    private void setButtonStates() {
+        if (ModelObjectUtilities.isReadOnly(isoInputSetObject.getInputSet())) {
+            btnNewButton.setEnabled(false);
+            btnDeleteButton.setEnabled(false);
+            btnBindButton.setEnabled(false);
+            btnUnbindButton.setEnabled(false);
+        } else {
+
+            // enable delete button only if something in the table is selected:
+            btnDeleteButton.setEnabled(!tableViewer.getSelection().isEmpty());
+
+            // enable the new button if a MappingClassColumn is selected in the tree
+            boolean enable = false;
+            EObject treeSelection = SelectionUtilities.getSelectedEObject(tvTreeViewer.getSelection());
+            if (treeSelection instanceof MappingClassColumn) {
+                enable = true;
+            }
+            btnNewButton.setEnabled(true);
+
+            // enable the bind button only if a single valid object is selected in both the table and tree
+            enable = false;
+            List<Object> tableSelection = SelectionUtilities.getSelectedObjects(tableViewer.getSelection());
+            if (tableSelection.size() == 1) {
+                BindingAdapter binding = (BindingAdapter)tableSelection.get(0);
+                if (!binding.isBound()) {
+                    treeSelection = SelectionUtilities.getSelectedEObject(tvTreeViewer.getSelection());
+                    if (treeSelection instanceof MappingClassColumn) {
+                        enable = true;
+                    }
+                }
+            }
+            btnBindButton.setEnabled(enable);
+
+            // enable the unbind button only if something is selected in the table, and it is bound
+            enable = false;
+            tableSelection = SelectionUtilities.getSelectedObjects(tableViewer.getSelection());
+            if (tableSelection.size() == 1) {
+                BindingAdapter binding = (BindingAdapter)tableSelection.get(0);
+                if (binding.isBound()) {
+                    enable = true;
+                }
+            }
+            btnUnbindButton.setEnabled(enable);
+        }
+
+    }
+
+    // ==========================================================
+    // SelectionListener Interface
+    // ==========================================================
+
+    @Override
+	public void widgetSelected( SelectionEvent e ) {
+        //      System.out.println("[InputSetObjectEditorPage.widgetSelected]"); //$NON-NLS-1$
+
+    }
+
+    @Override
+	public void widgetDefaultSelected( SelectionEvent e ) {
+        widgetSelected(e);
+    }
+
+    // ======================================================
+    // Inner Classes
+    // ======================================================
+
+    class TreeContentProvider implements ITreeContentProvider {
+
+        public TreeContentProvider() {
+            super();
+        }
+
+        @Override
+		public Object[] getChildren( Object parentElement ) {
+            if (parentElement instanceof MappingClass) {
+                return ((MappingClass)parentElement).getColumns().toArray();
+            }
+            return new Object[0];
+        }
+
+        @Override
+		public Object getParent( Object element ) {
+            if (element instanceof MappingClassColumn) {
+                return ((MappingClassColumn)element).getMappingClass();
+            }
+            return null;
+        }
+
+        @Override
+		public boolean hasChildren( Object element ) {
+            return (element instanceof MappingClass);
+        }
+
+        @Override
+		public void inputChanged( Viewer v,
+                                  Object oldInput,
+                                  Object newInput ) {
+        }
+
+        @Override
+		public void dispose() {
+        }
+
+        // Return the bindings as an array of Objects
+        @SuppressWarnings("rawtypes")
+		@Override
+		public Object[] getElements( Object parent ) {
+            return ((Collection)parent).toArray();
+        }
+
+    }
+
+    /**
+     * InnerClass that acts as a proxy for the BindingList providing content for the Table. It implements the IBindingListViewer
+     * interface since it must register changeListeners with the BindingList
+     */
+    class BindingContentProvider implements IStructuredContentProvider, IBindingListViewer {
+
+        // this will wrap the bindinglist in the Business Object (isoInputSetObject)
+
+        @Override
+		public void inputChanged( Viewer v,
+                                  Object oldInput,
+                                  Object newInput ) {
+            if (newInput != null) ((BindingList)newInput).addChangeListener(this);
+            if (oldInput != null) ((BindingList)oldInput).removeChangeListener(this);
+        }
+
+        @Override
+		public void dispose() {
+            getBindingList().removeChangeListener(this);
+        }
+
+        // Return the bindings as an array of Objects
+        @Override
+		public Object[] getElements( Object parent ) {
+            return getBindingList().getAll().toArray();
+        }
+
+        /**
+         * @see IBindingListViewer#addBinding(BindingAdapter)
+         */
+        @Override
+		public void addBinding( BindingAdapter binding ) {
+            tableViewer.add(binding);
+        }
+
+        /**
+         * @see IBindingListViewer#insertBinding(BindingAdapter, int)
+         */
+        @Override
+		public void insertBinding( BindingAdapter binding,
+                                   int index ) {
+            tableViewer.insert(binding, index);
+        }
+
+        /**
+         * @see IBindingListViewer#addBindings(Object[])
+         */
+        @Override
+		public void addBindings( Object[] bindings ) {
+            tableViewer.add(bindings);
+        }
+
+        /**
+         * @see IBindingListViewer#removeBinding(BindingAdapter)
+         */
+        @Override
+		public void removeBinding( BindingAdapter binding ) {
+            tableViewer.remove(binding);
+        }
+
+        /**
+         * @see IBindingListViewer#removeBindings(Object[])
+         */
+        @Override
+		public void removeBindings( Object[] bindings ) {
+            tableViewer.remove(bindings);
+        }
+
+        /**
+         * @see IBindingListViewer#updateBinding(BindingAdapter)
+         */
+        @Override
+		public void updateBinding( BindingAdapter binding ) {
+            tableViewer.update(binding, null);
+        }
+
+        /**
+         * @see IBindingListViewer#refresh(boolean)
+         */
+        @Override
+		public void refresh( boolean updateLabels ) {
+            tableViewer.refresh(updateLabels);
+        }
+
+    }
+
+    class BindingLabelProvider extends ModelExplorerLabelProvider implements ITableLabelProvider, PluginConstants.Images {
+
+        private static final String EMPTY_STRING = ""; //$NON-NLS-1$
+
+        /**
+         * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnText(java.lang.Object, int)
+         */
+        @Override
+		public String getColumnText( Object element,
+                                     int columnIndex ) {
+            String result = EMPTY_STRING;
+            BindingAdapter binding = (BindingAdapter)element;
+            switch (columnIndex) {
+                case 0: // InputParameter
+                    Object attr = binding.getItem();
+                    if (attr != null && attr instanceof EObject) {
+                        result = super.getText(attr);
+                    } else if (attr instanceof String) {
+                        result = (String)attr;
+                    }
+                    break;
+                case 1: // MappingClassColumn
+                    Object column = binding.getMapping();
+                    if (column != null && column instanceof EObject) {
+                        result = super.getText(((EObject)column).eContainer()) + '.';
+                        result += super.getText(column);
+                    } else if (column instanceof String) {
+                        result = (String)column;
+                    }
+                    break;
+                default:
+                    break;
+            }
+            return result;
+        }
+
+        /**
+         * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnImage(java.lang.Object, int)
+         */
+        @Override
+		public Image getColumnImage( Object element,
+                                     int columnIndex ) {
+            Image image = null;
+            BindingAdapter binding = (BindingAdapter)element;
+            switch (columnIndex) {
+                case 0: // Attribute Column
+                    Object attr = binding.getItem();
+                    if (attr != null && attr instanceof EObject) {
+                        image = super.getImage(attr);
+                    }
+                    break;
+                case 1: // SQL Symbol Column
+                    Object column = binding.getMapping();
+                    if (column != null && column instanceof EObject) {
+                        image = super.getImage(column);
+                    }
+                    break;
+                default:
+                    break;
+            }
+            return image;
+        }
+    }
+
+    /**
+     * InnerClass that acts as a proxy for the BindingList providing content for the Table. It implements the IBindingListViewer
+     * interface since it must register changeListeners with the BindingList
+     */
+    class BindingChangeHandler implements IBindingListViewer {
+
+        // ------------------------------------------------------------------
+        // IBindingListView interface
+        // ------------------------------------------------------------------
+
+        /**
+         * Update the view to reflect the fact that a binding was added to the binding list
+         * 
+         * @param binding
+         */
+        @Override
+		public void addBinding( BindingAdapter binding ) {
+        }
+
+        /**
+         * Update the view to reflect the fact that a binding was added to the binding list
+         * 
+         * @param binding
+         */
+        @Override
+		public void insertBinding( BindingAdapter binding,
+                                   int index ) {
+        }
+
+        /**
+         * Update the view to reflect the fact that bindings were added to the binding list
+         * 
+         * @param bindings
+         */
+        @Override
+		public void addBindings( Object[] bindings ) {
+        }
+
+        /**
+         * Update the view to reflect the fact that a binding was removed from the binding list
+         * 
+         * @param binding
+         */
+        @Override
+		public void removeBinding( BindingAdapter binding ) {
+        }
+
+        /**
+         * Update the view to reflect the fact that bindings were removed from the binding list
+         * 
+         * @param bindings
+         */
+        @Override
+		public void removeBindings( Object[] bindings ) {
+            // Put the bound symbols back on the unmatched symbols list
+
+        }
+
+        /**
+         * Update the view to reflect the fact that one of the bindings was modified
+         * 
+         * @param binding
+         */
+        @Override
+		public void updateBinding( BindingAdapter binding ) {
+        }
+
+        /**
+         * Update the view to reflect the fact that one of the symbols was modified
+         * 
+         * @param updateLabels
+         */
+        @Override
+		public void refresh( boolean updateLabels ) {
+        }
+    }
+
+    class InputParameterNameModifier implements ICellModifier {
+
+        private String propertyName;
+        private IPropertyDescriptor descriptor;
+
+        public InputParameterNameModifier( IPropertyDescriptor descriptor ) {
+            this.propertyName = columnNames[0];
+            this.descriptor = descriptor;
+        }
+
+        /**
+         * @see org.eclipse.jface.viewers.ICellModifier#canModify(java.lang.Object, java.lang.String)
+         */
+        @Override
+		public boolean canModify( Object element,
+                                  String property ) {
+            return propertyName.equals(property) && (!ModelObjectUtilities.isReadOnly(isoInputSetObject.getInputSet()));
+        }
+
+        /**
+         * @see org.eclipse.jface.viewers.ICellModifier#getValue(java.lang.Object, java.lang.String)
+         */
+        @Override
+		public Object getValue( Object element,
+                                String property ) {
+            if (element instanceof BindingAdapter) {
+                Object input = ((BindingAdapter)element).getItem();
+                IPropertySource propertySource = ModelUtilities.getEmfPropertySourceProvider().getPropertySource(input);
+                Object value = propertySource.getPropertyValue(descriptor.getId());
+                // the real value may be inside a PropertyValueWrapper
+                if (value instanceof PropertyValueWrapper) {
+                    value = ((PropertyValueWrapper)value).getEditableValue(value);
+                }
+                return value;
+            }
+            IPropertySource propertySource = ModelUtilities.getEmfPropertySourceProvider().getPropertySource(element);
+            return propertySource.getPropertyValue(descriptor.getId());
+        }
+
+        /**
+         * @see org.eclipse.jface.viewers.ICellModifier#modify(java.lang.Object, java.lang.String, java.lang.Object)
+         */
+        @Override
+		public void modify( Object element,
+                            String property,
+                            Object value ) {
+            // Do not set Null or EmptyString as Name - results in badness
+            if (!isNullOrEmptyString(value)) {
+                if (element instanceof BindingAdapter) {
+                    Object input = ((BindingAdapter)element).getItem();
+                    IPropertySource propertySource = ModelUtilities.getEmfPropertySourceProvider().getPropertySource(input);
+                    propertySource.setPropertyValue(descriptor.getId(), value);
+                } else if (element instanceof TableItem) {
+                    // the BindingAdapter is inside the TableItem
+                    Object input = ((TableItem)element).getData();
+                    modify(input, property, value);
+                } else {
+                    IPropertySource propertySource = ModelUtilities.getEmfPropertySourceProvider().getPropertySource(element);
+                    propertySource.setPropertyValue(descriptor.getId(), value);
+                }
+            }
+            refreshFromBusinessObject();
+        }
+
+        /*
+         * Check whether the supplied Object is null or is a zero length string
+         */
+        private boolean isNullOrEmptyString( Object value ) {
+            boolean result = false;
+            if (value == null) {
+                result = true;
+            } else if (value instanceof String) {
+                String strValue = (String)value;
+                if (strValue.trim().length() == 0) {
+                    result = true;
+                }
+            }
+            return result;
+        }
+
+    }
+}
diff --git a/plugins/org.teiid.designer.mapping.ui/src/org/teiid/designer/mapping/ui/i18n.properties b/plugins/org.teiid.designer.mapping.ui/src/org/teiid/designer/mapping/ui/i18n.properties
index 4b770af..2c5fd21 100644
--- a/plugins/org.teiid.designer.mapping.ui/src/org/teiid/designer/mapping/ui/i18n.properties
+++ b/plugins/org.teiid.designer.mapping.ui/src/org/teiid/designer/mapping/ui/i18n.properties
@@ -106,30 +106,31 @@
 org.teiid.designer.mapping.ui.actions.SaveDiagramAction.text=Save Diagram To File
 org.teiid.designer.mapping.ui.actions.SaveDiagramAction.toolTip=Save Diagram To File
 
-#----------------- InputSetObjectEditorPage -----------------
-InputSetObjectEditorPage.title.text=Input Set Editor
-InputSetObjectEditorPage.title.toolTip=Input Set Editor
-InputSetObjectEditorPage.attributeCol.text=Input Parameters
-InputSetObjectEditorPage.attributeCol.toolTip=Input Parameters
-InputSetObjectEditorPage.bindingCol.text=Mapping Class Bindings
-InputSetObjectEditorPage.bindingCol.toolTip=Mapping Class Bindings
-InputSetObjectEditorPage.newButton.text=< New
-InputSetObjectEditorPage.newButton.toolTip=Create a new Input Parameter
-InputSetObjectEditorPage.bindButton.text=< Bind
-InputSetObjectEditorPage.bindButton.toolTip=Bind the selected Input Parameter
-InputSetObjectEditorPage.unbindButton.text=Unbind >
-InputSetObjectEditorPage.unbindButton.toolTip=Unbind the selected Input Parameter
-InputSetObjectEditorPage.deleteButton.text=Delete
-InputSetObjectEditorPage.deleteButton.toolTip=Delete the selected Input Parameter
-InputSetObjectEditorPage.tree.title=Available Result Sets
-InputSetObjectEditorPage.tree.toolTip=Available Result Sets
-InputSetObjectEditorPage.inputParamBaseName.text=InputParam
+#----------------- Input Set Editor -----------------
 
-InputSetPanel.undoDelete=Delete Input Parameter
-InputSetPanel.undoDeleteMany=Delete Input Parameters
-InputSetPanel.undoBind=Bind Input Parameter
-InputSetPanel.undoNew=Create Input Parameter
-InputSetPanel.undoUnbind=Unbind Input Parameter
+EditInputSetDialog.title=Edit Input Set
+EditInputSetDialog.message=Edit Input Set parameters and bind to parent mapping class columns
+EditInputSetPanel.attributeCol.text=Input Parameters
+EditInputSetPanel.attributeCol.toolTip=Input Parameters
+EditInputSetPanel.bindingCol.text=Mapping Class Bindings
+EditInputSetPanel.bindingCol.toolTip=Mapping Class Bindings
+EditInputSetPanel.newButton.text=< New
+EditInputSetPanel.newButton.toolTip=Create a new Input Parameter
+EditInputSetPanel.bindButton.text=< Bind
+EditInputSetPanel.bindButton.toolTip=Bind the selected Input Parameter
+EditInputSetPanel.unbindButton.text=Unbind >
+EditInputSetPanel.unbindButton.toolTip=Unbind the selected Input Parameter
+EditInputSetPanel.deleteButton.text=Delete
+EditInputSetPanel.deleteButton.toolTip=Delete the selected Input Parameter
+EditInputSetPanel.tree.title=Available Result Sets
+EditInputSetPanel.tree.toolTip=Available Result Sets
+EditInputSetPanel.inputParamBaseName.text=InputParam
+
+EditInputSetPanel.undoDelete=Delete Input Parameter
+EditInputSetPanel.undoDeleteMany=Delete Input Parameters
+EditInputSetPanel.undoBind=Bind Input Parameter
+EditInputSetPanel.undoNew=Create Input Parameter
+EditInputSetPanel.undoUnbind=Unbind Input Parameter
 
 #----------------- ChoiceObjectEditorPage -----------------
 ChoicePanel.title.text=Choice Editor
diff --git a/plugins/org.teiid.designer.mapping.ui/src/org/teiid/designer/mapping/ui/model/MappingDiagramModelFactory.java b/plugins/org.teiid.designer.mapping.ui/src/org/teiid/designer/mapping/ui/model/MappingDiagramModelFactory.java
index 32b65cf..21e7910 100644
--- a/plugins/org.teiid.designer.mapping.ui/src/org/teiid/designer/mapping/ui/model/MappingDiagramModelFactory.java
+++ b/plugins/org.teiid.designer.mapping.ui/src/org/teiid/designer/mapping/ui/model/MappingDiagramModelFactory.java
@@ -1908,8 +1908,8 @@
     }
 
     private void addEditInputSetImage( DiagramModelNode diagramNode ) {
-        Image image = UiPlugin.getDefault().getImage(UiConstants.Images.EDIT_OBJECT_ICON);
-        if (image != null) diagramNode.setFirstOverlayImage(image, PluginConstants.INPUT_SET_EDITOR_ID);
+//        Image image = UiPlugin.getDefault().getImage(UiConstants.Images.EDIT_OBJECT_ICON);
+//        if (image != null) diagramNode.setFirstOverlayImage(image, PluginConstants.INPUT_SET_EDITOR_ID);
     }
 
     /**