One of the most fundamental concepts in Kuali Financial Systems is that of the Data Dictionary. This is because the data dictionary is the main repository for metadata within KFS. As such, it tends to glue together classes related to a single piece of functionality. It is also extremely customizable: each data dictionary entry is specified in XML, allowing quick changes to be made to functionality. To give an example: the data dictionary is where we specify the rules class for a document. If we want to change the rules class out completely, that's simply a one line change in the data dictionary. This allows rules to be separate from their related document class, and therefore more easily customizable, while still retaining a single "glob" of functionality.
There are two basic vocabularies of data dictionary. The first is the business object data dictionary, which provides metadata about KFS business objects: what their inquiry pages look like, how their lookups work, and how to display their various fields in forms. There's a full explanation of the business object data dictionary here. Then there are document data dictionary entries, which are split into two similar but distinct vocabularies: the maintenance document data dictionary and the transactional document data dictionary. A fuller discussion of those can be found here. In each of those data dictionaries, we can set authorizations, rules, workflow document types, and other useful stuff.
To sum it all up: the data dictionary is just a set of easily customizable metadata about business objects and documents.