terminology/necessity of hydra:required

Dear all,

hydra:required is used in two places:
- with hydra:SupportedProperty
- with hydra:IriTemplateMapping

What is the necessity to have this on hydra:IriTemplateMapping,
given that URI templates already allow to specify required and optional properties?

From RFC6750:
> Form-style query expansion, as indicated by the question-mark ("?")
> operator in Level 3 and above templates, is useful for describing an
> entire optional query component

> Form-style query continuation, as indicated by the ampersand ("&")
> operator in Level 3 and above templates, is useful for describing
> optional &name=value pairs in a template that already contains a
> literal query component with fixed parameters.

If there is a necessity, shouldn't we split them into:
- hydra:requiredProperty with domain hydra:SupportedProperty?
- hydra:requiredMapping with domain hydra:IriTemplateMapping?

This splitting argument also holds for hydra:property,
which is used with both hydra:SupportedProperty and hydra:IriTemplateMapping.
I wonder if it is really a good idea to have
    _:something hydra:SupportedProperties _:supportedProperty.
    _: supportedProperty hydra:property _:property.
since SupportedProperty is, confusingly, _not_ a property,
but it does _have_ a property. How about something like:
    _:something hydra:parameter_:parameter.
    _: parameter hydra:controls _:property.

Best,

Ruben

Received on Tuesday, 28 January 2014 18:32:16 UTC