Kendo UI Nested JSOn into Grid

return rawData[0].SearchResult.assets;

by Mahmoud Kandeel

HTML

<link rel="stylesheet" href="http://cdn.kendostatic.com/2012.3.1114/styles/kendo.common.min.css">
<link rel="stylesheet" href="http://cdn.kendostatic.com/2012.3.1114/styles/kendo.rtl.min.css">
<link rel="stylesheet" href="http://cdn.kendostatic.com/2012.3.1114/styles/kendo.default.min.css">
<link rel="stylesheet" href="http://cdn.kendostatic.com/2012.3.1114/styles/kendo.dataviz.min.css">
<link rel="stylesheet" href="http://cdn.kendostatic.com/2012.3.1114/styles/kendo.dataviz.default.min.css">
<link rel="stylesheet" href="http://cdn.kendostatic.com/2012.3.1114/styles/kendo.mobile.all.min.css">
<script src="http://cdn.kendostatic.com/2012.3.1114/js/kendo.all.min.js"></script>
<div id="grid"></div>

JavaScript

var data = [{
  "SearchResult": {
    "assets": [{
        "agent": "6.1.0",
        "id": 1,
        "model": "Gateway1",
        "modelId": 2,
        "name": "Name",
        "serialNumber": "Serial01"
      },
      {
        "agent": "M2M",
        "id": 2,
        "model": "Gateway1",
        "modelId": 3,
        "name": "Name",
        "serialNumber": "Serial02"
      }
    ],
    "searchCriteria": {
      "paginationEnabled": false,
      "rowsPerPage": -1,
      "startRow": -1,
      "totalAvailableRows": -1,
      "alternateId": {
        "@xsi.nil": "true"
      },
      "modelNumber": {
        "@xsi.nil": "true"
      },
      "name": "*",
      "serialNumber": {
        "@xsi.nil": "true"
      }
    }
  }
}];

$("#grid").kendoGrid({
  dataSource: {
    data: data,
    schema: {
      data: function(rawData) {
        return rawData[0].SearchResult.assets;
      }
    }
  }
});