Closed NicolasRouquette closed 6 years ago
Maybe RestrictedReifiedRelationship
? Partial
implies incompleteness, which is why it may truly not be the best choice of words. Restricted
may capture the fact that only certain aspects of the super relationship are redefined.
I don't fully understand the mapping to OWL, so this may be a bad suggestion.
I was thinking ReifiedRelationshipRestriction. I think that better implies that the resulting thing is a restriction, not a relationship.
Would the ReifiedRelationshipRestriction
represent an OWL class that subclasses the reification class?
I agree that ReifiedRelationshipRestriction
is better than RestrictedReifiedRelationship
.
Shall we go with that?
I'm fine with that.
ok, then it shall be!
About the concrete syntax of ReifiedRelationship
vs. ReifiedRelationshipRestriction
.
Based on the 0.9.4 concrete syntax, we have:
// For a ReifiedRelationship
reifiedRelationship <reified relationship class name> {
unreified <object property property name>
[inverse <inverse object property name>]
[<characteristics>]
source <domain>
target <range>
}
// For a ReifiedRelationshipRestriction
reifiedRelationship <name> {
source <domain>
target <range>
}
For ReifiedRelationshipRestriction
, I propose instead:
// For a ReifiedRelationshipRestriction
reifiedRelationshipRestriction <name> {
source <domain>
target <range>
}
This would avoid confusion at the concrete syntax with ReifiedRelationship
.
I'll proceed with the proposal and ask you to review the PR.
It seems to me the ReifiedRelationshipRestriction needs four parameters: (1) the name of the subclass to be created (2) the reification class to be specialized, (3) the source, and (4) the target.
The information about the specialization is specified via ReifiedRelationshipSpecialization
.
There must be at least one such axiom for a given ReifiedRelationshipRestriction
; there could be more than one.
For example:
reifiedRelationship U2 {
unreified u2
source A2
target B2
}
reifiedRelationshipRestriction U3 {
source A3
target B3
}
U3 extendsRelationship U2
That will work. I was a little troubled that U3 didn't seem like the same sort of thing as U2, so "extends" seemed wrong. But U3 is in the domain of hasU2Source and hasU2Target, so in that sense it can be considered to represent a fully reified relationship.
Per this comment and that comment, the distinction between:
ReifiedRelationship
andPartialReifiedRelationship
is misleading with respect to the mapping to OWL which is structurally different in both cases.
What would be a better name for
PartialReifiedRelationship
?