I think I understand the confusion.
Relationships in Neo4j, while similar to table joins in SQL, are different in some ways. A relationship does not imply that there is a specific join condition on properties. The properties may be entirely different. Neo4j does not have foreign keys, and relationships do not require that some properties are the same.
Any criteria for why a relationship was created is not captured in the created relationship. If you really need to have that information, then you need to add that somehow as a property in your graph, and how you do it, what format, is entirely up to you.
As an example, if a CSV load was used to create relationships between already existing nodes, and we had :Author nodes and :Book nodes, it's possible that we were matching to :Author nodes by their name, or maybe by their id, or their SSN. :Book nodes could be matched to by title, or by id. Or maybe we matched to them in some other way, matching to a specific genre, then related books of that genre, and we created :WROTE relationships between a certain author to all books in that genre (incorrect, but still possible to do this).
We do not save what query or conditions were used to figure out how the nodes were matched prior to creating a relationship between them, and we don't even know if properties were involved when matching to the nodes in the first place.