Confused by the names of the various elements of a flex family?
It is actually pretty simple.
In a flex family you have basically contents (e.g. fp_C) organized in categories (e.g. fp_P) or parents.
You can define many subtypes for contents and parents. Those subtypes are called Content Definitions (e.g. fp_CD) and Parent Definitions (e.g. fp_PD). There is an asset to define each subtype of a content and an asset to define each subtype of a parent.
A definitions is basically a collection of attributes, so you define as the first step the attributes (e.g. fp_A) then group them in definitions.
Finally, there are filters (e.g fp_F). They are used to apply some post processing to assets when they are created or updated. For example copying fields, image resizing to create thumbnails, etc.