Open jakebeal opened 3 years ago
This is tricky, because value
is defined as an owl Datatype property rather than ObjectProperty. Overloading it might cause some undesirable complications with the implementation.
I can see that the distinction between a simple property vs. an object reference could merit a different name. We can stick with hasMeasure
then.
Another possible solution could be to use multiple inheritance... MeasureValue
could inherit from both om:Measure
as well as opil:ParameterValue
. While multiple inheritance is sometimes considered an antipattern, in this case it might simplify both the data model and the API.
I think we can leave this one while we consider #135 and #132, either of which is likely to render this point moot.
I'm going to split out the rendering part of the issue, however, which also affects other parts of the diagram.
ParameterValue has a hasMeasure property that duplicates that on its subclass, MeasureValue. MeasureValue should also be named value, like its siblings, rather than hasMeasure