Create layer and "save schema" features share the rules the fields must to validate:

- FieldName cannot be void

- FieldName cannot be blank.

- FieldName cannot be longer than the max length provided by the driver (10 for shapefiles; no defined in the case of PostGIS layers).

- FieldName cannot be one of the reserved words. Reserved words are read from file so it's configurable. restricted.txt now provides the list of SQL key words as for PostgreSQL: http://www.postgresql.org/docs/8.4/static/sql-keywords-appendix.html