I have created a document that describes the process how-to create a three fields which permissible values are dependent on a choice previously made.
Cascading drop-downs and dependencies between permissible values of fields are used in Incident workspace (Service, Category and Subcategory fields), however the process of creation has not been documented.
I hope that this document will help you understand how this works.
P.S. Should you have any comment how to improve the document, please drop me a line.