How to make links from links

Usually, links are from ports on nodes, but in my application it’s needed to make link from anywhere on the path of a link.

The results would look like in the acslXtreme software,

Would any one share some thoughts on how to do this? Thanks.

Basically you need to use a GoLabeledLink and add GoPorts to them. You don’t have to use the MidLabel, FromLabel, or ToLabel properties at all. Override GoLabeledLink.LayoutChildren to make sure the ports are where you want them to be (presumably along the stroke) as the link’s stroke path is recalculated or reshaped by the user.
The Processor example demonstrates this, although for a different purpose. Note also that the lines that it draws from the link to the LinkLabel are drawn by LinkLabel.Paint – they are not real objects that can be selected and/or manipulated.
Instead of LinkLabel inheriting from GoText, you’ll want to inherit from GoPort.
The implementation (and the IGoLinkLabel interface) can be simplified since you don’t need any Offset property, if it’s true that you’ll always want it centered on the link stroke.

Thanks, walter. I will try to do this by adding ports as children on GoLabeledLink.