Privileges Required to use Table Definitions 
To use table definitions, you need either:
scheduler-administrator role
system, partition or isolation goup-level permissions
object-specific prvileges
You need one of the following privilege ranks to be able to create table definitions:
Create - allows you to create table definitions on the level the privilege was granted (system, partition, isolation-group), you have no further privileges through this rank, you automatically get privileges on table definitions you create.
Edit - allows you to create, view, and edit all table definitions on the level the privilege was granted (system, partition, isolation-group)
Delete - allows you to create, view, and delete all table definitions on the level the privilege was granted (system, partition, isolation-group)
All - full control over all table definitions on the level the privilege was granted (system, partition, isolation-group)
To successfully edit a table definition, you have to have one the following privileges:
Edit - privilege rank on the table definition, or on table definitions in its partition, isolation group or system-wide
Delete - privilege rank on the table definition, or on table definitions in its partition, isolation group or system-wide
All - privilege rank on the table definition, or on table definitions in its partition, isolation group or system-wide
Table definitions can reference the following objects, you need at least View privileges on these objects when you want to edit a table definition that references them:
Application