You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Following the discussion from #449, currently, the semantic model does not provide a mechanism to specify whether a given relationship should be classified as an association or an attribute. This distinction is only on the visual model; however, we need it at the semantic level as well.
There are two potential ways to implement this:
To have the information within the relationship by saying whether it is an attribute or association.
Annotate the end entity (class) by saying whether it is a class/complex type or a datatype/primitive type, which would imply the type or the relationship.
OWL then explicitly distinguishes DatatypeProperty and ObjectProperty. There is a correspondence - datatype properties have instances of rdfs:Datatype as ranges.
The same issue will be with distinguishing datatypes and classes. Some classes are datatypes, and then they are ranges for datatype properties.
So the question boils down to whether we annotate both relationships and classes in DS Core (an maintain consistency), or just one of those. I would annotate both, as it might be easier to use, or hide this behind and interface that will allow me to work with datatype/object properties and classes/datatypes, regardless of whether this is annotated in one place or two.
@skodapetr Just a note - the semantic-level distinction is separate from the visual-level distinction - all combinations are possible - DatatypeProperty displayed as a relation or an attribute, and the same for ObjectProperty.
Based on the semantic-level distinction is separate from the visual-level distinction, the visual model must be able to store additional information. Why not do something similar for other use-cases?
I belive we can have a relationship without a range. Is such relationship is association or attribute? Can I create a property "name" without explicitly stating a range?
There is already a "functionality" to distinguish between association and attribute. The disadvantage is, that it is based on a hardcoded list of "primitives" and a hack.
Following the discussion from #449, currently, the semantic model does not provide a mechanism to specify whether a given relationship should be classified as an association or an attribute. This distinction is only on the visual model; however, we need it at the semantic level as well.
There are two potential ways to implement this:
Related issues: #449, #451
The text was updated successfully, but these errors were encountered: