- assigned_to: nobody --> imitko
I noticed several recent improvements to the content negotation algorithms, but still it is not quite there.
For example, Redland will typically send a request with an Accept header that includes the chosen format with q=1, but the rest of the format it supports at lower q-values.
I've made some experiments with this:
wget --header="Accept: text/plain;q=1, application/turtle;q=0.1, application/rdf+xml;q=0.5"
this will return Turtle even though the q-value of text/plain (NTriples) and RDF/XML are both higher. Even though this is not a spec violation, it feels somewhat odd, and probably not what the client expects.
I understand that you may want to prefer some formats to others on the server side, in which case you could use the algorithm used by the Apache server, which multiplies the clients q's with a server qs factor and sorts it. In which I could suggest something like:
text/plain;qs=0.7
application/turtle;qs=1
application/rdf+xml;qs=0.95
text/n3;qs=0.9
This would ensure that if the client has a high value for text/plain, it would still get it.