[standards-jig] JEP-0049 Private XML Storage

Iain Shigeoka iain.shigeoka at messaginglogic.com
Wed Nov 13 06:30:25 UTC 2002


On 11/12/02 14:27, "Robert Norris" <rob at cataclysm.cx> wrote:

>> Why does there need to be a remove command anyway? If you query for a
>> particular stored namespace which has not been previously stored it
>> does not send back an error, but just sends back a blank result, why
>> not just have it so that blank store commands are what do the delete
> 
> Actually, it sends back a 404. Even if it didn't, storing an empty
> element still wouldn't be appropriate, as you might want to simply set a
> flag.

I agree that it should send back a 404. I don't think jabberd does (but
haven't checked) because every client I've tested against my server hangs if
you don't send back an empty private response. So Richard's suggestion is a
pretty clever way to do it if we rely on current practice.

I'd prefer to correct current practice though and send a 404 on no entry
which would get us back to needing a removal command of some sort... :)

I'd tentatively suggest a radical approach, we expand the standard iq types.
This seems to come up fairly often (removing roster entries, etc) so perhaps
iq should have the following types:

set - set new value or update existing value
get - retrieve value (returns 404 if value doesn't exist)
remove - Clears value
result - a result of any of the previous three types
Error - in case of error

Of course, this is a pretty major change so I guess something in the
iq:private namespace may be more practical. :)

-iain




More information about the Standards mailing list