This example illustrates the recursive capabilities of CaseTalk in a commonly encountered situation: folders and files on a hard-disk.
A graphical model would depict such things very simple. A file can be in a folder, and folders can be in another folder.
The problem of depicting the problem domain in a simple graph is that it communicates very poorly, instead we use the domain itself to extract the information:
C:\My Documents\Customers\John Doe\Contact.doc 25KB
D:\Temp\Test.prj 2.5KB
Verbalizing this source would result in the following expressions:
"The size of file C:\My Documents\Customers\John Doe\Contact.doc is 25KB."
"The size of file D:\Temp\Test.prj is 2.5KB."
Classification of these expressions will result in a expression tree like:
The diagram from this expression results in the following:
Grouped
Using the Grouping and Reducing we can depict this model in a set of classes with a self reference on the folder entity.
If we were to Lexicalize this we would end up with a two-table database design for storing folders and files.
To download the project, please visit out Github page.