For one-to-one associations we persist an array for the main side rather than a single JSON property in MongoDB (and probably CouchDB as well). Taking OneToOneTest#testBidirectionalManyToOne() as an example, that's the actual vs. the expected persisted format:
As discussed on IRC we could add the information about the association type (OneToOne etc.) to AssociationKeyMetadata. This would allow the dialect to store a single field only when invoked for a one-to-one association via updateAssociation().