code: func (s *DBSchema) Validate() error {
  	if s == nil {
  		return fmt.Errorf("schema is nil")
  	}
  
  	if len(s.Tables) == 0 {
  		return fmt.Errorf("schema has no tables defined")
  	}
  
  	for name, table := range s.Tables {
  		if name != table.Name {
  			return fmt.Errorf("table name mis-match for '%s'", name)
  		}
  
  		if err := table.Validate(); err != nil {
  			return fmt.Errorf("table %q: %s", name, err)
  		}
  	}
  
  	return nil
  }
docs: // Validate validates the schema.