   for e in rpcReq.event
     params.push([['Events', e.replace(' ', '_')], timestamp,
       {object: [timestamp, 0], writable: [timestamp, 0], value: [timestamp, [timestamp, 'xsd:dateTime']]}])
+
+  # Preload DeviceID params
+  loadPath(sessionContext, ['DeviceID', '*'])
 
   for p in params
     loadPath(sessionContext, p[0])

  path = path.slice(0, trimWildcard) if trimWildcard < path.length

  for i in [0..path.length] by 1
    for sup in sessionContext.deviceData.paths.find(path.slice(0, i), true, false)
      v = sessionContext.deviceData.loaded.get(sup)
      depth &= depth ^ sessionContext.deviceData.loaded.get(sup)

    return true if depth == 0

  sessionContext.toLoad ?= []
  sessionContext.toLoad.push([path, depth])
  return false





loadPath = (sessionContext, path, depth) ->
  depth = depth or (1 << path.length) - 1
  return true if sessionContext.new or not depth

  sessionContext.toLoad ?= new Map()

  # Trim trailing wildcards
  trimWildcard = path.length
