In my domain, I often need to enforce unique constraints that only apply within specific contexts. For example, I'd like Companies to have unique names within each Country, but it doesn't matter if a Company in a different Country has the same name.
To handle this in SQL, in the Company table I'd define a composite unique constraint on the Name field and the Country foreign key. But in Neo4j, the Country would be implemented using a relationship rather than a property on node.
So can I define a unique constraint that involves both a property and a relationship?