[ tOwk @ 19.01.2003. 20:12 ] @
Pri implementaciji HTTP 1.1 content negotiation algoritma nailazim na nekoliko vrlo konkretnih pitanja.

Uvod
RFC2616 (HTTP 1.1) govori o parametrima vezanim za tip medija (MIME type). Kao primer se navodi ,,level'' parametar za ,,text/html'' tip. Znači primer jednog Accept zaglavlja bi bio:
Code:
Accept: text/*; q=0.3, text/html; q=0.5, text/html; q=0.8; level=1


Problem je što, citiram,
Citat:
If more than one media range applies to a given type, the most specific reference has precedence.

Dalje se navodi primer kako bi za jednake tipove, prvo trebalo proveriti ,,text/html; level=1'', zatim ,,text/html'' i tek onda ,,text/*''.

I pitanja...
Sve ovo je lepo dok ne pokušam da uopštim. Broj parametara može biti proizvoljan, a ne znam kako se utvrđuje koji je ,,most specific''. Kako se razrešavaju ,,nesuglasice''? Npr. ja imam na raspolaganju među ponuđenim varijantama ,,izmišljeni/tip; q=0.7; nešto=1; drugo=da'', a Accept zaglavlje je ,,izmišljeni/tip; nešto=1; q=0.4, izmišljeni/tip; drugo=da; q=0.6''.

Koji od ova dva treba koristiti, i kako se to uopšte određuje? Kombinacija oba očigledno ne dolazi u obzir, pošto se traži samo jedan.

Da li neko ima iskustva sa ovime, ili zna gde bi se moglo pogledati nešto više o tome? Postoji li uopšte neki konsenzus o upotrebi parametara, ili svako ima slobodu da izabere način koji njemu odgovara?

Da li neko zna kako je to izvedeno u softveru koji ima podršku za to (Apache, nešto drugo?), i da li se te implementacije poklapaju? (ako se sve implementacije poklapaju, onda nema problema)

Šta ima smisla u okviru HTTP 1.1 specifikacije? Možda ,,hardcoding'' ovog jednog parametra ,,level'', i ignorisanje ostalog? Tako je u smislu MIME specifikacije, ali treba li se prema njoj ravnati?

PS. News grupe nisu dale rezultata, a RFC2295 (Transparent CN algorithm) se ne bavi ovime, RFC2296 (Remote Variant Selection Algorithm) takođe.