Data dictionary is structured in tables and views, just like other database data. All the data dictionary tables and views for a given database are stored in that database’s SYSTEM. A data dictionary contains:

The definitions of all schema objects in the database (tables, views, indexes, clusters, synonyms, sequences, procedures, functions, packages, triggers, and so on).

  • How much space has been allocated for, and is currently used by, the schema objects.
  • Default values for columns.
  • Integrity constraint information
  • The names of Oracle users
  • Privileges and roles each user has been granted.
  • Auditing information, such as who has accessed or updated various schema objects.
  • Other general database information tablespace.

The data dictionary has three primary uses:

  • Oracle accesses the data dictionary to find information about users, schema objects, and storage structures.
  • Oracle modifies the data dictionary every time that a data definition language (DDL) statement is issued.
  • Any Oracle user can use the data dictionary as a read-only reference for information about the database.

A data dictionary contains metadata i.e data about the database. Example of metadata:

Relational databases (most common type of database) store and provide access not only data but also metadata in a structure called data dictionary or system catalog. It holds information about:

  • tables,
  • columns,
  • data types,
  • constraints
  • table relationships

The users of the database normally don’t interact with the data dictionary, it is only handled by the database administrators.

Source:

https://docs.oracle.com/cd/B10501_01/server.920/a96524/c05dicti.htm

https://dataedo.com/kb/data-glossary/what-is-metadata