Hello,
In the past I made a proposal on Right Click Select to allow the curve modifier to use any spline in a curve object instead of just the first one. https://blender.community/c/rightclickselect/2Zcbbc/
Originally I thought it would be easy since I was thinking in terms of the python api and I thought it would just be a matter of using a different index to get the other splines.
I have a working patch to allow this functionality. In the object runtime curve_cache only the first spline path was stored and used. I converted the path to a ListBase of paths so when the curve_cache is made it stores all splines of the curve objects. Then I can expose a spline index value for all settings that use the curve_cache path.
This effects many different modules of blender. Spline IK, follow path, array modifier, curve modifier, curve guide force field, etc.
Before I try and submit this as a patch I thought it would be better to get input if this would fit in blender.