docs: function knServiceContext(args)
  {
  	mod_assert.equal(typeof (args['uri_base']), 'string',
  	    '"uri_base" must be a string');
  	mod_assert.equal(typeof (args['service_name']), 'string',
  	    '"service_name" must be a string');
  	mod_assert.equal(typeof (args['version']), 'string',
  	    '"version" must be a string');
  	mod_assert.equal(typeof (args['ident']), 'string',
  	    '"ident" must be a string');
  	mod_assert.equal(typeof (args['list_types']), 'function',
  	    '"list_types" must be a function');
  	mod_assert.equal(typeof (args['list_objects']), 'function',
  	    '"list_objects" must be a function');
  	mod_assert.equal(typeof (args['get']), 'function',
  	    '"get" must be a function');
  
  	this.kns_service = {
  		name: args['service_name'],
  		ident: args['ident'],
  		version: args['version']
  	};
  
  	if ('component' in args) {
  		mod_assert.equal(typeof (args['component']), 'string',
  		    '"component" must be a string');
  		this.kns_service['component'] = args['component'];
  	}
  
  	this.kns_list_types = args['list_types'];
  	this.kns_list_objects = args['list_objects'];
  	this.kns_get = args['get'];
  
  	if ('stats' in args) {
  		mod_assert.equal(typeof (args['stats']), 'function',
  		    '"stats" must be a function');
  		this.kns_stats = args['stats'];
  	}
  
  	if ('schema' in args) {
  		mod_assert.equal(typeof (args['schema']), 'function',
  		    '"schema" must be a function');
  		this.kns_schema = args['schema'];
  	}
  
  	this.kns_uri_base = mod_nutil.chopSlashes(args['uri_base']);
  	this.kns_started = new Date(
  	    Date.now() - process.uptime() * MILLISEC).toISOString();
  }