I have this idea that souls are fragmented, made out of a lot of other souls. They exist in a cloud. When someone is born, a bunch of soul fragments rush together into their body to create the soul that will become that person, and when they die the soul is released back into the cloud in many parts and bits, each section having learned something from their experience within that body, each section bringing part of that experience into the new body that they will then inhabit. So in a sense, while we are all unique, we each carry experience from hundreds of lives before us. We are a conglomeration of struggle, passion, love, loss. And in some sense, when we die, we continue on as a glimmer of presence of hundreds of other individuals that have yet to be born.
In this sense, if one soul was meant for another, it was meant for a myriad, and while it can love one wholly and truly, it has the ability to love many. One soul is meant for another in a moment, in a location, in a lifetime.
Souls can sense one another. In that second that you meet someone, your soul reads theirs--and perhaps they share fragments, or their bits are complimentary, or perhaps they aren't--but both can distinguish that. Sometimes one is better at observing/reading/noticing than another, but when both souls see each other for what they are, recognize their familiarity and bond in a past life, or a possibility for a future together in this life or the next, (and the bodies that house them allow those souls touch), that is love.
We don't choose who we love. Hundreds of soul bits and fragments that have experienced life and love many times choose that for us. Trust your soul.