Make fields within Contracts required base on the Type that is listed.
For example: we have purchase orders and subcontracts within the cost module. If the type is subcontracts then all the custom attributes we created for subcontracts would be required.