RE: Moving forward with hydra:filter (ISSUE-45)

On 9 Nov 2015 at 09:25, Asbjørn Ulsberg wrote:
> 2015-11-01 18:57 GMT+01:00 Markus Lanthaler:
>> I don't think having different predicates for different logical operators
>> scales. Especially not if you consider that the number of parameters varies.
>> So we should come up with something else.
> 
> OData specifies 10 logical operators[1]. I'm not saying that list is
> necessarily complete, but it's enough to be a good distance within the
> 80/20 rule. Would you say that having one predicate per such operator
> is too much?

Yes, but we are probably talking about different things here. I meant having equivalents of hydra:filter (which was proposed to be AND-only). Obviously, you need to have some way to express each operator etc.


>> IMO, hydra:filter describes the purpose of the referenced IRI templated very
>> well. I would thus propose to stick to it for the time being and explore
>> design that allow to make the IriTemplate at the other end more expressive.
> 
> I'm not sure IRI templates are expressive enough to solve the problem
> at hand. It would be awesome if I could stuff an IRI template inside
> my hydra:ApiDocumentation that supported the full range of OData Query
> Options[2] (which is what many of my APIs support), but I don't think
> that's possible.

You can always have a single parameter in the IRI template that takes a query (which is what OData is doing) instead of trying to break the query into multiple parameters. The challenge then becomes to tell the client what queries are possible. OData chose to require all queries to be allowed AFAICT.


> ____ [1]
> http://docs.oasis-open.org/odata/odata/v4.0/csprd02/part2-url-conventions
> /odata-v4.0- csprd02-part2-url-conventions.html#_Toc360800758 [2]
> http://docs.oasis-open.org/odata/odata/v4.0/csprd02/part2-url-conventions
> /odata-v4.0- csprd02-part2-url-conventions.html#_Toc360800755


--
Markus Lanthaler
@markuslanthaler

Received on Thursday, 26 November 2015 10:54:39 UTC