Rowan Kerr wrote:
[snip]
> i.e. While the spec for Attribute Exchange uses "openid.ax" for its  
> message keys, and Simple Reg 1.1 uses "openid.sreg", in reality the  
> keys received in a message are determined by whatever comes after the  
> key openid.ns.* where the value is the URI of the extension putting  
> data into those keys.
> 
> So, openid.ns.ax = http://openid.net/srv/ax/1.0 implies  
> openid.ax.required.
> 
> But it could just as easily be openid.ns.foo = http://openid.net/srv/ 
> ax/1.0
> in which case, your sreg values would be in keys named openid.foo.*
> 

I was aware of this previously, but now that you've spelled it out a 
thought has occured to me...

Most frameworks model the query string arguments as an associative 
array, so it's useful to know what key you're expecting ahead of time. 
With the above naming scheme, it seems to me that you'd have to search 
the entire query argument map for a key,value pair where the value is 
the URL you're looking for and the key matches /^openid.ns.(\w+)$/.

This seems sub-optimal, but I must admit I don't know what else to 
suggest. While putting the URL in the "key" and the prefix in the value 
would not be invalid, it'd be troublesome in PHP where for historical 
reasons it mangles anything that wouldn't be a valid variable name.

Or am I missing something?


_______________________________________________
specs mailing list
specs@openid.net
http://openid.net/mailman/listinfo/specs

Reply via email to