I'm confused about how Animation Node's spline from Points node works
Your Node Tree setup is entirely correct. The data which you plan to generate is already there under the hood, but Animation Nodes offers another performance related option: That is, it only generates output if you explicitly tell it to do so in the Output Node. For large node trees with huge meshes or particle systems, this is useful as you can selectively turn off operations which are computationally intense, and enable them only before you render.

As Omar Ahmad commented, the ? sign next to the socket, which is visible in your screenshot, is meant to be a warning that currently for that socket no data is being created.

To make AN generate that Target mesh, do the following: In the Output node, make sure that the button with the little dot inside next to the Spline socket is checked:



The rest of the node tree is exactly the same as yours. If you check that button, you should now see something like this:



When you select your target and Tab into Edit Mode, you'll notice that the three particle systems control the handle positions indeed:



This is the .blend file I used for testing: