RE: ACTION-58 Look into issues surrounding the use of the 'any' type in the IDL

Hi Matt,

Yes, I think the key has to be completely opaque.

I'm not sure I get the distinction between using some type of hash on an
instance of a context and an  integer. As long as the user of the key
can't tell what's inside it, without asking the implementation of the DDR,
it doesn't really matter. Integers are just easier to hand around and are
of predefined length.

So, I think we are both saying the following:

- The context is an implementation-specific data structure that is
internal to the DDR implementation
- The context key is an opaque way for a user of the DDR to refer to a
particular context
- Users of a DDR get a context key in response to specific operations.
These include DDR operations to
  identify a context from a set of HTTP headers, for example.
- Users of the DDR can ask questions about the context. In doing so, they
supply the appropriate context
  key to the appropriate DDR API.
- Users of the DDR cannot infer anything about the context directly from
the value of the context key
  itself. In particular, the key does NOT encode the context.
- Context keys are NOT portable across different implementations of DDRs

Whether the key is an integer or a hash of some kind doesn’t really
matter. I think in practice that integers would be simpler, but that's
just an implementation detail.

Does that help?

Best wishes
Rhys



-----Original Message-----
From: Matt Womer [mailto:mdw@w3.org]
Sent: 27 August 2007 17:47
To: Rhys Lewis
Cc: 'José Manuel Cantera Fonseca'; public-ddwg@w3.org
Subject: Re: ACTION-58 Look into issues surrounding the use of the 'any'
type in the IDL

Hi Rhys, José, DDers,

On Aug 1, 2007, at 3:32 AM, Rhys Lewis wrote:
> If all that sounds correct, then the 'handle' for the context key
> merely has to identify it within a session that a caller has with the
> DDR.
> So,
> can't it just be an integer?

Thanks for writing this up, it helped me understand where the confusion is
coming from.

I think of the Context Key IS the opaque handle itself.  It is a handle to
the "Context", which is an implementation specific structure in and of
itself.

I assumed that from the name that it was a 'key' in a list/hash/map of
contexts, and I think from your email that this isn't what you're
thinking.  RIght?

What do other folks think?

-Matt Womer

mdw@w3.org
W3C Team -- http://www.w3.org/
Mobile Web Initiative Lead Americas
Team Contact: MWI DDWG, POWDER, Voice Browser

Received on Tuesday, 28 August 2007 07:00:35 UTC