> If we have such an "internal API" in the client code I think we lose any
> benefit of having a "semantics-based API". The value I can see from in the
> latter approach would come from passing the semantic information "this is a
> menu" to the server so that the shell can implement policies to control any
> fine grained state.
No I didn't mean it as a client-side API. The entry points of the client API defined by this MP would have corresponding functions on the server-side, which collectively implement the, say 'menu', functionality. I realize that it's confusing.. So feel free to scratch that comment altogether :-).
> If we have such an "internal API" in the client code I think we lose any
> benefit of having a "semantics-based API". The value I can see from in the
> latter approach would come from passing the semantic information "this is a
> menu" to the server so that the shell can implement policies to control any
> fine grained state.
No I didn't mean it as a client-side API. The entry points of the client API defined by this MP would have corresponding functions on the server-side, which collectively implement the, say 'menu', functionality. I realize that it's confusing.. So feel free to scratch that comment altogether :-).