Ja jsem to taky resil (a taky jsem REST zacatecnik) a pochopil jsem ze kdyz mam 
napr,

http://server/faktury/1 mam tim URL pro fakturu #1 (a na ni udelam CRUD)

a kdyz chci hledat, tak jsem to udelal
http://server/faktury?dodavatel=1&min-total-qty=20

Taky nejsem REST guru a proto se necham poucit.

Tom

> -----Original Message-----
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On
> Behalf Of Richard Mihalovič
> Sent: Saturday, August 16, 2008 8:25 PM
> To: [email protected]
> Subject: rest - filtrovanie zaznamov podla kriterii
> 
> Zdravim konfereneciu
> 
> Zacinam s REST a zakladne principy som snad pochopil (CRUD ->
> POST,GET,PUT,DELETE). Ale neviem presne ako realizovat filtrovanie
> zaznamov.
> 
> Napriklad:
>  mam zoznam uzivatelov ktory maju polozky: age, firstName, lastName,
> atd. Ak chcem nacitat vsetky zaznamy tak dam GET request na adr.
> 'http://adresa.server/users' vrati mi zoznam vsetkych uzivatelov. Ale ak
> by som chcel filtrovat zaznamy podla kriterii napr:
>     firstName='James' AND lastName!='Bond' OR age>40
> Akym sposobom sa dotazovat k tymto zaznamom ? Napadaju ma nasedovne
> sposoby:
> 
> 1) cely dotaz dat do URL:
> 
> http://adresa/users/search/v1,s1,c1,o1: ... :vn,sn,cn,o1/orderby/xyz/...
> 
> n=1..m
> vn - variable, napr: 'firstName'
> sn - string, napr: 'James'
> cn - condition, napr. 'eg' = equals, 'gt' = greater than, ...
> on - operator, napr. 'a' = AND, 'o' = OR
> 
> V tomto pripade by sa cely dotaz zapisal do URL a po zavolani GET
> request by sa vratil vyfiltrovany obsah. Tento sposob mi pripada asi
> najviac RESTful, ale ta url by bola asi dost dlha v niektorych
> pripadoch.
> 
> 2) dotaz zakodovat do XML
> 
> <query orderby="...">
>       <filter variable="..." string="..." condition="..." operator="..."
> />
>       <filter variable="..." string="..." condition="..." operator="..."
> />
> </query>
> 
> V tomto pripade by sa muselo XML asi poslat cez request POST alebo PUT a
> nasledne spracovat, ale metody POST, PUT sluzia na ine ucely a asi to
> nie je 'validne' REST riesenie.
> 
> 3) nejak inak :) rad sa necham poucit ...
> 
> 
> RM

Odpovedet emailem