Hi all,
I would like to share the guidance of Ataccama Support regarding a question that I had with respect to using relationship types. I suppose the question will become relevant for us all at some point. So hereby the question and Ataccama's response.
Question
“In the metadata model we can define relations between entities by means of references, or we can embed properties from other entities etc.
Another way to define relations between entities is by means of relationship types. The latter option allows us to visualize the relation in for instance a relationship tab, like there is for terms.
Suppose you are to model new entities. There is no requirement to have this visualized in a relationship tab. So you define a reference from one entity to the other. Later a requirement pops up from a new project, that the relation should be depicted in the relationship tab. So, unfortunately, not possible. Changing the reference into a relationship type is a major system change.
Then always choose the safe way: only use relationship types? Feels a bit awkward right? Having the relationship functionality next to the regular references in the model feels a bit strange anyway, despite the nice functionality of visualizing relations.
So my question is, what are your principle considerations to implement a relation: like a reference or like a relationship type?”
Response
“I clarified the behavior with the engineers and our general approach here is to keep the model as simple as possible. By default, we recommend using references unless there is a clear need for a more complex relationship structure from the start. Relationship types introduce additional complexity and can have performance implications, which is particularly important given our existing performance considerations.
Converting a reference into a relationship type later is not trivial and requires significant system changes. Potential solutions include allowing visualization of references or simplifying the conversion process, but both require substantial development effort.
For now, we recommend using references unless visualization is a known requirement from the start.”
Hope this is of help.
Kind regards,
Albert