- From: Tomasz Pluskiewicz <tomasz@t-code.pl>
- Date: Sun, 11 Jan 2015 12:31:47 +0100
- To: public-hydra@w3.org
On 2015-01-10 18:18, Dietrich Schulten wrote:
>
>
> On January 10, 2015 3:26:39 PM Tomasz Pluskiewicz <tomasz@t-code.pl> wrote:
>
>> On 2015-01-10 14:17, Thomas Hoppe wrote:
>
>>
>> > Also I want to stress again that we also need
>> > to be able to link to some external resource:
>> >
>> > "hydra:allowedIndividuals": {
>> > "@id": "https://example.com/event_status/"
>> > }
>> >
>> > This could be a normal API resource, a hydra collection probably.
>> > But also in this case, It would be awkward if every item in this
>> collection
>> > would need to have an `hydra:allowedIndividual` property.
>> >
>>
>> Ah yes, I like where this is going. I was myself about to write about a
>> case where the individuals are filtered by the user. Think auto-complete
>> <select /> as a common example.
>>
>> How would it be possible to reuse (templated) links as an option for
>> remote source of available individuals? Also would we restrict the
>> response somehow to hydra:Collection?
>>
>
> That is why I added a third property allowedResource whose range would
> be an IriTemplate returning a Collection, after the first feedback from
> Ruben. I reworked the #82 text quite a bit now to reflect our
> discussion, please take a look.
I see. Could you extend the issue text with some example of how you
would use the allowedResource. Based on the current description I
understand that alloweLiteral, allowedResource and allowedIndividual
would all come at the same level under Property? How about a single
allowedValue property, which would expect various objects for
individuals and such?
And by the way the allowedResource doesn't necessary have to accept a
template. It could be simply a link to GET so that a list of possible
values is fetched on demand.
>
> I agree that this dynamic list of items is a third requirement to cover,
> I also had auto-complete in mind.
>
I was also just now thinking about a way to allow free-text input along
with suggested values. Something like most recently used values etc. So
it's like an auto-complete where user can also supply a value not
included in the suggestions. I'm not sure how to model this though.
{
"@type": "hydra:Property",
"hydra:allowedValue": [
{
"hydra:literal": "last used text"
},
{
"hydra:literal": "another recent input
},
{
// a value to indicate that any other literal is allowed
"@id": "hydra:FreeText"
},
{
// property just an example now
"hydra:resource": {
// IriTemplate or resource
}
}]
}
This way I see it would be possible to mix inline values, values
provided by the server and user input (for literals).
> Another question is certainly how we tell the client which kind of
> allowed items it is looking at. Is it preferable to have multiple
> properties, each with their own range - or one property with various
> possible types and the client must look at the @type?
>
I seem to have answered this question above without reading and
understanding first. I think that an allowedValues property is also a
single potential extension point for implementors. If it all were under
Property I'd find it messy.
> Best regards,
> Dietrich
>
>
Received on Sunday, 11 January 2015 11:32:28 UTC