diff --git a/dist/js/dataModelController.js b/dist/js/dataModelController.js
index d822d7a1355efbd227fecb3df055216e83d59d10..c4bbea2c54171832e769e8df81471124de3e311b 100644
--- a/dist/js/dataModelController.js
+++ b/dist/js/dataModelController.js
@@ -73,4 +73,8 @@ app.controller('dataModelController', ['$scope', function ($scope) {
             "type": "discrete"
         }
     ];
+
+    $scope.selectDataModelKey = function(index) {
+        $scope.datapoints[index].detailsVisible = !($scope.datapoints[index].detailsVisible);
+    };
 }]);
diff --git a/dist/views/dataModelView.html b/dist/views/dataModelView.html
index ed5f8d9a9bc8faba1ec0afeccd6215dcae62d329..6be46a0fc468dd5291fc5ac3c8fa13f4ac37ef3c 100644
--- a/dist/views/dataModelView.html
+++ b/dist/views/dataModelView.html
@@ -26,12 +26,12 @@
     <div class="analyzer-content">
         <table class="data-model-table">
             <tbody>
-                <tr class="data-model-table-key-row" ng-repeat-start="datapoint in datapoints">
+                <tr class="data-model-table-key-row"  ng-class='{selected: datapoint.detailsVisible}' ng-click="selectDataModelKey($index)" ng-repeat-start="datapoint in datapoints">
                     <td><span class="data-model-table-expand-icon"></span></td>
                     <td>{{datapoint.key}}</td>
                     <td>{{datapoint.description}}</td>
                 </tr>
-                <tr class="data-model-table-details-row" ng-repeat-end>
+                <tr class="data-model-table-details-row"  ng-class='{selected: datapoint.detailsVisible}' ng-repeat-end>
                     <td colspan="3">
                         <table>
                             <tbody>
diff --git a/scss/main.scss b/scss/main.scss
index 4f7215a681b370dbedc71e6ca3baf001218ebefd..2e61d5001e3794150dabdfbf9676d4116b0e6baf 100644
--- a/scss/main.scss
+++ b/scss/main.scss
@@ -404,3 +404,20 @@ footer div {
     border: none;
     padding: 0;
 }
+
+.data-model-table-details-row {
+    display: none;
+}
+
+.data-model-table-details-row.selected {
+    display: table-row;
+}
+
+.data-model-table-key-row.selected .data-model-table-expand-icon {
+    @extend .octicon;
+    @extend .octicon-triangle-down;
+}
+
+.data-model-table-key-row.selected td:last-child {
+    display: none;
+}