So I have this ontology with a class person, and and object property isMarriedTo with the domain and range both being person. I set this to symmetric in Protégé. Now with Owlready2 I try to add this relationship between 2 indivuals:
# Add the fact that 2 persons are maried
def add_mariage(_person1, _person2):
person1 = namespace.Person(_person1)
person2 = namespace.Person(_person2)
person1.isMarriedTo.append(person2)
person2.isMarriedTo.append(person1)
onto.save(file="working_file.owl")
Against my expectations, it only applies the 'isMarriedTo' property to _person1 (correctly, to _person2). However not the other way around. However, when I unmark the symmtric property and try it again, it does in fact add the property to both persons. Am I misunderstanding something?