code: function init(schema, name) {  // {{{2
  /**
   * Kind constructor
   *
   * @param schema {Object|String} Schema containing the kind
   * @param name {String} Unique kind name within the schema
   *
   * @method constructor
   */
  
    this.name = name;  // {{{3
    /**
     * Kind name unique within a schema
     *
     * @property name
     * @type String
     */
  
  
    this.schema = typeof schema === 'string' ?  // {{{3
      O.data.schemas[schema] :
      schema
    ;
    /**
     * Schema to which the kind is assigned
     *
     * @property schema
     * @type Object
     */
  
    if (! this.schema) {
      throw O.log.error('Missing schema', schema);
    }
  
    if (this.name in this.schema.kinds) {
      throw O.log.error(this.schema, 'Duplicit kind', this.name);
    }
  
    this.schema.kinds[this.name] = this;
  
    // }}}3
  
  //  O.callChain(this, 'init')();
  
  //  console.log('KIND INIT', this.schema.name, this.name);
  }
docs: `entry.dval` structure description
  
  Contains an [ose/lib/field/object] instance
  
  @property ddef
  @type Object
   Public  {{{1