a) Don't forget: constraint, function, procedure, trigger.
b) The hint applies to each of such objects: CREATE
[TABLE|VIEW|FUNCTION|...]. To avoid such redundancy we could extend and
clarify the definition of 'SQL object / local object / global object'
within the glossary and refer to it.
c) In general we have 3 levels (namespaces) where object names are
unique across the same or different types.
* cluster-level: database name, tablespace, replication origin,
subscription for logical replication, role, ...?
* database-level: schema, extension, collation, data type cast, ...?
* schema-level: table, index, view, materialized view, foreign table,
sequence, constraint, function, procedure, trigger, operator, ...?
--
Jürgen Purtz