diff --git a/GUI/coregui/Models/SessionItem.cpp b/GUI/coregui/Models/SessionItem.cpp
index 0a6c9a1500e072840cbad32d2695e624424806c4..f88608377e411cafa3431cfe4109b5002953c858 100644
--- a/GUI/coregui/Models/SessionItem.cpp
+++ b/GUI/coregui/Models/SessionItem.cpp
@@ -505,24 +505,23 @@ bool SessionItem::isTag(const QString &name) const
     return getTagInfo(name).isValid();
 }
 
-QVariant SessionItem::getChildValue(const QString &name) const
+QVariant SessionItem::getChildValue(const QString &tag) const
 {
-    if (!isTag(name))
+    if (!isTag(tag))
         throw GUIHelpers::Error(
-            "ParameterizedItem::getRegisteredProperty() -> Error. Unknown property '" + name
+            "ParameterizedItem::getRegisteredProperty() -> Error. Unknown property '" + tag
             + "', item '" + modelType() + "'");
 
-    return getItem(name)->value();
+    return getItem(tag)->value();
 }
 
-void SessionItem::setChildValue(const QString &name, const QVariant &variant)
+void SessionItem::setChildValue(const QString &tag, const QVariant &variant)
 {
     // check if variant of previous property coincides with new one
-    if (!isTag(name))
+    if (!isTag(tag))
         throw GUIHelpers::Error("Property not existing!");
 
-
-     getItem(name)->setValue(variant);
+     getItem(tag)->setValue(variant);
 }
 
 SessionItem *SessionItem::addGroupProperty(const QString &groupName, const QString &groupModel)
@@ -543,9 +542,7 @@ SessionItem *SessionItem::setGroupProperty(const QString &name, const QString &v
     qDebug() << "ParameterizedItem::setGroupProperty()" << name << value;
     if (GroupItem *item = dynamic_cast<GroupItem *>(getItem(name))) {
         GroupProperty_t group_property = item->group();
-        if (!value.isEmpty()) {
-            group_property->setCurrentType(value);
-        }
+        group_property->setCurrentType(value);
         return group_property->getCurrentItem();
     }
     return nullptr;
@@ -602,7 +599,7 @@ AttLimits SessionItem::limits() const
     return data(SessionModel::LimitsRole).value<AttLimits>();
 }
 
-void SessionItem::setLimits(AttLimits value)
+void SessionItem::setLimits(const AttLimits &value)
 {
     this->setData(SessionModel::LimitsRole, QVariant::fromValue<AttLimits>(value));
 }
@@ -622,7 +619,7 @@ QString SessionItem::toolTip() const
     return data(Qt::ToolTipRole).toString();
 }
 
-void SessionItem::setToolTip(QString tooltip)
+void SessionItem::setToolTip(const QString &tooltip)
 {
     setData(Qt::ToolTipRole, tooltip);
 }
@@ -632,7 +629,7 @@ QString SessionItem::defaultTag() const
     return data(SessionModel::DefaultTagRole).toString();
 }
 
-void SessionItem::setDefaultTag(QString tag)
+void SessionItem::setDefaultTag(const QString &tag)
 {
     setData(SessionModel::DefaultTagRole, tag);
 }
@@ -646,7 +643,7 @@ ModelMapper *SessionItem::mapper()
     return m_mapper.get();
 }
 
-void SessionItem::setDisplayName(QString display_name)
+void SessionItem::setDisplayName(const QString &display_name)
 {
     setData(SessionModel::DisplayNameRole, display_name);
 }
diff --git a/GUI/coregui/Models/SessionItem.h b/GUI/coregui/Models/SessionItem.h
index 3df4e9418d4019d692052fb1c4694297b0b5f0fd..786a733bae8f97cce42562ba732f069a92e69152 100644
--- a/GUI/coregui/Models/SessionItem.h
+++ b/GUI/coregui/Models/SessionItem.h
@@ -92,10 +92,10 @@ public:
 
     bool isTag(const QString &name) const;
 
-    QVariant getChildValue(const QString &name) const;
-    void setChildValue(const QString &name, const QVariant &variant);
+    QVariant getChildValue(const QString &tag) const;
+    void setChildValue(const QString &tag, const QVariant &variant);
 
-    SessionItem *setGroupProperty(const QString &name, const QString &value = QString()) const;
+    SessionItem *setGroupProperty(const QString &name, const QString &value) const;
     SessionItem *getGroupItem(const QString &name, const QString &type = QString()) const;
 
     virtual QString itemLabel() const;
@@ -120,13 +120,13 @@ public:
     bool setValue(QVariant value);
 
     QString defaultTag() const;
-    void setDefaultTag(QString tag);
+    void setDefaultTag(const QString &tag);
 
-    QString displayName() const; // append index takes some logic - ?
-    void setDisplayName(QString display_name);
+    QString displayName() const; // append index when more than one element
+    void setDisplayName(const QString &display_name);
 
-    QString itemName() const; // storing data in property item
-    void setItemName(const QString &name);
+    QString itemName() const;
+    void setItemName(const QString &name); // create property P_NAME
 
     void setVisible(bool enabled);
     void setEnabled(bool enabled);
@@ -137,13 +137,13 @@ public:
     bool isEditable() const;
 
     AttLimits limits() const;
-    void setLimits(AttLimits value);
+    void setLimits(const AttLimits &value);
 
     int decimals() const;
     void setDecimals(int n);
 
     QString toolTip() const;
-    void setToolTip(QString tooltip);
+    void setToolTip(const QString &tooltip);
 
 
 
diff --git a/GUI/coregui/Models/SessionModel.cpp b/GUI/coregui/Models/SessionModel.cpp
index 37b1844cfc5103acb31db3cc112b924072676135..65b0ff2dc79ecbc172c608e03bd9690a3d82d253 100644
--- a/GUI/coregui/Models/SessionModel.cpp
+++ b/GUI/coregui/Models/SessionModel.cpp
@@ -72,7 +72,7 @@ Qt::ItemFlags SessionModel::flags(const QModelIndex &index) const
         SessionItem *item = itemForIndex(index); // NEW make data editable as default
         if (index.column() == ITEM_VALUE)      // NEW
             result_flags |= Qt::ItemIsEditable;        // NEW
-        QVector<QString> acceptable_child_items = getAcceptableChildItems(index);
+        QVector<QString> acceptable_child_items = getAcceptableDefaultChildTypes(index);
         if (acceptable_child_items.contains(m_dragged_item_type)) {
             result_flags |= Qt::ItemIsDropEnabled;
         }
@@ -225,7 +225,7 @@ bool SessionModel::canDropMimeData(const QMimeData *data, Qt::DropAction action,
         return false;
     if (!parent.isValid())
         return true;
-    QVector<QString> acceptable_child_items = getAcceptableChildItems(parent);
+    QVector<QString> acceptable_child_items = getAcceptableDefaultChildTypes(parent);
     QByteArray xml_data = qUncompress(data->data(SessionXML::MimeType));
     QXmlStreamReader reader(xml_data);
     while (!reader.atEnd()) {
@@ -322,7 +322,7 @@ SessionItem *SessionModel::insertNewItem(QString model_type, const QModelIndex &
     return new_item;
 }
 
-QVector<QString> SessionModel::getAcceptableChildItems(const QModelIndex &parent) const
+QVector<QString> SessionModel::getAcceptableDefaultChildTypes(const QModelIndex &parent) const
 {
     QVector<QString> result;
     if (SessionItem *parent_item = itemForIndex(parent)) {
diff --git a/GUI/coregui/Models/SessionModel.h b/GUI/coregui/Models/SessionModel.h
index 88cea5bb6b1ef45568f93cb622723bf884d4893c..babc4b2e4b7f90b5c312a5d24fb337a382d85767 100644
--- a/GUI/coregui/Models/SessionModel.h
+++ b/GUI/coregui/Models/SessionModel.h
@@ -78,7 +78,7 @@ public:
     QString getModelName() const;
     void setModelName(const QString &name);
 
-    QVector<QString> getAcceptableChildItems(const QModelIndex &parent) const;
+    QVector<QString> getAcceptableDefaultChildTypes(const QModelIndex &parent) const;
 
     void clear();
     void load(const QString &filename = QString());
diff --git a/GUI/coregui/Views/SampleView.cpp b/GUI/coregui/Views/SampleView.cpp
index de9cd48bd3ff861c3b7153bff8f073d0237e17b5..37d9af32e6503dde03aa6d911e955eb04421e8f2 100644
--- a/GUI/coregui/Views/SampleView.cpp
+++ b/GUI/coregui/Views/SampleView.cpp
@@ -217,7 +217,7 @@ void SampleView::showContextMenu(const QPoint &pnt)
     if (!parent_index.isValid()) {
         addItemNames = ItemFactory::getValidTopItemNames().toVector();
     } else {
-        addItemNames = getSampleModel()->getAcceptableChildItems(parent_index);
+        addItemNames = getSampleModel()->getAcceptableDefaultChildTypes(parent_index);
     }
     if (addItemNames.size() > 0) {
         foreach (QString item_name, addItemNames) {