I did a quick test to validate "Include data types" checkbox. This is what I've observed.
Let's assume you have added a Data Type "ABC-App-Data-Employee" from Data explorer, with property/fields as EmpID, EmpName, EmpRole. Now configure a source from Records tab and add some row values for three properties. (say 2 rows). Now we have a Employee Data Type class with 2 instance records(2 rows) with a DB table pr_App_Data_Employee.
As you know, "Include associated data" involved adding Data instances and schema changes which includes the pr_App_Data_Employee table (empty).
When we create a product file, selecting "include data types" you will get the sourced rows(2 records/instances) of the ABC-App-Data-Employee class which will have 2 records in the pr_App_Data_Employee table. If we uncheck this, you will only see class definition but not really the instances of it.
So, it seems the check box "Include data types" is alternate way to include instances of a Data class, which is done by listing up data classes under "Class instances to include" section before. Am I right?
Using "Include data types" will allow to get you the instances/records of all the Data type classes created in your application. You will have to mention required data classes specifically if you want to go with "Class instances to include" option.
We use "Class instances to include" to list specific classes, this can be Data classes or also Work classes.
Hope this clarifies!
And just to let you know, I have already logged a feedback item FDBK-15177 to update the prhelp article.