docs: function (subpath) {
      var pathAsArray = asArrayPath(subpath);
      var absolutePath = Util.joinPaths(this._path, pathAsArray);
      if (absolutePath.length > 0) {
        var absolutePathAsString = asStringPath(absolutePath);
        var cached = this._sharedInternals.cache[absolutePathAsString];
  
        if (cached) {
          return cached;
        } else {
          var subBinding = new Binding(absolutePath, this._sharedInternals);
          this._sharedInternals.cache[absolutePathAsString] = subBinding;
          return subBinding;
        }
      } else {
        return this;
      }
    }