code: func MsIdentities(db XODB, schema string) ([]*MsIdentity, error) {
  	var err error
  
  	// sql query
  	const sqlstr = `SELECT o.name as table_name ` +
  		`FROM sys.objects o inner join sys.columns c on o.object_id = c.object_id ` +
  		`WHERE c.is_identity = 1 ` +
  		`AND schema_name(o.schema_id) = $1 AND o.type = 'U'`
  
  	// run query
  	XOLog(sqlstr, schema)
  	q, err := db.Query(sqlstr, schema)
  	if err != nil {
  		return nil, err
  	}
  	defer q.Close()
  
  	// load results
  	res := []*MsIdentity{}
  	for q.Next() {
  		mi := MsIdentity{}
  
  		// scan
  		err = q.Scan(&mi.TableName)
  		if err != nil {
  			return nil, err
  		}
  
  		res = append(res, &mi)
  	}
  
  	return res, nil
  }
docs: // MsIdentities runs a custom query, returning results as MsIdentity.